v1.1.0

Terminal UI Framework: build the composable, constraint-based terminal UI system that replaces the current hard-coded window layout.

Primary Goals:

  • Implement the window type hierarchy: BaseWindow (abstract), ContentWindow (scrollable text), InputWindow (line editing), StatusWindow (template interpolation), ProgressWindow (Unicode bars), MapWindow (2D grid), OverlayWindow (modal z-ordered)
  • Build the window registry and constraint-based layout engine that adapts to any terminal size
  • Implement focus management with Tab/Shift+Tab cycling, focus ring, and modal overlay capture
  • Implement the message channel system with configurable routing, muting, and player preference persistence
  • Implement the keybinding and hotkey system with scope-based resolution (mode/window/global) and context stacking
  • Implement command history with session persistence and reverse incremental search (Ctrl+R)

Acceptance Criteria:

  • All 7 window types implemented with lifecycle state machines
  • Layout engine produces valid layouts for terminal sizes from 80x24 to 250x80 via constraint solving
  • Focus can be cycled between windows; modal overlays capture and release focus correctly
  • Message channels route output to configurable target windows with player preferences persisted across sessions
  • Keybindings support key chords, sequences, and ESC/Alt disambiguation with push/pop context stacking
  • Command history persists across sessions and supports Ctrl+R reverse incremental search
  • All tests pass at 97% unit coverage threshold
2027-04-15
20% Completed