Uh oh!
There was an error while loading. Please reload this page.
docs(spec): record the second FLOW_DISABLED / FLOW_NO_START_NODE emitter - #9739
Conversation
Since #9446 (PR #9584), POST /api/v1/actions/:object/:action also emits both codes through dispatchFlowAction (packages/runtime/src/action-execution.ts), not just the trigger door's respondToFlowTrigger. Update the ledger's provenance notes to record the second emitter, following the in-file PACKAGE_DELETE_PARTIAL precedent ("Second EMITTER of the code ... Provenance, not identity"). Comment-only: the registration rows themselves are unchanged, so no code is registered or unregistered. Fixes#9586 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016D9wdJR14KKCxz1WgdAzcw
📓 Docs Drift CheckThis PR changes 1 package(s): 5 hand-written doc(s) NAME something this change touched and may need an implementation-accuracy re-verification:
⛔ 1 release-owned page(s) also name something this change touched. These are read-only:
What this run could not seeCoarse fallback — 115 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): Which tree this was computed onThis run read A worktree cut from an older # while this PR is open — GitHub drops the merge commit once it closes
git fetch origin abcf915d48f0de430cf0f31d8e06f4fc8695adc8 && git checkout abcf915d48f0de430cf0f31d8e06f4fc8695adc8
# afterwards, rebuild it from the two parents, which stay fetchable
git fetch origin 10bbc1971e1d8ac4a2c76e9548a75ad71b96502e 764d2eff9b4b1440783bf02894fe21fd5453862b && git checkout -B drift-repro 10bbc1971e1d8ac4a2c76e9548a75ad71b96502e && git merge --no-ff 764d2eff9b4b1440783bf02894fe21fd5453862b
node scripts/docs-audit/affected-docs.mjs --json 10bbc1971e1d8ac4a2c76e9548a75ad71b96502e
|
Uh oh!
There was an error while loading. Please reload this page.
Fixes#9586
What changed
Comment-only update to
packages/spec/src/api/error-code-ledger.zod.ts(under@objectstack/runtime). TheFLOW_DISABLEDandFLOW_NO_START_NODEprovenancenotes named only
respondToFlowTrigger(the trigger door) as the emitter. Since#9446 (PR #9584),
POST /api/v1/actions/:object/:actionalso emits both codes,through
dispatchFlowAction(packages/runtime/src/action-execution.ts), readingthe same engine classification via the shared
classifyFlowRefusaltable(
flow-dispatch-status.ts) and serving the throw througherrorFromThrown.Both notes now record the second emitter, following this file's own
PACKAGE_DELETE_PARTIAL/WRITABLE_PACKAGE_REQUIREDprecedent shape("Second EMITTER of the code ... Provenance, not identity").
FLOW_FAILED's note already named both doors and was left untouched.Scope
Comment text only, inside the two ledger entries. The registration rows
themselves (code / status / package) are byte-for-byte unchanged — verified via
git diffbelow — so no code is registered or unregistered andpnpm check:dispatcher-error-vocabularystays green.Premise verification (done before editing, on
origin/main)dispatchFlowAction(
packages/runtime/src/action-execution.ts,classifyFlowRefusalcall andthe
err.code = refusal.codethrow) readsrefusal.codefrom the sharedFlowRefusalCodetable inpackages/runtime/src/flow-dispatch-status.ts,which enumerates
'FLOW_DISABLED' | 'FLOW_NO_START_NODE' | 'FLOW_FAILED'andmaps the engine's
AutomationResult.codeto the same status/code pairs thetrigger door uses (409/
FLOW_DISABLED, 422/FLOW_NO_START_NODE). The routeserves the throw through
errorFromThrown, per the function's own docstring.Docs regeneration
content/docs/references/api/error-code-ledger.mdxis generated from thisfile's top-level module docstring plus the flat
ErrorCodeenum-value list —neither includes per-entry
//comments on individual ledger array items, soregenerating produces no diff (verified:
check:generated/check:docsgreen with no working-tree changes after running the generator).
Changeset
None. This is a comment-only provenance note with no user-visible or
wire-visible change — the registration rows (and therefore the published
ErrorCodeunion and its runtime behavior) are byte-for-byte unchanged. Perthis repo's
changeset-checkexemption ("this PR declares no release of itsown"),
skip-changesetis the right mechanism here; left for the PM to applyper this card's dispatch instructions.
Tests / gates
All run against
764d2ef(this branch's head). See the issue comment reportfor full command output. Summary: spec package rebuilt;
check:dispatcher-error-vocabulary,check:cross-package-test-inputs,check:empty-state,check:liveness,check:strictness-ledger,check:variant-docs,check:merge-driver,check:spec-parsed-alias,check:type-source-resolution,check-dev-prereqs --self-test(matching thisgate's own CI invocation),
check-affected-docs,check:error-code-casing,check:doc-formula-expressions,error-code-ledger.test.ts(17 passed),spec typecheck,
check:generated(13/13 artifacts current),check:docs,and
check-nul-bytes.mjsall green.Generated by Claude Code
Generated by Claude Code