Terminal UI Framework #112

Open
opened 2026-03-15 04:13:19 +00:00 by freemo · 0 comments
Owner

Background and Context

The specification (§ Window Management System, § Message Channel System, § Keybinding
System, § Command History) describes a comprehensive terminal UI framework that replaces
the current monolithic Display/Window implementation.

The current system uses a single Window class for all 7 windows, with layout logic
hardcoded in Display#layout. The specified system provides:

  1. Window type hierarchy — Specialized window classes (Content, Input, Status, Map,
    Progress, Overlay) with distinct behaviors
  2. Window registry and layout engine — Declarative window definitions with constraint-based
    layout resolution
  3. Focus management — Tab cycling, focus ring, and modal overlay stack
  4. Message channels — Named channels with window routing and player filtering
  5. Keybinding system — Customizable key mappings with scope-based resolution
  6. Command history — Formal history tracking with reverse search

Expected Behavior

The terminal UI is modular, extensible, and player-customizable. Window layouts adapt to
terminal size. Players can configure channels, keybindings, and history preferences.

Acceptance Criteria

  • All 6 child Epics completed
  • Current Display/Window functionality preserved and extended
  • BDD test coverage for all new systems

Subtasks

  • Complete Epic: Window Type Hierarchy
  • Complete Epic: Window Registry and Layout Engine
  • Complete Epic: Focus Management System
  • Complete Epic: Message Channel System
  • Complete Epic: Keybinding and Hotkey System
  • Complete Epic: Command History System

Definition of Done

This Legendary is complete when all child Epics are closed and their acceptance
criteria are satisfied.

## Background and Context The specification (§ Window Management System, § Message Channel System, § Keybinding System, § Command History) describes a comprehensive terminal UI framework that replaces the current monolithic `Display`/`Window` implementation. The current system uses a single `Window` class for all 7 windows, with layout logic hardcoded in `Display#layout`. The specified system provides: 1. **Window type hierarchy** — Specialized window classes (Content, Input, Status, Map, Progress, Overlay) with distinct behaviors 2. **Window registry and layout engine** — Declarative window definitions with constraint-based layout resolution 3. **Focus management** — Tab cycling, focus ring, and modal overlay stack 4. **Message channels** — Named channels with window routing and player filtering 5. **Keybinding system** — Customizable key mappings with scope-based resolution 6. **Command history** — Formal history tracking with reverse search ## Expected Behavior The terminal UI is modular, extensible, and player-customizable. Window layouts adapt to terminal size. Players can configure channels, keybindings, and history preferences. ## Acceptance Criteria - All 6 child Epics completed - Current Display/Window functionality preserved and extended - BDD test coverage for all new systems ## Subtasks - [ ] Complete Epic: Window Type Hierarchy - [ ] Complete Epic: Window Registry and Layout Engine - [ ] Complete Epic: Focus Management System - [ ] Complete Epic: Message Channel System - [ ] Complete Epic: Keybinding and Hotkey System - [ ] Complete Epic: Command History System ## Definition of Done This Legendary is complete when all child Epics are closed and their acceptance criteria are satisfied.
freemo self-assigned this 2026-03-15 04:25:24 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference: aethyr/Aethyr#112
No description provided.