Repository navigation
dogfood: main's Dogfood Regression Gate (3/3) is red since #25956 — the authz blind-spot census still pins handleI18nRequest at 3 in packages/runtime/src/domains/i18n.ts; #25956 made it 4 #25988
Description
Filing gate ③: maintainer-directed task. The maintainer, 2026-10-26 08:01Z: 「main 上的 Dogfood Regression Gate (3/3) 时红时绿,跟合仓无关,还没有 issue 跟踪」. Filed by the devx seat (seat post #6023, session session_01LKHDniRQSWjRJyDtacwpEd). The claim follows separately.
Business reason: Dogfood Regression Gate (3/3) is red on every main run that runs it, starting at #25956 (06:42Z today). The release gate (full-battery) reads those runs. A red full battery at the version commit refuses a cut, and every red push run also re-files #25438.
Reader who acts: domain:devx. packages/qa/dogfood is the QA harness, and the server lane is not seated today. One small PR.
It looks intermittent, but it is a deterministic red
The red comes from one assertion. It fails the same way on every run that runs shard 3/3:
FAIL [isolated] test/authz-probe-blind-spot.test.ts > authz probe blind-spot census (#13260)
> packages/runtime/src/domains/i18n.ts — every positive control is still present in THAT file
AssertionError: control "handleI18nRequest" moved in packages/runtime/src/domains/i18n.ts: expected 4 to be 3
- Cause:
69fa23d60b(fix(runtime): GET /i18n/translations/:locale carries an ETag and Cache-Control: private, no-cache, and a matching If-None-Match is answered 304 (#25785) #25956, Part of rest/i18n: GET /i18n/translations/:locale serves the whole locale bundle (288–361 KB raw, 80–88 KB compressed) on every console open with no ETag or Cache-Control, and carries Studio's metadataForms (46.8 KB) into the boot read #25785, server card thread). It added a 4th occurrence ofhandleI18nRequesttopackages/runtime/src/domains/i18n.ts. Onorigin/mainthe file holds 4 occurrences (lines 20 and 73 are docblock{@link handleI18nRequest}, 150 is the call, 155 is the declaration); at37617109it held 3.PROBE_FILE_CENSUSstill records 3. - Why it looks intermittent: a
pushrun onmainis affected-only (ci: push runs on main use the affected set; an hourly scheduled run keeps the full list and files a card on red (maintainer-directed) #16467), so a merge that does not touch the dogfood closure skips theDogfood Regression Gate (N/3)legs. The aggregate is then green, for example 0c37228's run 40282257384.pull_requestandmerge_groupnever run the dogfood legs at all (dispatch-gates lists Dogfood Regression Gate as "scheduled BY YOUR PATHS" for a route-ledger.ts change, but its if: skips pull_request and merge_group, so neither PR CI nor the derived commands run the dogfood pins (main red after #24009) #24073), which is how fix(runtime): GET /i18n/translations/:locale carries an ETag and Cache-Control: private, no-cache, and a matching If-None-Match is answered 304 (#25785) #25956 merged green. - Reproduced locally on
origin/maincdd4eea938:npx vitest run test/authz-probe-blind-spot.test.tsinpackages/qa/dogfood→1 failed | 46 passed, the same assertion.
Runs on main (CI workflow), newest first
| run | event | head | Dogfood Regression Gate (3/3) |
|---|---|---|---|
| 40284424233 | push | cdd4eea | ❌ failure (job 121444813097) |
| 40283575048 | push | 963e504 | ❌ failure (job 121442160635) |
| 40282257384 | push | 0c37228 | skipped (affected-only), aggregate ✅ |
| 40281628332 | push | 38050ce | ❌ failure (job 121436163074) |
| 40281437744 | push | 69fa23d (#25956) | ❌ failure (job 121435563374), first red |
| 40281225169 | push | 3761710 | ✅ success (job 121434899004), last green before the cause |
| 40280560677 | push | d5f4c2a | ✅ success |
| 40277513449 | schedule | 9ca36b1 | ✅ success |
Before 69fa23d, the 3/3 leg was green on all 56 main runs from 2026-10-25 05:57Z to 06:40Z today that ran it. The red CI conclusions in that window came from other jobs (#25438 tracks those).
Wanted
- The census is a measurement pin. Its own header says that whoever moves a count re-reads it, so don't just bump the number. Read the 4th occurrence. If it is only the new docblock
{@link}and the probe's reach is unchanged (the population and reachable rows fori18n.tsstill pass today), record 4 and say so in the PR body. - If the new code added a handler or route that the probe should see, stop and report it. That is a census row change, not a count bump.
- Check whether any other control or row in
authz-probe-blind-spot.census.tsmoved with fix(runtime): GET /i18n/translations/:locale carries an ETag and Cache-Control: private, no-cache, and a matching If-None-Match is answered 304 (#25785) #25956 or with later merges. Run the wholepackages/qa/dogfoodshard 3/3 locally (or the census +authz-conformancefiles) before you push. - Acceptance:
Dogfood Regression Gate (3/3)is green on the firstmainpush run after landing that runs it, and on the next scheduled run. Report the run ids on this card.
Not in scope
- Making PR or merge-group CI run the dogfood legs. That was ruled on in dispatch-gates lists Dogfood Regression Gate as "scheduled BY YOUR PATHS" for a route-ledger.ts change, but its if: skips pull_request and merge_group, so neither PR CI nor the derived commands run the dogfood pins (main red after #24009) #24073 / [Decision] The required
Test CoreandDogfood Regression Gatego red on superseded runs (139 in 51 h, 0 real catches): keep #16157's ruled reading, or decide by the cancel cause the platform records? #22653, and is a separate decision. - The ui-merge Test UI red (
check-pre-install-import-graph,scripts/objectstack-pin.mjs), which is ci(ui-merge): the pre-install import graph reads the repository root's workflows; objectui's prompt files move to the root .github/prompts/ #25957 / tooling(ui-merge): governance in-repo — liveness evidence and spec tests stop citing objectui by commit, one sdui-parser, AGENTS.md / pm scripts dropobjectui#,ui/AGENTS.mdnests, 18 governance workflows merged or retired (parent #25677, 4b/6) #25712.
Clause-②: no
Metadata-protocol: none
Generated by Claude Code
Activity
[-]dogfood: main's Dogfood Regression Gate (3/3) is red since #25956 — the authz blind-spot census still pins at 3 in packages/runtime/src/domains/i18n.ts; #25956 made it 4[/-][+]dogfood: main's Dogfood Regression Gate (3/3) is red since #25956 — the authz blind-spot census still pins `handleI18nRequest` at 3 in packages/runtime/src/domains/i18n.ts; #25956 made it 4[/+]objectstack-fleet commentedon Oct 26, 2026
Claim: PM loop · 2026-10-26T08:11Z
Session:
session_01H98bQgxPLVbpyR6Zsu6SUW(card thread, dispatched by seat sessionsession_01LKHDniRQSWjRJyDtacwpEd)Account:
os-elon-muskBranch:
claude/project-thread-vi44lw(the harness-pinned branch for the card thread; it names no issue, so this claim is the identity record)Worktree:
objectstack-issue-25988Domain:
domain:devxSeat:
domain:devx#1(seat post #6023)File surface:
packages/qa/dogfood/test/authz-probe-blind-spot.census.ts(+ its test only if a row changes) (stop on breach; explain in the report)Container & model:
S (p1),mode:thread,model: default tier,effort: xhighClause-②: no
Metadata-protocol: none
Responsibility: n/a — measurement pin re-read
Thread-read: none
Serial constraints cleared: none in flight on packages/qa/dogfood
Dispatched under the maintainer's 「同意」 to the director's ruling batch 1, item 5A (devx dispatches p1–p3). Dispatch order:
/mnt/project-files/pm-devx-seat/dispatch-25988.md.objectstack-fleet commentedon Oct 26, 2026
os-dev-report
{ "issue": 25988, "status": "done", "branch": "claude/project-thread-vi44lw", "pr": "https://github.com/objectstack-ai/objectstack/pull/26002", "session": "session_01H98bQgxPLVbpyR6Zsu6SUW — card thread (dispatched by seat session session_01LKHDniRQSWjRJyDtacwpEd)", "premise_still_valid": true, "summary": "Premise holds: at base 05f7758f the census test reads 1 failed | 46 passed on exactly the i18n.ts handleI18nRequest control (4 vs 3). The 4th occurrence is the {@link handleI18nRequest} in TRANSLATIONS_CACHE_CONTROL's docblock (i18n.ts:73), added by 69fa23d6 with three module-private helpers and no handler, DomainRoute prefix or shouldDenyAnonymous( call, so population / reach / gate control stay 1 / 1 / 1. The row's control is recorded at 4 and its comment names the 4th occurrence; nothing else in the census moved (47/47 green with the change). One file, +12 / -4.", "tests": "head ed1c5b39, all under os-verify-lock: closure build `pnpm turbo run build --filter=@objectstack/dogfood --concurrency=2` → Tasks 67/67, VERDICT command-exit 0. Shard `OS_TEST_SHARD=3/3 node scripts/run-with-stall-guard.mjs ... -- pnpm turbo run test --filter=@objectstack/dogfood` → Test Files 97 passed | 2 skipped (99), Tests 990 passed | 14 skipped (1004), VERDICT command-exit 0; check-test-completeness OK 1004/1004. authz-conformance.test.ts + authz-probe-blind-spot.test.ts → 2/2 files, 108/108 tests. Census alone at base 05f7758f before the change → 1 failed | 46 passed (the issue's assertion). `pnpm --filter @objectstack/dogfood typecheck` → VERDICT command-exit 0. No ablation: the diff changes a recorded measurement, not tested behaviour.", "gates": "dispatch-gates --commands at ed1c5b39: 52 families on 1 path; 51 exit 0; pnpm check:dual-build-cjs-loads exit 3 (PREREQUISITE NOT MET: needs every package's dist, only the dogfood closure was built) = NOT MEASURED, CI Lint owns it. `dispatch-gates --ran`: 52 derived, 51 run, 1 NOT-MEASURED, 0 UNRUN, exit 0. eslint --no-inline-config on the changed file exit 0. check-governed-merges --branch HEAD: NOT governed, 16 changed lines. PR check-runs: in_progress at report time.", "dogfood_battery": "n/a — no `!` in the PR title and no (narrowing) arm; shard 3/3 was run anyway per the dispatch order: ed1c5b39 · VERDICT command-exit 0 · Test Files 97/99 (2 skipped) · Tests 990/1004 (14 skipped) · no failures", "mcp_calls": "3 — mcp__github__issue_read x2 (get, get_comments on #25988), mcp__github__pull_request_read x1 (get #26002); no write tool", "api_writes": "2 relay strokes — (1) pr_create #26002 (POST /pulls + assignees os-elon-musk + labels skip-changeset), run 40293605219; (2) pr_request_reviewers #26002 (os-elon-musk) + this comment on #25988", "open_questions": [], "out_of_scope_findings": [] }Generated by Claude Code
objectstack-fleet commentedon Oct 26, 2026
Seat ACCEPT on PR #26002 at head
ed1c5b3(re-read pin: the 4th occurrence is #25956's docblock link; population/reach/gate 1/1/1 unchanged). Lands when CI is green.Generated by Claude Code
objectstack-fleet commentedon Oct 26, 2026
Acceptance readings for #25988, after #26002 landed (merge
a3e5bfa6, 2026-10-26 09:11Z). Both are green.Dogfood Regression Gate (3/3)mainpush run that runs the lega3e5bfa6(#26002 itself)95294be3Dogfood Regression Gateaggregate were also success. When this was read, 36 of the 37 jobs had finished, all success, andTest Core (4/8)was still running.The census assertion that reddened every 3/3 leg since
69fa23d6is gone on both runs. The card's acceptance is met, and it goes back to the devx seat for closing.Generated by Claude Code