Implement colon command mode over storage actions #23
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Objective
Implement Mutt-style
:command mode with the complete base pass and pass-otp action surface.Scope
Acceptance criteria
:command.ironstorage,pass,git,gpgor a shell.Prerequisites
Default keymap and contextual help; all relevant storage APIs from milestone 01.
Implemented in commit
d66d9b0. The TUI now has a real bottom-line colon prompt with Unicode-safe cursor editing, cancellation, bounded history, Up/Down recall, Tab/Shift-Tab contextual completion, shell-style quoting, and completion from the full storage-provided tree. Parsing delegates flags, aliases, and validation to ironstorage::command and emits typed CommandRequest values for every base pass, Git, and pass-otp family; a checked-in coverage table documents the mapping. Show/edit route through authenticated TUI panes, help/version render in-process, lock/unlock are mode-aware, unavailable operations report typed context errors, and remove requests require y/n confirmation before emission. OTP URIs, Git configuration, and remote URL commands are masked and omitted from history and error text. No CLI, shell, pass, git, or gpg process is launched. Verified with cargo fmt --all -- --check; RUSTFLAGS='-D warnings' cargo check --workspace --all-targets; cargo clippy --workspace --all-targets -- -D warnings; cargo test --workspace.