Skip to content

feat(vault-tui): About overlay (Standard §13.2)#18

Merged
UnbreakableMJ merged 1 commit into
mainfrom
tui-about
Jun 15, 2026
Merged

feat(vault-tui): About overlay (Standard §13.2)#18
UnbreakableMJ merged 1 commit into
mainfrom
tui-about

Conversation

@UnbreakableMJ

Copy link
Copy Markdown
Contributor

What

Adds a read-only About overlay to vault-tui — open with ? or :about,
dismiss with Esc/q/Enter — showing the version, maintainer,
copyright/license, and canonical URL.

This fulfills the last unfilled v0.1 success criterion: the Standard §13.2
attribution block must appear "in --version, --help, README, and the TUI
About screen
" (PRD §14). The first three already existed; this is the fourth.

How

  • app.rs: new stateless InputMode::About + open_about/close_about
    (modeled on the generator overlay's open/close).
  • main.rs: ? key (+ :about command) → open_about; handle_about_key
    dismisses on Esc/q/?/Enter. ATTRIBUTION / PKG_VERSION made
    pub(crate) so the overlay renders from the same source as
    vault-tui --version — no drift.
  • ui.rs: render_about (centered, Cleared, bordered box — same shape as
    render_generator), wired through the render + status-bar match arms.

Tests

  • app.rs: open_about/close_about flip InputMode correctly.
  • ui.rs TestBackend: about_overlay_renders_attribution asserts the §13.2
    content (version / Mohamed Hammad / GPL-3.0-or-later /
    SpacecraftSoftware.org) actually reaches the screen.

Local CI-exact gates all green: fmt, fresh isolated clippy -D warnings,
cargo test --workspace --all-targets under RUSTFLAGS=-D warnings,
cargo deny check (no new deps), both headless builds.

🤖 Generated with Claude Code

Add a read-only About screen (open with `?` or `:about`, dismiss with
Esc/q/Enter) showing the version, maintainer, copyright/license, and canonical
URL — rendered from the same ATTRIBUTION / PKG_VERSION constants as
`vault-tui --version`, so it can't drift. Fulfills the last unfilled v0.1
success criterion that the §13.2 block appears in --version, --help, README,
and the TUI About screen (PRD §14).

- app.rs: InputMode::About + open_about/close_about (const).
- main.rs: ? key + :about command + handle_about_key + dispatch; ATTRIBUTION /
  PKG_VERSION made pub(crate).
- ui.rs: render_about (modeled on render_generator) + the wired match arms.
- Tests: app open/close; a TestBackend render test asserting the §13.2 content
  (version / maintainer / license / URL) reaches the screen.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@UnbreakableMJ
UnbreakableMJ merged commit af15447 into main Jun 15, 2026
8 checks passed
@UnbreakableMJ
UnbreakableMJ deleted the tui-about branch June 15, 2026 17:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant