Repository navigation
QA run · tier1:24681-touched (63/82) · 307ce4c4 · 2026-10-20 · 10 PASS / 53 PARTIAL / 0 FAIL / 0 BLOCKED / 19 NOT-RUN #24840
Description
QA run record — 18.0 round-4 supplementary sweep, the #24681 targeted pass (18.x steps 5 and 6, the upgrade ceremony opened), record 1 of 3: Tier 1 re-run of every pinned item a #24681 source file maps to. Framework 307ce4c4. Maintainer-approved (dispatch session session_01CfRDy7SuTfUqaTu2AEH2Hi, 2026-10-20). Wave anchor: #24579. Previous round: round 3 at 580fd4ed (#24779 surface:api, #24786 surface:cli, #24787 surface:build). Sister records: #24838 (upgrade:ceremony) and t2:24681-touched (close-out comment).
Environment fingerprint
- Framework
307ce4c4b42503347d7f85825f572e4ca058b05f(pinned, detached). No console build; objectui-only pins are not runnable here. - Cold tree:
pnpm install --frozen-lockfile(21 s),pnpm build --concurrency=2(76/76, 7m29s),check-dev-prereqsgreen. - vitest per package, one package at a time,
--maxWorkers=1, JSON reporter per package; cli*.e2e.test.*pins in their own invocation underOS_TEST_TIERS=nightly, every other cli pin without it (RUNNEROS_TEST_TIERSfact). No server of the run was alive while the pins ran except this pass's own HTTP runners (never more than 2). - Timestamps (UTC, 2026-10-20): unit pins 08:13–08:33; nightly + dogfood pins 08:34–08:42; one missed pin re-run 09:06; clause mapping 08:47–09:05.
- Clause mapping: three parallel read-only mapping subagents (28/27/27 items), each re-deriving clause by clause from the item text and the pin source, re-read by the parent. Sequential pin execution by the parent.
Scope
Selector tier1:24681-touched. Population: the #24681 merge commit 12d14765c7's changed files (git diff --name-only 12d14765c7^1 12d14765c7) minus tests, changesets, .md/.mdx, the checklist area JSONs and .github/ — 49 files — each resolved with node scripts/checklist-select.mjs file:PATH --json. Union: 176 runnable items (no planned), of which 82 carry automated.ref (read from areas/AREA.json). Those 82 are this record's denominator. (With the two checklist area JSONs and lint.yml counted, the union is 178 / 84; the extra two pinned items are ai.mcp-oauth-private-host-transport and identity-auth.teams-bu-membership, reached only through docs/qa/platform-checklist/areas/*.json — not product source, so not in this pass.)
Revisions: each row below carries the revision its verdict is valid for.
Pin run
189 pin files, 4953 tests passed, 0 failed, 0 skipped across 29 packages; every named file that exists in this checkout was collected and ran at least one test (none collected zero). One pin was first missed by the ref parser (integration-system.datasource-admin-lifecycle's parenthesised "(+ tests/envelope.conformance.test.ts)") and run separately: 24/24.
Not runnable here, scored not-run:
- objectui-only refs:
automation.screen-flow-roundtrip,i18n.surface-matrix,records-forms.cascading-options,records-forms.master-detail-atomic-save,records-forms.related-list-server-pagination(its pin is marked stale),records-forms.bulk-select-all-matching; the objectui halves ofrecords-forms.cascading-multilevel-and-clear,records-forms.list-view-capabilities,automation.setup-packaged-automation-board,platform-core.metadata-authoring-roundtrip. - Playwright spec
examples/app-showcase/e2e/showcase-smoke.spec.ts(platform-core.nav-surfaces-render,records-forms.view-type-gallery): browser, not run (no console this pass).
How a pin scores (RUNNER rule 6, "a pin scores only the layer it drives")
PR #24811 (which adds that paragraph to rule 6) is not on main at 307ce4c4; this record applies its meaning. Each row names the layer its pins drive: unit (functions or handlers with fakes), in-process (a real kernel/engine/driver in the test process), http-in-process (a real Hono adapter in-process, e.g. the dogfood harness), live-boot (a spawned server or CLI). A clause whose oracle is an API answer, a boot log or a shell exit code is scored pass (pin) only when a pin drives that layer; otherwise it is not-run with "pin drives only LAYER". A negative that states only a runner or recording rule is procedural and counts as not-run.
Result
| verdict | items |
|---|---|
| PASS | 10 |
| PARTIAL | 53 |
| FAIL | 0 |
| BLOCKED | 0 |
| NOT-RUN | 19 |
| total | 82 (63 judged) |
No pin failed; no clause failed.
Against round 3 (580fd4ed)
- PASS in round 3, FAIL now: none. No item failed, so RULE 7 had nothing to re-derive here.
- Lower than round 3, no behaviour regressed — every move is the layer rule or a revision change, never a red pin:
- PASS → PARTIAL:
cli.organization-ownership-ceremony(rev 2 → 3 rewrote a1–a4; a1 checksum and a3 served-boot line need a live run),cli.migrate-meta-write-stored-and-all(a4--storedoutput not pinned at the command),cli.verify-derived-proof-families(a1 "on the showcase"),integration-system.connector-stdio-default-deny,records-forms.field-unique-enforcement(rev 3 → 4; driver-level pins with a test-local 409 mapper),integration-system.notification-org-and-redeliver-eligibility,access-security.security-catalog-activation-and-clone-doors,api-backend.error-sentences-and-unique-violation-wire-code,automation.scheduled-work-opt-in,automation.flow-run-semantics-v18,records-forms.write-answer-advisories-rollback-and-tree-delete,api-backend.declarative-endpoint-execution,platform-core.v18-boot-refusals(rev 4 → 5). - PARTIAL → NOT-RUN:
cli.migrate-plan-apply-json(its only pin is a unit emitJson test; a2 asks forecho $?),cli.verify-verdict-exit-mapping,attachments-storage.field-accept-maxsize-server-enforced(its ref itself disclaims the wired lane). - Fewer clauses inside PARTIAL:
integration-system.external-schema-drift-gate,cli.dev-automigrate-policy,api-backend.packaged-action-disabled-dispatch,ai.mcp-stdio-fail-closed,platform-core.settings-audit-secret-fingerprint(a0–a4 now need the API read; they PASS live in QA run · upgrade:ceremony (9/9) · 307ce4c4 · 2026-10-20 · 6 PASS / 3 PARTIAL / 0 FAIL / 0 BLOCKED / 0 NOT-RUN #24838).
- PASS → PARTIAL:
- 27 items carry round 3's mapping unchanged where the revision is the same and no pin file changed since
580fd4ed; the rest were re-derived (rows say which). - Items with no round-3 Tier 1 verdict: the browser/mixed-surface items (round 3 ran surface:api / cli / build only).
Per-item verdicts
Columns: item · rev · pins (files, tests passed) · layer · clauses passed · uncovered (not-run reason) · verdict · source.
| item | rev | pins | layer | passed | uncovered | verdict | source |
|---|---|---|---|---|---|---|---|
| cli.migrate-plan-apply-json | 6 | 1, 4/4 | unit | - | a0–a6, n0, n1: need live runs (a2: pin is emitJson only; echo $? per subcommand not driven) |
NOT-RUN | re-derived |
| cli.organization-ownership-ceremony | 3 | 9, 200/200 | in-process + unit | a0, a2, a4 | a1: plan-run checksum and plan-file fields from a real run not pinned / a3: served-boot error and ready lines need a live boot / n0: "a plan run alters nothing" not asserted | PARTIAL | re-derived |
| cli.dev-automigrate-policy | 4 | 1, 14/14 | unit | n0 | a0: no safe-category apply / a1: off/omitted boots not exercised / a2: the production case stages relax_not_null (needs_confirm since ADR-0113), so it holds without the guard; warning not asserted / a3: managed gate and re-warn not pinned / a4: sql-driver-unique-tenancy.test.ts not in ref / a5 / n1–n3 not pinned |
PARTIAL | re-derived |
| platform-core.serve-composition-v18 | 2 | 6, 41/41 | live-boot + http-in-process + in-process | a0–a5 | - | PASS | re-derived |
| access-security.security-catalog-one-holder-and-boot-report | 2 | 6, 54/54 | in-process + http-in-process + unit | a0, a3 | a1: install-local HTTP door's PLUGIN_REGISTER_FAILED not driven (pin calls manifest.register) / a2: PUT /meta/permission not driven / a4: ≤50-names cap and boot-line grant names not asserted | PARTIAL | re-derived |
| cli.verify-verdict-exit-mapping | 2 | 1, 7/7 | unit | - | a0–a3: need the run / a4: decision function only; payload and hard-fail not observed / n0, n1 | NOT-RUN | re-derived |
| cli.datasource-introspect-codegen | 6 | 3, 64/64 | http-in-process + unit | - | a0: narrowing half only, CLI side not pinned / a1–a3 / a4, a5: stubbed fetch only / n0–n2 / n3, n4 procedural | NOT-RUN | re-derived |
| cli.migrate-meta-write-stored-and-all | 2 | 5, 152/152 | in-process + unit | a0–a3 | a4: --stored TODO output not asserted at the command |
PARTIAL | re-derived |
| cli.meta-package-flags-and-explain | 2 | 5, 65/65 | in-process | a0–a3 | - | PASS | carried from #24786 (re-checked) |
| cli.verify-derived-proof-families | 2 | 5, 15/15 | live-boot | a0, a2 | a1: pins use own fixtures, not the showcase | PARTIAL | re-derived |
| integration-system.datasource-admin-lifecycle | 4 | 2, 54/54 | http-in-process (fake services) | a6, a7, n4, n5 | a0, a1, n1: capability floor not pinned / a2: no-row-persists half / a3, n3: migrate-credential / a4: list provenance/status / a5, n0: secret never echoed end to end / a8: code and ledger / n2: persistence half | PARTIAL | re-derived |
| integration-system.external-schema-introspection | 4 | 2, 40/40 | http-in-process + unit | a1, a3, a4, n0–n3 | a0, a2: live showcase fixture half not pinned | PARTIAL | carried from #24779 |
| integration-system.external-schema-drift-gate | 3 | 3, 39/39 | unit | a4, a5, a6, n2, n4 | a0, n0, n3: boot-abort message not asserted (instanceOf only) / a1–a3, n1: pin drives only unit / n5: "silent" not asserted | PARTIAL | re-derived |
| platform-core.interrupted-migration-boot-report | 2 | 1, 11/11 | unit | a3, a4, n0, n1 | a0–a2: live boot log / health and row counts / n2 procedural | PARTIAL | re-derived |
| records-forms.encrypted-field-behavior | 2 | 2, 87/87 | unit + http-in-process | a0, a1, a3, n0, n1 | a2, n2: echoed-mask no-op at engine.update only / a4, n3: aggregate rejection at engine.aggregate only | PARTIAL | re-derived |
| records-forms.field-unique-enforcement | 4 | 3, 91/91 | unit (driver-level; test-local 409 mapper) | a4, a5, n2, n3 | a0: REST body wording not asserted / a1–a3, n0: pin drives only unit / n1: statement text in refusal not asserted | PARTIAL | re-derived |
| records-forms.field-type-constraints | 2 | 4, 137/137 | http-in-process + unit | a6, n2, n4 | a0–a4, n0, n1: refusals not pinned (round-trip only) / a5: existence-only boundary / a7: direct-write-ignored and summary halves / n3 procedural | PARTIAL | re-derived |
| access-security.public-form-withdrawal-layers | 3 | 4, 376/376 | http-in-process + unit/in-process | a0–a5, n0–n2 | n3–n5 procedural | PARTIAL | carried from #24779 |
| access-security.walled-environment-metadata-operator-only | 5 | 7, 130/130 | http-in-process (walled posture) + unit | a0–a2, n0 | - | PASS | re-derived |
| api-backend.meta-read-doors-v18 | 2 | 7, 115/115 | unit | a0–a3 | a4: data-sort 403 on F not asserted | PARTIAL | carried from #24779 |
| platform-core.protocol-18-handshake-and-stored-replay | 1 | 5, 98/98 | unit + in-process | a0 | a1: 422 body asserted with a fake kernel only / a2: GET v18 shape and old-shape PUT 422 not pinned / a3: warn on a mocked logger, no os start |
PARTIAL | re-derived |
| access-security.record-access-explain | 3 | 1, 10/10 | in-process + http-in-process | - | a0: browser / a1: security.explain() in-process at object level, not POST /security/explain / a2–a4, n0 | NOT-RUN | re-derived |
| access-security.parent-and-organization-write-guards | 4 | 6, 125/125 | in-process + http-in-process | a0–a3, n0 | - | PASS | re-derived (agrees with #24779) |
| api-backend.packaged-action-disabled-dispatch | 4 | 2, 22/22 | http-in-process + unit | a0 | a1, a2, n0: ordering manual / a3, a6, n1: unit only / a4: live MCP call / a5: restart durability / n2: anonymous 401 baseline | PARTIAL | re-derived |
| api-backend.action-activation-door-contract | 4 | 3, 43/43 | unit + http-in-process | a6, a7, n2, n3 | a0: authority-first ordering / a1: 4-segment 404 / a2, a3, n0: unit only / a4: 503 unpinned / a5: 200 body and row count / n1 | PARTIAL | re-derived |
| automation.flow-node-type-matrix | 7 | 1, 2/2 | http-in-process | - | a1: one variant of a 20-variant clause; a0, a2–a5, n0 not pinned | NOT-RUN | re-derived |
| automation.flow-run-semantics-v18 | 2 | 5, 106/106 | unit | a0, a3, n0 | a1: current_user stamp at engine only / a2: 403 at dispatcher with fakes | PARTIAL | re-derived |
| integration-system.connector-declarative-boot | 3 | 1, 2/2 | http-in-process | n0 | a0–a2: mcp variant only / a3–a5, n1: no pin | PARTIAL | carried from #24779 |
| platform-core.activation-ledger-row-contract | 5 | 3, 76/76 | unit + http-in-process | a2, a3, n1, n2 | a0, n0: generic-write 405s / a1, n3: unique index refusal / a4: rev-5 scope wall / a5: restart byte-identity / n4 procedural / n5: closed :type set | PARTIAL | carried from #24779 |
| platform-core.lifecycle-retention-sweep | 4 | 1, 114/114 | unit | a2, a3, n0, n1 | a0, a1, a4: live boot / a5: enumSource gate, not a pin / n3: aggregate line / n2, n4 procedural | PARTIAL | re-derived |
| records-forms.cascading-multilevel-and-clear | 4 | 1, 55/55 (+ objectui spec not run) | unit | - | a0: objectui / a1, a2, n0, n1: unit only / a3: browser / a4, a5 / n2 procedural | NOT-RUN | re-derived |
| records-forms.delete-behavior-matrix | 2 | 3, 58/58 | unit | a0–a4, n0–n3 | a5: FieldSchema parse-reject seam not pinned | PARTIAL | re-derived (matches #24779) |
| records-forms.write-answer-advisories-rollback-and-tree-delete | 1 | 5, 96/96 | in-process + http-in-process | a0, a3, n0 | a1: warnings answer at protocol, not a REST body / a2: abort at engine, no wire status | PARTIAL | re-derived |
| search.cross-field-object-search | 3 | 1, 5/5 | http-in-process | a0–a4, n0–n2 | - | PASS | carried from #24779 |
| api-backend.query-contract-matrix | 4 | 3, 212/212 | unit | a4 | a0–a3, a5–a8: REST clauses manual / n0: mocked protocol only | PARTIAL | carried from #24779 |
| api-backend.declarative-endpoint-execution | 3 | 4, 131/131 | http-in-process + unit | a0, a1, a3, n0 | a2: build half via the spec gate only, no CLI run; 501 half at unit | PARTIAL | re-derived |
| approvals.decision-action-matrix | 6 | 1, 367/367 | unit | n1 | a0–a8: no pin drives the action routes / a9: READ_BACK_FAILED at service; wire 500 not driven / n0, n2 | PARTIAL | re-derived |
| approvals.decision-only-via-service | 1 | 1, 22/22 | unit | a0–a3, n0 | - | PASS | carried from #24779 |
| attachments-storage.field-accept-maxsize-server-enforced | 3 | 1, 51/51 | unit (handler-direct) | - | a0, a1, a3–a6, n0, n1: handler-direct; the ref disclaims the wired lane / a2: wire envelope disclaimed / n2, n3 procedural | NOT-RUN | re-derived |
| automation.trigger-type-matrix | 5 | 1, 2/2 | unit (static ledger) | a5 | a0–a3: live trigger runs / a4: browser / n0: its pin is not in the ref / n1 | PARTIAL | re-derived |
| automation.screen-flow-roundtrip | 4 | 0 (objectui only) | none | - | a0–a6, n0, n1: objectui Playwright spec not run | NOT-RUN | re-derived |
| automation.durable-suspend-restart | 1 | 1, 11/11 | http-in-process (cold re-boots) | a0, a1, a4, n0 | a2: timer-wait resume / a3: nested subflow + approval | PARTIAL | carried from #24779 |
| dashboards.dataset-report-authoring | 3 | 1, 3/3 | http-in-process | a0 | a1: dataset/values and legacy keys not asserted / a2, a6, a7: browser / a3–a5, n0, n1 | PARTIAL | re-derived |
| dashboards.empty-null-bucket-boundaries | 1 | 1, 8/8 | in-process | a3 | a0, a5: screenshot / a1: network / a2: KPI vs aggregate / a4: its pin empty-group-bucket-parity.test.ts exists but is not in the ref / n0, n1 |
PARTIAL | re-derived |
| i18n.surface-matrix | 9 | 0 (objectui only) | none | - | a5: objectui pin / a0, a2–a4: screenshot / a1, a6–a10, n0–n3: no framework pin | NOT-RUN | re-derived |
| integration-system.connector-stdio-default-deny | 2 | 1, 19/19 | unit | n0 | a0–a2: boot output, unit only / a3: API listing / n1: degraded state | PARTIAL | re-derived |
| integration-system.connector-descriptor-audit | 2 | 1, 9/9 | in-process + unit | a0 | a1: provider-bound case / a2: reload re-audit / n0: stock boot / n1 | PARTIAL | re-derived |
| integration-system.webhook-lifecycle | 9 | 1, 1/1 | in-process (fixture stack) | - | a0: half, on a fixture stack, no activation door / a1–a6, n0–n2: no pin | NOT-RUN | re-derived |
| integration-system.email-template-render | 7 | 1, 4/4 | in-process + http-in-process | n0 | a0: body hole not checked / a1, a2, a4, a6, a7 / a3: built-in fallback only / a5: reboot survival / n1 / n2 procedural | PARTIAL | re-derived |
| integration-system.connector-auth-kind-application | 2 | 2, 60/60 | unit | a0–a2, n2 | a3, n1: oauth2 refusal / a4, n0: live secret grep | PARTIAL | carried from #24779 |
| platform-core.nav-surfaces-render | 6 | 0 (Playwright) | none | - | a0, n0, n1: Playwright spec not run / a1–a3, n2 / n3 procedural | NOT-RUN | re-derived |
| records-forms.field-type-matrix | 4 | 2, 91/91 | http-in-process + unit | a0, a3, a4, n2 | a1: browser / a2, a5, a6, n0, n1: refusal vectors not pinned | PARTIAL | re-derived |
| records-forms.list-view-capabilities | 5 | 1, 5/5 (+ objectui specs not run) | http-in-process | - | the ref says its local pin scores no clause; a1, a5, n1 objectui specs; the rest unpinned | NOT-RUN | re-derived |
| records-forms.view-type-gallery | 1 | 0 (Playwright) | none | - | a5: Playwright not run / a0–a4, n0 / n1 procedural | NOT-RUN | re-derived |
| records-forms.cascading-options | 4 | 0 (objectui only) | none | - | a0–a4, n0, n1: objectui pin | NOT-RUN | re-derived |
| records-forms.master-detail-atomic-save | 6 | 0 (objectui only) | none | - | a0, a4: objectui specs / a1–a3, a5, n0, n1 | NOT-RUN | re-derived |
| records-forms.related-list-server-pagination | 6 | 0 (objectui only, stale) | none | - | a2: stale objectui pin / a0, a1, a3–a5, n0–n2 | NOT-RUN | re-derived |
| records-forms.action-param-widgets | 3 | 1, 5/5 | http-in-process | n1 | a0, a1: browser / a2: received-keys echo / a3: UI half / n0 procedural | PARTIAL | re-derived |
| records-forms.bulk-select-all-matching | 4 | 0 (objectui only) | none | - | a0–a4, n0–n2: objectui unit pins | NOT-RUN | re-derived |
| records-forms.object-hook-lifecycle | 8 | 6, 91/91 | http-in-process + unit/in-process | a0, n0, n2–n4 | a1, a2, a4, a9: not pinned / a3, a5, a7, a8, n1: unit/in-process only, log or wire oracle unobserved / a6: beforeInsert variant | PARTIAL | re-derived |
| access-security.fls-mask-and-strip | 5 | 2, 18/18 | http-in-process | a1, n0 | a0: re-read / a2: admin budget PATCH / a3: browser / a4: UI half | PARTIAL | re-derived |
| access-security.grant-table-write-contract | 5 | 5, 75/75 | in-process + http-in-process | a0–a4 | - | PASS | re-derived (agrees with #24779) |
| access-security.org-admin-assignment-boundary | 1 | 3, 187/187 | in-process + unit | a0–a3, n0–n2 | - | PASS | re-derived |
| ai.mcp-stdio-fail-closed | 6 | 1, 17/17 | unit | a0 | a1: API_KEY_REVOKED arm / a2: live log / a3–a6: live MCP vs REST / a7: unit only / n0–n4 | PARTIAL | re-derived |
| identity-auth.admin-lifecycle-operations | 8 | 5, 28/28 | http-in-process + in-process | a1–a3, a8, n0 | a0, n1: banned sign-in not driven / a4: target's next request / a5, n3: #3023 pin not in ref / a6: stop-impersonating / a7: screenshot / a9: read-back partial / n2 procedural | PARTIAL | re-derived |
| platform-core.v18-boot-refusals | 5 | 3, 35/35 | in-process + unit | a0, a3, n0 | a1: refusal text in-process; os serve exit and printed line not observed / a2: pre-existing rows and marker absence not asserted |
PARTIAL | re-derived (both PASS live in #24838) |
| integration-system.notification-org-and-redeliver-eligibility | 2 | 4, 108/108 | in-process + http-in-process + unit | a0, a3 | a1: "no warning" unasserted (silent logger) / a2: readCount 0 / no receipt not asserted | PARTIAL | re-derived |
| access-security.activation-write-operator-gate | 8 | 2, 46/46 | unit | a1, a4, a5, n1, n3 | a0: flow door unentitled case / a2: ordering for unentitled caller / a3: ledger row mocked / n0 / n2 | PARTIAL | re-derived (matches #24779) |
| access-security.meta-authoring-trail-and-audience-gates | 2 | 3, 69/69 | http-in-process + in-process | a0, a1, n0 | a2: /published, /layers, draft refusals and the trail-admitted 403 not asserted | PARTIAL | carried from #24779 |
| access-security.security-catalog-activation-and-clone-doors | 1 | 4, 99/99 | http-in-process + unit | a0, a1 | a2: 400s at unit dispatcher only / a3: anonymous 401, own-name 409, notice key | PARTIAL | re-derived |
| access-security.share-link-combined-gates | 3 | 3, 154/154 | unit | a0–a3, n0 | - | PASS | carried from #24779 |
| ai.mcp-http-surface | 4 | 1, 6/6 | http-in-process | a3, n0 | a0–a2: not in pin / a4: 12-tool set / a5: OAuth scope / n1 procedural | PARTIAL | carried from #24779 |
| api-backend.error-sentences-and-unique-violation-wire-code | 3 | 4, 620/620 | unit + in-process | a0 | a1: live /data leg via mapDataError only / a2: dispatcher in-process, no HTTP adapter / a3: storage handlers on a fake server | PARTIAL | re-derived |
| approvals.act-door-and-admin-rescue-slate | 3 | 4, 37/37 | unit + in-process + http-in-process | a0, a2 | a1: self-hosted raw-mount PUT 404 with no Allow | PARTIAL | carried from #24779 |
| automation.setup-packaged-automation-board | 5 | 1, 4/4 (+ objectui not run) | unit | - | a0: nav declaration only / a1, a3–a6: objectui mocked pins / a2: persistence / a7, n0, n1 procedural / n2 | NOT-RUN | re-derived |
| automation.inbound-hook-timestamped-signature | 1 | 3, 47/47 | http-in-process + unit | a0–a2 | - | PASS | re-derived (agrees with #24779) |
| platform-core.metadata-registry-serving | 2 | 1, 6/6 | http-in-process | a0–a2, n0 | a3–a6, n1: not in the pin / n2: pinned under another item | PARTIAL | carried from #24779 |
| platform-core.metadata-authoring-roundtrip | 4 | 1, 5/5 (+ objectui not run) | in-process | a3 | a0, a1, a4, a5, n1, n2: not pinned / a2: objectui (stale) / n0: locked-overlay arm | PARTIAL | re-derived |
| records-forms.crud-roundtrip | 11 | 2, 32/32 | unit + in-process | - | a0–a5: need the run / a6: readonly half only / a7, n0–n3 | NOT-RUN | re-derived |
| platform-core.activation-ledger-registration-home | 5 | 3, 35/35 | http-in-process + unit | a0–a4, n0, n1, n3 | n2 procedural | PARTIAL | carried from #24779 |
| platform-core.settings-audit-secret-fingerprint | 3 | 1, 7/7 | unit | a5, n0–n3 | a0–a4: ledger reads over the API not observed (PASS live in #24838) / n4 procedural | PARTIAL | re-derived |
| automation.scheduled-work-opt-in | 1 | 2, 22/22 | in-process | a0 | a1: live boot line / a2: runs over two intervals | PARTIAL | re-derived |
Checklist-accuracy findings / fixture gaps (for #24579)
Refs that claim more than their pins assert:
cli.migrate-plan-apply-json: "covers acceptance[2]" — the pin is a unit emitJson test; a2 asks forecho $?per subcommand.cli.verify-verdict-exit-mapping: "covers acceptance[4]" — the pin testsresolveVerifyMultiTenantonly.records-forms.field-unique-enforcement: says the SQL pins assert "409 UNIQUE_VIOLATION over real REST"; they are driver-level with a test-localcreateAsApimapper.integration-system.connector-stdio-default-deny,dashboards.dataset-report-authoring,platform-core.protocol-18-handshake-and-stored-replay,integration-system.webhook-lifecycle(rev 9): bare refs over-imply coverage.automation.flow-node-type-matrix,records-forms.list-view-capabilities: Tier 1 in name only (no complete clause pinned; the list-view ref says so itself).attachments-storage.field-accept-maxsize-server-enforced: the ref disclaims the wired lane — NOT-RUN until a REST pin exists.cli.dev-automigrate-policy: the production-force-off case stagesrelax_not_null, which ADR-0113 made needs_confirm, so it passes with or without the guard; it should stagereplace_unique_indexand assert the warning.platform-core.metadata-authoring-roundtripa3's verify names the dogfood pin as covering the PUT door; it callsprotocol.saveMetaItemin-process.records-forms.encrypted-field-behavior: a2/a4 guards are pinned at the engine only.- Sweep-wide: several item texts tell the runner to score api/log clauses from unit or driver pins ("unit fallback", knownGaps "score from the pin") — they contradict rule 6's layer paragraph (field-unique a1–a3, drift-gate a0/a3, cascading-multilevel a1, approvals a9, settings-audit a0–a4).
Refs that miss their own pins:
integration-system.datasource-admin-lifecycle: second file spelled "(+ tests/envelope.conformance.test.ts)" — respell with " + " so a ref parser finds it.dashboards.empty-null-bucket-boundariesa4:packages/qa/dogfood/test/empty-group-bucket-parity.test.tsexists, is named in a4's verify, and is not in the ref.automation.trigger-type-matrixn0:showcase-anonymous-deny-surfaces.dogfood.test.tsnot in the ref.identity-auth.admin-lifecycle-operationsa5/n3: the[#3023]case insecurity-plugin.test.tsnot in the ref.cli.dev-automigrate-policy:sql-driver-unique-tenancy.test.ts(a4/n2) named in GAPS, missing from the ref.
Other:
approvals.decision-action-matrix: the pin also asserts n1 (THROTTLED), unclaimed by the ref.records-forms.related-list-server-pagination: its only pin is stale.platform-core.lifecycle-retention-sweepa5 is checked by the item's enumSource gate, not a pin.
Item verdicts (derived)
10 PASS / 53 PARTIAL / 0 FAIL / 0 BLOCKED / 19 NOT-RUN of 82.
NOT-RUN (19): objectui-only or Playwright pins — automation.screen-flow-roundtrip, i18n.surface-matrix, records-forms.cascading-options, records-forms.master-detail-atomic-save, records-forms.related-list-server-pagination, records-forms.bulk-select-all-matching, platform-core.nav-surfaces-render, records-forms.view-type-gallery; a runnable pin that scores no clause at its oracle's layer — cli.migrate-plan-apply-json, cli.verify-verdict-exit-mapping, cli.datasource-introspect-codegen, access-security.record-access-explain, automation.flow-node-type-matrix, records-forms.cascading-multilevel-and-clear, attachments-storage.field-accept-maxsize-server-enforced, integration-system.webhook-lifecycle, records-forms.crud-roundtrip, automation.setup-packaged-automation-board, records-forms.list-view-capabilities. Each of these needs a live run (or a pin at the right layer) — handover for the next sweep.
Generated by Claude Code
Activity
objectstack-fleet commentedon Oct 20, 2026
Close-out.
Parked-on: #24579 · partial coverage: the uncovered clauses of the 53 PARTIAL and 19 NOT-RUN rows (pin-upgrade candidates at the layer each clause's oracle needs) and the automated.ref accuracy list in this record
No product defect was found by the pins (189 files, 4953 passed, 0 failed). Sister records: #24838 (
upgrade:ceremony), #24841 (t2:24681-touched).Generated by Claude Code
objectstack-fleet commentedon Oct 20, 2026
Closure complete (checklist-test §5): this record has no FAIL and extracts no card. Its partial coverage is parked on #24579 (the
Parked-on:line in comment 6288148567, rolled up in #24579 comment 6288485402).Closed by: the 18.0 QA wave dispatch session
session_01CfRDy7SuTfUqaTu2AEH2Hi, on the maintainer's standing instruction there (2026-10-19, verbatim 「qa-run的卡片处理完的是不是可以关闭」), at 2026-10-20T13:13Z, after 18.0.0 was published.Generated by Claude Code