fix(cli): document the shipped commands and drop a stray backslash - #995
Conversation
The published CLI reference opened by claiming six core commands while the binary also ships `graph`, `proof verify`, and `init`. `proof verify` is the gate the Pages deploy runs, so the one page that documents the surface was the one page that omitted it. The three are added with their flags verified against src/cli.zig rather than taken from the contract prose. `--help` also printed a doubled backslash in its Modes list, because nothing read the help text at all. The usage string is now a named value with a test asserting it contains no backslash and lists every shipped command, so the typo cannot return unnoticed. 🤖 Generated with Codebuff Co-Authored-By: Codebuff <noreply@codebuff.com>
Extracting the usage string into a const moved its continuation lines one indent level out, and I did not re-run the formatter, so CI's Format check failed before it reached Build or Test. This commit is the formatter's own output and nothing else. The string's content is unchanged: `boris --help` output is byte-identical before and after (14329 bytes, verified by diffing the two builds), because Zig strips the whitespace preceding each `\\` marker. 🤖 Generated with Codebuff Co-Authored-By: Codebuff <noreply@codebuff.com>
|
SummaryCoverage spans product help and documentation behavior, including clean command discovery, rendered reference pages, working links, and publication boundaries. It also exercises happy-path initialization and compilation alongside edge cases such as occupied targets, policy-limit failures, argument-order variations, preserved files, and no unwanted artifacts. Safe to merge — the exercised behaviors all passed, with no regressions, new failures, or previously flagged PR-attributable failures identified. The change presents low merge risk based on this run. Tests run by Ito
Tip Reply with @itoqa to send us feedback on this test run. |
|
Diff SummaryCoverage spans core editor flows, connection-state handling, recovery of unsaved work, author/review navigation, responsive layout and design-scale rules, plus command-line help, initialization, and published references. It includes normal use, failure and recovery paths, boundary conditions, rapid state changes, and adversarial checks of documented behavior. Safe to merge — the only failing behavior is a pre-existing medium-severity connection-recovery issue and is explicitly not attributable to this PR. No PR-related regression or newly introduced failure is indicated; the unrelated issue is a flag for later. Tests run by ItoAdditional Findings DetailsThese findings are unrelated to the current changes but were observed during testing. 🟡 Editor stays offline after host recovery
Evidence PackageTip Reply with @itoqa to send us feedback on this test run. |

Agent Completion Report
t3code/cli-reference-currentt3code/cli-reference-current(the shared checkout; no separate worktree)2061faa3(the reference and help fixes),750ec1df(the formatter's output onsrc/cli.zig)maincontent/reference/commands.md— the published CLI referencesrc/cli.zig— the usage text and its new testdocs/changelog.d/995-cli-reference-current.md— changelog fragment, already named for this PRgit add -A. The separate Author-surface work is committed ont3code/editor-residual-flat-993and opened as its own PR; this branch carries only the three paths above, and the working tree is clean.content/reference/commands.mdopened by describing "six core commands plus thestandard-siteandnostrfamilies", whileboris --helpalso shipsgraph,proof verify, andinit.proof verifywas absent from the page entirely, and every one of the page's ninegraphhits was incidental (graph.json, "content, graph, renderer") — the command itself was never documented. That is a bad omission specifically becauseproof verifyis the gate the Pages deploy workflow runs on every publish, so the page documenting the surface was the page missing the check that guards it. Fixed by addinggraph,proof verify, andinitto the commands-at-a-glance table, replacing the "six core commands" framing with the actual set, adding three sections (Graph renders with--format mermaid|dot; Publication-check policy with--max-errors,--max-warnings,--block-code, noting it is the same gate the Pages workflow runs; and Starter site withinit [DIR]), and correcting the exit-code1row to include aproof verifypolicy failure perdocs/contracts/cli.md.src/cli.zigbefore it was written, rather than taken from the contract prose. The contract already listed all three commands, so the contract was right and the published page was the stale artefact.--helpprinted a stray backslash.src/cli.zighad a doubled multiline marker on therecipe-scaleline where every sibling line has one, so--helpliterally printed\ recipe-scalein the Modes list. The deeper problem was that nothing read the help text, so no test could ever catch it. The usage string is now a namedpub const usage_text, with a test asserting the two properties that would have caught the typo: the text contains no backslash at all, and every shipped command appears in the Modes list.boris graph --helpandboris proof verify --helpdo not print command-specific help; both fall back to the general list, whileinit --helphas its own. That is an inconsistency in the help surface, not drift, so it is left as a design decision rather than folded into this change.docs/STATUS.mdstill lists "Migration-guide review findings — … four generated-site missing routes" as a live item. The current link audit is clean (exit 0, checks 3/3 passed), so that line looks like stale bookkeeping, but project policy movesSTATUS.mdonly when phase, integration line, or the "what's next" list moves, so it is left for a maintainer rather than changed as a drive-by.zig build test./zig-out/bin/boris build./zig-out/bin/boris --help | grep -c '\\'zig fmt --check .git diff --check./scripts/check-pr-issue-close.sh --body-file <this body>zig build test: pass — including the documentation link walk (1068 links) and the new usage-text test./zig-out/bin/boris build: pass — 1 target written, checks 3/3 passed, no missing routes./zig-out/bin/boris --help | grep -c '\\':0— the doubled marker is gonedist/reference/commands.html:proof verifynow appears 6 times (it appeared 0 times before), and all three new sections are presentzig fmt --check .: pass after750ec1df— this caught a real miss.zig build testdoes not run the formatter, so my first push failed CI's Format check before it reached Build or Test. Extracting the usage string into aconstmoved its continuation lines one indent level out and I did not re-runzig fmt. The follow-up commit is the formatter's own output, verified to change no behaviour:boris --helpoutput is byte-identical before and after (14329 bytes).git diff --check: pass — no whitespace errors./scripts/check-pr-issue-close.sh --body-file: passboris initandproof verifybehaviour is unchanged: this change documents them and fixes a help string.dist/and.zig-cache/(both git-ignored, built for verification)boris graph --helpandboris proof verify --helpfall back to the general usage list. Giving every shipped command its own--help— and a test that asserts each one answers with its own text rather than the fallback — would close the remaining inconsistency in the help surface.