Clarify plan status rejection boundary - #26
Conversation
Successful status reads return analysis diagnostics with exit zero. Reserve server_rejected for validated non-authentication problem responses so the error index matches the CLI contract.
|
Docs-only table fix, merged with green CI. Verified the claim against the runtime rather than taking the PR |
|
The distinction this one-row docs change protects: for a CLI, "the server told me your Plan has problems" and
The general lesson for anyone writing a CLI: decide early what exit codes mean, write it down in an error |
Why
The error index grouped
plan statuswith mutation commands, which implied that diagnostic-bearing analysis statuses could beserver_rejected. The runtime instead treats every validated HTTP 200 analysis response as a successful read with exit 0 and reservesserver_rejectedfor a validated non-authentication problem response.Change
plan statusits ownserver_rejectedrow matching the runtime contract.plan pushandplan compilediagnostic boundary.This changes documentation only. It does not change runtime behavior, package bytes, publication, release tags, promotion, or deployment.
Verification
npm ci --ignore-scriptsnpm audit— 0 vulnerabilitiesnpm run check— 154/154 tests plus typecheck, lint, formatting, package allowlist, and packed-package smokenode --test test/documentation.test.js test/plan-status.test.js— 26/26git diff --checkDocumentation review was decision-summary-aware and found no blocking or follow-up issue.