chore(architecture): enforce layer boundaries

This commit is contained in:
syntaxbullet
2026-07-03 09:34:21 +02:00
parent a8dbd26474
commit d7406e803a
14 changed files with 354 additions and 17 deletions

9
input/AGENTS.md Normal file
View File

@@ -0,0 +1,9 @@
# Input Rules
- `input/` resolves keyboard, pointer, mouse, touch, pen, and wheel input only.
- Resolution order is strict: global consumer first, command fallback second.
- If the global consumer handles input, stop and do not dispatch a command.
- Input handlers must never mutate state directly.
- Input may dispatch commands by id with payloads.
- Keep this layer independent from React, renderer, editor store internals, and persisted core domain models.
- DOM/browser events should be normalized into small input event types before command mapping.