aboutsummaryrefslogtreecommitdiff
path: root/docs/specs/control.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/specs/control.md')
-rw-r--r--docs/specs/control.md27
1 files changed, 25 insertions, 2 deletions
diff --git a/docs/specs/control.md b/docs/specs/control.md
index a2d3d44..eb1e535 100644
--- a/docs/specs/control.md
+++ b/docs/specs/control.md
@@ -1,5 +1,28 @@
# Control system
-Документ описывает подсистему управления: mapping ввода (клавиатура, мышь, геймпад), обработку событий и буферизацию команд.
+`Control` — подсистема входа и маршрутизации команд (пользовательских и системных).
-> Статус: в работе. Спецификация будет дополняться по мере реверс-инжиниринга `Control.dll`.
+## 1. Роль
+
+1. Преобразует ввод устройств в команды движка.
+2. Синхронизирует управление камерой, UI и объектами мира.
+3. Передает команды в gameplay-подсистемы с учетом активного режима игры.
+
+## 2. Минимальный контракт совместимости
+
+1. Детерминированный mapping input -> command.
+2. Стабильная обработка очереди команд в пределах кадра.
+3. Корректный приоритет UI-фокуса над world-input.
+
+## 3. Статус покрытия и что осталось до 100%
+
+Закрыто:
+
+- место control-слоя в архитектуре и базовый runtime-контур.
+
+Осталось:
+
+1. Полная карта input actions и режимов обработки.
+2. Формат внутренних очередей команд и их сериализация.
+3. Спецификация edge-case поведения (повтор клавиш, захват мыши, hotkey-конфликты).
+4. Пошаговые parity-тесты на записанных последовательностях ввода.