NS3 slice: Render editor-or-panel on narrow terminals #19

Closed
opened 2026-06-20 23:28:15 +00:00 by tmk241 · 1 comment
Owner

OBJECTIVE: Teach the TUI to render either the editor or the active panel on narrow viewports, with status/breadcrumbs and clean recovery.

AUTHORITY: Parent #3 NS3: Narrow terminal UI and panel grammar; PRODUCT.md; REQUIREMENTS.md (PRODUCT.md; req: ui/001-002; req: session/003).

AGENT AUTHORITY:

  • Delivery authority: local-commit
  • Tracker authority: this issue may be commented and closed when acceptance passes.
  • Handoff state: committed clean, tracker commented/closed.

PARENT: #3 via explicit issue link and parent checklist.

SCOPE: The smallest source/docs/tests needed to make this behavior real and verified.

BOUNDARIES: No wide-screen split optimization beyond harmless fallback.

ACCEPTANCE: Terminal traces at iPhone-like dimensions show no horizontal overflow and successful return to the editor.

VERIFICATION: Run the cheapest command that proves acceptance. Include regular tests for the intended payoff and adversarial tests for realistic failure, boundary, or regression cases. If no implementation test command exists yet, create/record the canonical command in AGENTS.md as part of the slice.

BLOCKERS: none

GOAL: Implement this vertical slice to the ACCEPTANCE above, keep the repo clean, cite relevant req: anchors in code/tests where applicable, and close only after verification passes.

OBJECTIVE: Teach the TUI to render either the editor or the active panel on narrow viewports, with status/breadcrumbs and clean recovery. AUTHORITY: Parent #3 `NS3: Narrow terminal UI and panel grammar`; PRODUCT.md; REQUIREMENTS.md (PRODUCT.md; req: ui/001-002; req: session/003). AGENT AUTHORITY: - Delivery authority: local-commit - Tracker authority: this issue may be commented and closed when acceptance passes. - Handoff state: committed clean, tracker commented/closed. PARENT: #3 via explicit issue link and parent checklist. SCOPE: The smallest source/docs/tests needed to make this behavior real and verified. BOUNDARIES: No wide-screen split optimization beyond harmless fallback. ACCEPTANCE: Terminal traces at iPhone-like dimensions show no horizontal overflow and successful return to the editor. VERIFICATION: Run the cheapest command that proves acceptance. Include regular tests for the intended payoff and adversarial tests for realistic failure, boundary, or regression cases. If no implementation test command exists yet, create/record the canonical command in AGENTS.md as part of the slice. BLOCKERS: none GOAL: Implement this vertical slice to the ACCEPTANCE above, keep the repo clean, cite relevant `req:` anchors in code/tests where applicable, and close only after verification passes.
tmk241 added this to the v1 milestone 2026-06-20 23:28:15 +00:00
tmk241 added the sliceready-for-agentgoal labels 2026-06-20 23:28:15 +00:00
Author
Owner

Implemented in commit ffa51e17c7 (Render active panels on narrow terminal).

Verification:

  • zig fmt src/tui.zig: pass
  • zig build test: pass
  • zig build: pass
  • zig build run -- --help: pass
  • redgate lint / health: pass

Regular tests: narrow terminal render shows active panel instead of editor and returns cleanly to editor after close; nested panel breadcrumbs render on narrow width without overflow; panel next/previous paths are visible.
Adversarial tests: invalid panel title and empty close are rejected through the protocol path and editor render remains intact; all rendered panel/editor lines are width-checked.

Boundary: render/editor-or-panel behavior only. No list/filter/select primitive, concrete file/git/LSP/job/Pi panels, or desktop split UI added.

Implemented in commit ffa51e17c7b6 (Render active panels on narrow terminal). Verification: - zig fmt src/tui.zig: pass - zig build test: pass - zig build: pass - zig build run -- --help: pass - redgate lint / health: pass Regular tests: narrow terminal render shows active panel instead of editor and returns cleanly to editor after close; nested panel breadcrumbs render on narrow width without overflow; panel next/previous paths are visible. Adversarial tests: invalid panel title and empty close are rejected through the protocol path and editor render remains intact; all rendered panel/editor lines are width-checked. Boundary: render/editor-or-panel behavior only. No list/filter/select primitive, concrete file/git/LSP/job/Pi panels, or desktop split UI added.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: tmk241/mim#19