Repository navigation
ci(required-contexts): register Dogfood Regression Gate as a required context again - #31133
Conversation
Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017ihL2ebbZkr2QAEG1x7UC8
…ion Gate row Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017ihL2ebbZkr2QAEG1x7UC8
Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017ihL2ebbZkr2QAEG1x7UC8
…e, not on the PR Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017ihL2ebbZkr2QAEG1x7UC8
|
domain:devx#2 · marchtian · session_017ihL2ebbZkr2QAEG1x7UC8 Contract reviewServed-tier: Inputs: card #30461 (body; rulings 6663883327 and 6669982756; landed note 6671431307; 24h reading 6707277208; round-2 claim 6707739409; dev reports 6707728600 and 6707962476), PR #31133 body and files, ① Derived judgmentsThe row (ci.yml / dogfood-gate / Dogfood Regression Gate). Same five-field shape as the The tombstone and the counts. The #22998 tombstone now covers The sweep window (merge → ruleset edit). The skill line. review-checklist.md:49 now reads 「dogfood 门禁不跑于 PR、跑于队列,全绿 PR 照样被队列弹出」: not on PR (the The landing. Findings.
② Semver levelnone. No package's ③ Boundary flags
④ Design judgment
Implemented-by: VERDICT: PASS |
|
domain:devx#2 · marchtian · session_017ihL2ebbZkr2QAEG1x7UC8 维护者速读
席位意见:建议批准。改动只限登记行和说明文字,复审无必须修改项,检查全绿;唯一要你动手的是合并后改规则集。 席位核对 — ACCEPT ·
|
Requested by 田騏 · project thread
Part of #30461
Clause-②: no
Metadata-protocol: none
Tier H (
AGENTS.md,.github/workflows/ci.yml;.claude/**rides along). Draft until an approval from GOVERNED_APPROVERS. This is step 3 of ruling 6669982756: theREQUIRED_CONTEXTSrow merges first, then the maintainer addsDogfood Regression Gateto themainruleset the same day. #30461 stays open until that ruleset edit, so this PR does not close it.维护者速读
Dogfood Regression Gate(ci.yml 的dogfood-gate)重新登记为必过检查:注册表加一行,必过名单从 10 个变 11 个,AGENTS.md、seat 读数表和说明文档同步改,旧墓碑注释改成一行"已回归"的历史。不改任何 CI 任务、条件或超时。scripts/check-required-contexts.mjs新增的注册行和改写的墓碑注释;AGENTS.md第 507–512 行的名单。node scripts/check-required-contexts.mjs,应看到11 required context name(s)和ci.yml:dogfood-gate → 'Dogfood Regression Gate'。main的必过检查里加上Dogfood Regression Gate。What changes
scripts/check-required-contexts.mjsREQUIRED_CONTEXTSrow:ci.yml,dogfood-gate,Dogfood Regression Gate. Itsauthorizednames ruling 6669982756 and the 24-hour reading 6707277208. Itscarriesnames the shardedDogfood Regression Gate (k/3)matrix read through the aggregate, and theDogfood Verify CLIleg that itsif:skips on merge_group and pull_request. Same row shape as theTest UIprecedent (833e4a8).Temporal Conformance (live PG + MySQL)alone; its substance is unchanged. The dogfood half is oneReturned:line that keeps the history (dropped by skills(ci): two-speed CI — fast set on PR and merge-queue runs, full battery hourly on main and before a release, main-red stops the lane, four required contexts plus the guard, timing gates report-only, test budgets not deletions #22998, back by [Decision] Merge queue: should the three Dogfood Regression Gate shards run on merge_group, so a dogfood red stops a PR before main instead of after? #30461).statesTheSetsurfaces'mustNamegainDogfood Regression Gate. The two history comments read10→11/the eleven.Dogfood Regression Gate (aggregate)⇒ red, namingdogfood-gate). Battery (9) gains the shard-name collision fixture (adogfoodshard wearing the bare name ⇒ red) and the coexistence control. The ruleset-snapshot comment now says only Temporal reads as unpinned.AGENTS.md(merge-queue rule) and.claude/skills/pm-dispatch/references/platform-readings.md: the required-set list goes from ten to eleven.check:required-contextsis red until both name the registry exactly. The count words are followed by hand, and both files keep their line counts (ratchet headroom 0, every line ≤120 bytes)..claude/skills/pm-dispatch/references/review-checklist.md:49: was "dogfood 门禁不跑于 PR 与队列" (stale since ci(dogfood): the three Dogfood Regression Gate shards run on merge_group #30639). It now readsdogfood 门禁不跑于 PR、跑于队列,全绿 PR 照样被队列弹出。The line is 118 bytes, and the file keeps its 76-line ceiling.docs/agents/multi-agent-discipline.md: "outside those ten" becomes "eleven". The two-speeds paragraph no longer calls the queue dogfood red advisory..github/workflows/ci.yml: comments only. THE TWO SPEEDS and thedogfood-gateheader said the context is outside the required set and its name is unpinned, and this row makes that false. No job,if:, timeout or step changed.Not changed, because the row does not make them false:
scripts/check-aggregator-roster.mjs:REQUIRED_AGGREGATORSalready listsci.yml/dogfood-gate, and its header already counts five required-context aggregators.fleet-patrols.yml,governed-surface-guard.yml,pr-body-guards.ymlandlint.yml'sREQUIRED_CONTEXTScross-reference.cross-repo-issue-closer.yml,publish-smoke.ymlanddocs/audits/gate-census-2026-09.md.Tests
node scripts/check-required-contexts.mjs --self-test: 190 assertions pass, including the three new fixtures. Each fixture asserts its own anchor matched, so a no-op mutation would fail.node scripts/check-required-contexts.mjs: 11 pinned,ci.yml:dogfood-gate → 'Dogfood Regression Gate'.Acceptance notes
fleet-patrols.ymljobLive required-set sweep) will reportDogfood Regression Gatein direction A: registered here, not yet live. That covers this PR's own Fleet Patrols run (it triggers onscripts/check-required-contexts.mjs) and any scheduled sweep (04:23 / 16:23 UTC) before the edit. Direction A exits 0. The job stays green and adds one::warning::annotation. It writes no issue, label or comment and pages nobody. The reading is the sitting's reminder, and it clears once the ruleset carries the context. No fix is proposed.AGENTS.mdand the docs already describe the state after the edit, as theTest UIandLive E2E UIrows did.review-checklist.md:49had been stale since ci(dogfood): the three Dogfood Regression Gate shards run on merge_group #30639, and round 2 (bacd70b11e) rewrote it. It now reads as the state after the ruleset edit, the same convention asAGENTS.md.Verification
Head:
bacd70b11e(round 2 added thereview-checklist.mdline, and the same 82 gates were re-derived and rerun, all exit 0).origin/mainwas merged once before opening (already up to date at5f00374492).mainataf3451b08btouches none of the six files, and merge-tree is clean.The touched gate and its self-test
dispatch-gates derived families: 82 derived, 82 run, 0 NOT-MEASURED
node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstack --ran ran.list→ exit 0: 82 derived, 82 run, 0 NOT-MEASURED (a derived zero). On a first pass, five families read exit 3 (PREREQUISITE NOT MET: no builtpackages/*dist):check:doc-formula-expressions,check:dts-closure,check:dual-build-cjs-loads,check:lean-entry-closureandcheck:sourcemap-no-sources-content. Afterpnpm turbo run build --filter='./packages/**'underos-verify-lock(VERDICT command-exit 0), the whole list was run again on this head and all 82 exited 0.check:pm-dispatch-gates: 1954 fast-tier cases pass.Not run locally:
ui/scripts/__tests__. It is not derived, theci.ymledits are comments only, and grep finds no pin on the edited text. The repo-widepnpm lintis CI's.Session:
session_017ihL2ebbZkr2QAEG1x7UC8🤖 Generated with Claude Code