[v0.1/CLI] Publish finite option values in help and completions and snapshot every visible help page #187
Labels
No labels
priority/P0
priority/P1
priority/P2
release/v0.1.0
status/blocked
status/planned
type/bug
type/design
type/test-gap
type/tracker
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
natsukium/felis#187
Loading…
Reference in a new issue
No description provided.
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?
Parent: #55 (CLI argument review). Tracker #55 cannot close because two of its closure criteria have no evidence on
main; every child issue (#53, #54, #136, #141, #145) is closed and #29's goldens landed.What is missing
--helpor the generated completions.--formatstill usesvalue_parser = parse_point_format/parse_stream_format(crates/felis-cli/src/cli_output.rs:77,91) andcapture --sourcestill usesvalue_parser = parse_region_source(crates/felis-cli/src/cli_sessions.rs:266). None is a clapValueEnum, so clap publishes no possible values into--help,felis completions {fish,zsh,bash}, or__mangen. #23's accepted triage plan, item H, specified this change; #23's closing commit (54260ede) did not include it and no issue tracked the remainder.crates/felis-cli/src/tests.rs,the_launch_verbs_help_says_where_the_globals_go) plus the argv matrix incrates/felis-cli/tests/cli_sessions.rs.Acceptance criteria
parse_point_format/parse_stream_formatare replaced by twoValueEnums (Human | Json,Human | Jsonl) converting intoFormat;parse_region_sourceis replaced by aValueEnummapping ontoRegionSource. The clap error for a bad value lists the possible values; the existing unit test that asserted the parser's accepted spellings asserts the ValueEnum's variants instead.--format(human json,human jsonl) and the four--sourcevalues;--helpforcaptureand one Point verb shows the possible values.Cli::command().render_long_help()for the root and every visible subcommand (walk the command tree, skip hidden ones) so a help change is a reviewed snapshot change.docs/reference/cli.mdnames the possible values where it documents--formatand--source(if it does not already);CHANGELOG.mdUnreleased entry (help/completions now list the values; the error message for a bad value changes);skills/felis/SKILL.mdunchanged unless a spelling changes (it must not).Split from #23 (plan item H) and #55.
sourceandattachmentstrings the runtime rejects, so schema-valid requests can still fail as malformed #178