Игровые механики. Исполнение невалидного приказа #59

Closed
opened 2026-05-26 05:41:26 +00:00 by owner · 0 comments
Collaborator

Ситуация:

  • Создан новый класс корабля (это сейчас не принципиально, класс корабля мог существовать, но для простоты пусть будет ручное создание) - в отчёт попадает команда "А".
  • На этом же ходе новой командой на какой-то планете запускается постройка этого корабля - в отчёте это команда "Б".
  • Попытка удалить более раннюю команду "А" из приказа приводит к сообщению "sync failed: [unavailable] downstream service is unavailable".

На самом деле, game engine должен вернуть именно ошибку обработки такого приказа (командой "Б" на планете строится корабль, класс которого не существует после удаления команды "А"), но ошибка должна быть не общей на весь приказ, а статус конкретной команды в приказе должен вернуться с ошибкой. Это было заложено в api обработки приказа на стороне game engine.

Проблема не только в классах корабля и их постройке, это просто частный случай. Проанализируй, пожалуйста, на каком этапе в цепочке "gateway -> backend -> game engine -> backend -> gateway" логика валидации приказа ломается и где именно стоило бы внести правки.

Ситуация: - Создан новый класс корабля (это сейчас не принципиально, класс корабля мог существовать, но для простоты пусть будет ручное создание) - в отчёт попадает команда "А". - На этом же ходе новой командой на какой-то планете запускается постройка этого корабля - в отчёте это команда "Б". - Попытка удалить более раннюю команду "А" из приказа приводит к сообщению "sync failed: [unavailable] downstream service is unavailable". На самом деле, game engine должен вернуть именно ошибку обработки такого приказа (командой "Б" на планете строится корабль, класс которого не существует после удаления команды "А"), но ошибка должна быть не общей на весь приказ, а статус конкретной команды в приказе должен вернуться с ошибкой. Это было заложено в api обработки приказа на стороне game engine. Проблема не только в классах корабля и их постройке, это просто частный случай. Проанализируй, пожалуйста, на каком этапе в цепочке "gateway -> backend -> game engine -> backend -> gateway" логика валидации приказа ломается и где именно стоило бы внести правки.
developer was assigned by owner 2026-05-26 05:41:26 +00:00
owner added a new dependency 2026-05-26 15:45:27 +00:00
owner added the Kind/Enhancement
claude
working
labels 2026-05-28 13:22:52 +00:00
owner added the Kind/Bug
Priority
Medium
3
labels 2026-05-29 07:39:18 +00:00
developer added
claude
done
and removed
claude
working
labels 2026-05-29 10:18:37 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Depends on
#43 Полировка UI
developer/galaxy-game
Reference: developer/galaxy-game#59