Repository navigation
docs(qa): 18.0 sweep anchor round 19 — RUNNER's connector entry names the own-port boot by what it is, and the packaged-automation board's inventory clause judges the switch - #25027
Merged
objectstack-fleet[bot] merged 3 commits intoOct 21, 2026
Conversation
The connector environment-facts entry called the dogfood section 0 boot "isolated" twice, the phrasing a runner reads as the isolated tenancy posture. Respelled in the voice of the area-file respellings: "a boot on its own non-3000 port" and "the dogfood section 0 boot on its own port". No posture text is touched. Claude-Session: https://claude.ai/code/session_01FM29ZqLTrnPNXxijioZwMp Co-authored-by: Claude <noreply@anthropic.com>
…not the badge The inventory clause read "default all On, an obsolete-status flow excepted", which holds for the row's switch (the activation flag) but not for the Activation badge beside it, which reads "Not running here" for the two policy-unbound schedule flows on a default boot (steps[3]). The clause now names the switch, and verify scores it against the _status row's enabled field and leaves the badge to steps[3]. One revision bump and one history row; oracle and evidence unchanged. Claude-Session: https://claude.ai/code/session_01FM29ZqLTrnPNXxijioZwMp Co-authored-by: Claude <noreply@anthropic.com>
Swaps the placeholder ref of the revision-8 history row for the PR's number, now that it has one. Nothing else changes. Claude-Session: https://claude.ai/code/session_01FM29ZqLTrnPNXxijioZwMp Co-authored-by: Claude <noreply@anthropic.com>
Contributor
Author
Seat reviewACCEPT ·
This seat readies the PR and queues it with auto-merge. Generated by Claude Code |
objectstack-fleet
Bot
deleted the
claude/issue-24579-v18-sweep-round19
branch
October 21, 2026 02:52
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #24579
Clause-②: no
Round 19 of the 18.0 sweep's wave anchor (claim
6305778491, PM loop round 34). It applies round 18's two carried checklist-text findings, PR #25018's out-of-scope findings as its ACCEPT6305381435and landing record6305762608carry them.Only checklist text changes, in two files:
RUNNER.md(two spellings) andareas/automation.json(automation.setup-packaged-automation-boardacceptance[1], onerevisionbump and onehistoryrow naming PR #25018). There is no product code, test, pin or changeset text, no new item, and every item id is kept.73432299c0(origin/mainwhen the branch was cut, and stillorigin/mainwhen this body was written).cf153eb2e535(.objectui-shaonmain) withgit show:packagedFlows.tsbloba85c96d28e5aandPackagedAutomationPage.tsxblobf4aa90e11d32, the same blobs round 18 cited. The server side was read at the base.1.
RUNNER.md: the connector environment-facts entryThe entry named the dogfood §0 own-port boot "isolated" twice, the phrasing a runner reads as the
isolatedtenancy posture. Both are respelled in the voice rounds 17 and 18 used in the area files (round 18: "a dogfood-§0 isolated boot on a non-3000 port" → "a dogfood-§0 boot on its own non-3000 port", and "an isolated boot without it dials 3000" → "a boot on its own port without it dials 3000"). This is a plain textual edit, two lines, and no line is re-wrapped. In the quotes below,PORTstands for the angle-bracket port placeholder the file spells.:260- **An isolated boot on a non-3000 port breaks the showcase's self-pinging connectors- **A boot on its own non-3000 port breaks the showcase's self-pinging connectors:269back, so the dogfood §0 isolated boot — `objectstack dev … -p PORT` with the envback, so the dogfood §0 boot on its own port — `objectstack dev … -p PORT` with the envgit diff --stat:RUNNER.md | 4 ++--.Every
isolatedinRUNNER.mdat the base, each read in its context::141groupbesideisolated":260:269objectstack dev … -p PORTwith the env untouched":519os servebootsgroupandisolated":527OS_TENANCY_POSTURE=grouporisolated":528resolveTenancyPosture()… reads asisolated":591isolatedwith the other two set"That is 7 at the base and 5 at the head, all 5 posture texts. Two other forms of the word are not the boot's name and are left:
:9, "environment isolation (§0)", names the dogfood skill's section, and:319, "do NOT isolate a package install", is a verb.2.
automation.setup-packaged-automation-boardacceptance[1](revision 7 → 8)The clause said "default all On, an obsolete-status flow excepted". That holds for the row's switch, the activation flag. It does not hold for the Activation badge beside the switch, which
steps[3](revision 7) reads as "Not running here", switch still checked, for the two policy-unbound schedule flows on a default boot.clause, old:
clause, new:
verify: the old text is kept whole, and this is appended:
oracle (
dom) and evidence ("row list vs the two API reads, side by side") are unchanged. They matchsteps[3], which compares the rendered rows againstGET /api/v1/meta/flowandGET /api/v1/automation/_status. The clause still judges what the page renders, against those two reads.Why the new text holds:
joinPackagedFlowssetsenabled: state.enabled !== false, and the row'sSwitchrenderschecked={row.enabled}. The badge is a separate element (data-testid="packaged-flow-activation",data-readingfromactivationReading), which readsoffwhen the flag is off,not-runningwhen the flag is on and the row carries anunboundCause, andonotherwise.getFlowRuntimeStates()takesenabledfromisFlowEnabled(name), which is false only forflowStatusDisabled(statusobsoleteorinvalid) orflowLedgerDisabled(the activation ledger).describeUnboundReasonreturns itsdeployment_policycause only for an enabled flow, so the scheduled-work switch moves the badge and never the flag.allFlowsstill declares 32 flows: one obsolete (showcase_approver_bindings) and twotype: 'schedule'(showcase_scheduled_digest,showcase_task_due_reminder), as round 18 derived at93e6c1a5f8.examples/app-showcase/src/automation/has no change between the two commits.How the edits were made and checked
RUNNER.md: a plain textual edit of the two lines, shown above.automation.json: the scripted span editor of rounds 17 and 18, unchanged (sha256b0fa4606c135…, identical). It never re-serialises the file. Dry run, then--write, both printing:OK … A1 doc == old + declared ops; A2 21 unedited items + 5 top-level keys value-equal; A3 per item below; A4 text outside the 1 edited item spans byte-identical, withautomation.setup-packaged-automation-board: revision 7 -> 8; 7 leaf paths changed, all within [acceptance.1.clause, acceptance.1.verify, revision, history.7].revision,date,change,ref). Nothing changed outsideacceptance[1].clauseandacceptance[1].verify, and that clause'soracleandevidenceare unchanged.#PENDING-24579R19, because a row'srefnames this PR and the PR had no number yet (the rounds 6–18 precedent). The next commit on this branch swaps in this PR's number and changes nothing else. The gates are re-run on that head, and the report comment on qa(checklist): 18.0 release sweep anchor at 5b14b7f3 — re-point 5 red-row clauses + the wave's checklist-accuracy findings, fixture gaps and not-run handover (18 records) #24579 records them.Gates
node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstackderives 13 commands on the 2 paths, against merge base73432299coforigin/main. At heada6a963a5f9each was run with its exit code captured before any pipe, and each exited 0:node scripts/check-ci-filter-parity.mjs·node scripts/check-closing-keyword-parity.mjs·node scripts/check-closing-keyword-parity.mjs --self-test·node scripts/check-comment-mask-corpus.mjs·pnpm --filter @objectstack/lint run check:doc-formula-expressions·pnpm check:cross-package-test-inputs·pnpm check:doc-authoring·pnpm check:driver-memory-census·pnpm check:gitlink-declared·pnpm check:nul-bytes·pnpm check:platform-checklist·pnpm check:refd-timer-probe·pnpm check:watch-hint-literalThe first run of
check:doc-formula-expressionsrefused with exit 3, a prerequisite:@objectstack/formulaand@objectstack/lintwere not built in this worktree. Both were built under the shared verify lock (VERDICT command-exit 0, held 2 s, waited 0 s), and the rerun exited 0.--ran, with an exit code on every line, reads "13 derived, 13 run, 0 NOT-MEASURED, 0 UNRUN", a derived zero.No per-PR CI job runs
pnpm check:platform-checklist, so this local reading is its evidence. The base column was taken in this worktree with both files restored to the base's blobs, then restored toHEADand proven equal by blob hash, withgit diff HEADempty:73432299c0a6a963a5f9No anchor and no line citation is added. The new verify text names
joinPackagedFlows,isFlowEnabledand the two files in prose, as the item already cites objectui.git merge-tree --write-treeexited 0 against each of:origin/main73432299c0;2e76ecfc31(it changesareas/records-forms.json);356172a1f9(it changesFOLLOW-UPS.md).Neither of those PRs touches
RUNNER.mdorareas/automation.json. Their file lists were read over REST, 7 and 41 files.There is no ablation, because no tested behaviour changed.
skip-changesetwas re-measured: nofiles[]entry of the 73 non-private manifests (86 trackedpackage.jsonfiles) reaches outside its own package or namesdocs/qa, and the repo root is private.Acceptance notes
The same respelling is still owed in the area-level fixture recipes, outside every item. Rounds 17 and 18 respelled item texts, and this round's surface is
RUNNER.mdand one clause. At the base, 11 strings in the area-levelfixturesrecipes of four area files still name the own-port boot or its DB "isolated", with no posture word beside them:attachments-storage.json:qa-scratch-authz(requires[2],teardown) andqa-media-constraints(requires[1],teardown);automation.json:qa-flow-status-doors(requires[1],requires[2],teardown);records-forms.json:qa-feeds-disabled(requires[1],teardown);search.json:qa-contributor-bound-member(requires[2],teardown).One of them,
qa-flow-status-doors.requires[2], points at this entry as "RUNNER.md, the isolated-boot/OS_PORT standing fact". After this PR the entry's title no longer says "isolated", so that pointer names it by words it no longer carries.records-forms.jsonis in open PR fix(objectql): a unique refusal's user-facing sentence names the object and field by label #25021. This is noted for the wave anchor, and not filed.Generated by Claude Code