Написал там тебе несколько комментариев.
>> А вот как мутации прописывать и вообще, что делать дальше: туманно.
Ну ты хотя бы как-то сформулировать задачу должен. Как без этого? Тут видится несколько отдельных задач:
1. Написать мутацию для загрузки файла/файлов для топика (к слову, ты сам себе же задачу усложнил, потому что выбрал модель многие-ко-многим через PostImage, ну да ладно, зато может узнаешь больше).
2. На фронте написать механизм загрузки фото (то есть форму)
3. Вывод списка фото.
И т.п.
Задачи обязательно надо выделять отдельно, потому что они не всегда одни и те же. К примеру, то, что ты прописал картинки постам, не обязывает делать механизм загрузки этих фото со фронта. Может ты парсер на сервере пропишешь и будешь тянуть их со стороннего ресурса. Это для примера.
Плюс к этому, надо четко писать какую именно ты задачу выполняешь, потому что не ясно где ты что знаешь, а что нет.
Я тебе скажу так: тебе сейчас лучше развернуть локально у себя freecode.academy и поиграться с ним. Там ты найдешь примеры того, что тебе нужно. Загрузка фото есть в профиле пользователя. Работа с моделью многие-ко-многим есть в связке Пользователь-Технологии как минимум. Покопайся там, разбери что сможешь понять. Что не сможешь - спрашивай. Так будет эффективней. Когда нет мыслей для решения новых задач с нуля, посмотри как подобное делается у других.