Define TOML configuration and the complete CLI contract #2
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
Define the small TOML configuration and complete CLI contract that drive the Rust storage API.
Scope
--configpath or the native per-user configuration directory.$VISUAL,$EDITOR, and thenvim.init,ls/list,show,find/search,grep,insert/add,edit,generate,rm/remove/delete,mv/rename,cp/copy,git,otp,help, andversion.crates/storage; keepapps/clilimited to argument, terminal input, and presentation adapters.Acceptance criteria
Prerequisites
Compatibility fixture harness.
Implemented in commit
2dff2d5(pushed to main).The storage crate now owns a strict, typed TOML configuration loader and the complete pass/pass-otp command request contract. Configuration supports explicit and native paths, deterministic inner path resolution, required vault/default-key/exported-key-material fields, editor precedence without shell interpretation, and HTTPS-only Git remotes referenced by server/application IDs. Unknown and secret-bearing fields are rejected with redacted typed errors. The CLI is now only an argument/configuration/presentation adapter with stable stdout/stderr and exit codes. Path, schema, editor, and remote rules are documented in docs/configuration.md.
Verification:
The workspace test run also kept all pre-created compatibility fixture cases green.