v0.28.2
·
12 commits
to main
since this release
Patch Changes
- Every fixable finding from the 2026-08-28 five-lane v0.28.1 AX pass (summary
and dispositions:docs/audits/2026-08-28-v0281-ax-summary.md). Agent-loop
killers: the server'sstale_basesentence names all three recoveries
(workspace landincluded — the old text prescribed the exactpullloop the
0.28.0 action removal closed); a quota-blocked first-use registration refuses
with the quota's own code instead ofapp_not_initializedplus anapp init
action the CLI had just been told cannot succeed (oneregisterForLocalRun
chokepoint; existing-id checkouts keep local-first warn-and-continue). Agent
tools:invalid_tool_inputstates the validator's cause; the published
additionalProperties: falseis enforced at the invoke route (a typo'd key
refuses naming it instead of silently succeeding);tool_not_foundlists the
available tools;forbiddennames the one-step remedy; the agent-endpoint 404
distinguishes "wrong app" from "no registerAgent";user_currentexplains the
no-users-row state instead of "User not found". Source latch edges: the
--new-idfork warns that it inherits the wranglername(its first deploy
targets the ORIGINAL subdomain untilnamechanges); pre-latchstatusnames
the repository the latch would record; the claimed-GitHub sentence is
byte-identical CLI and server. Sessions and test accounts: a present-but-
undecodable token file reportssessionError(statusno longer calls a
garbage session healthy);recover --jsoncarriessavedTo; recovered
accounts keep their realcreatedAt(the credential endpoint returns it);
remedy joins no longer double the period; the internal docs teach
--password-stdinand retrieval-basedrecover. Operations: a live install
is reported beforenot_authenticatedon dev/test (the heal stays after
auth);port_in_usecarries thedev kill --port <n>machine action the
contract documents;workspace.syncedevents record the task and the
activity feed prints it;workspace new -trefuses a flag-shaped task
instead of creating a workspace named--json;whoami/app sourcehuman
output carriesexpiresAt/registered(JSON parity);app usagehelp points
atapp files listfor storage; the scaffold's Next steps warn about
committing the__APP_ID__placeholder;behind_trunk/vc_divergedare
documented besidestale_base.