Skip to content

test(dogfood): the two view resets drop the ?package= the reset door never read - #23105

Merged
objectstack-fleet[bot] merged 1 commit into
mainfrom
claude/issue-23084-dogfood-reset-package-param
Oct 12, 2026
Merged

objectstack-fleet[bot] merged 1 commit into
mainfrom
claude/issue-23084-dogfood-reset-package-param

Conversation

@objectstack-fleet

Copy link
Copy Markdown
Contributor

Fixes #23084
Clause-②: no

What changes

packages/qa/dogfood/test/view-container-cross-package-default.dogfood.test.ts, two lines: the two view resets drop the ?package=${REPAIR} the reset door never read.

  • :174 DELETE /meta/view/os_qa_shadow_probe?package=${REPAIR} becomes DELETE /meta/view/os_qa_shadow_probe
  • :228 DELETE /meta/view/os_qa_keyed_probe?package=${REPAIR} becomes DELETE /meta/view/os_qa_keyed_probe

Nothing else moves. The two PUT saves (:149, :203) keep their ?package=, because the save door reads it. The closed query set in packages/rest/src/rest-server.ts is not widened. No changeset: @objectstack/dogfood is private and publishes nothing.

Why (triage ruling 6131531682, applied as ruled)

Measured

All runs are in this container, on base 2d21b9c891 plus the fix a61ad11dd3, through scripts/pm/os-verify-lock.sh. The dogfood dependency closure was built first (pnpm turbo run build --filter=@objectstack/dogfood, 63/63 tasks).

  • Reproduction before (unmodified file at 2d21b9c891): Tests 2 failed | 2 passed (4). Both failures are AssertionError: expected 400 to be 200, at :175:28 (steps 1-7) and :229:28 (keyed member). This matches the hourly run.
  • After (a61ad11dd3): the same file gives Test Files 1 passed (1), Tests 4 passed (4), and the lock reports VERDICT command-exit 0.
  • Shard 1/3 (OS_TEST_SHARD=1/3 pnpm --filter @objectstack/dogfood exec vitest run --maxWorkers=2, CI's own carrier, at a61ad11dd3): Test Files 87 passed (87), Tests 718 passed (718), and the lock reports VERDICT command-exit 0.
    • The 87 files match vitest 4.1.11's BaseSequencer.shard slice (sha1 of the root-relative path, [0, 87) of 259), recomputed locally. That slice contains this file.
  • Typecheck: pnpm --filter @objectstack/dogfood run typecheck exits 0. tsc --listFiles counts the edited file once, so the program does cover it.
  • Derived gates: dispatch-gates --commands lists 53 commands, the same list on 2d21b9c891, on a61ad11dd3 with no paths, and on current origin/main abf86554c9. All 53 exit 0 at a61ad11dd3.
    • check:dual-build-cjs-loads first exited 3 (PREREQUISITE NOT MET, 8 packages unbuilt). It exited 0 once those were built: 107 published require entry point(s) across 66 package(s) load.
    • --ran reconciliation: 53 derived famil(ies) accounted for.
  • Lint, proven narrowing over the one touched file:
    1. Population, read from eslint's own config: isPathIgnored: false, with 5 rules enabled for the file.
    2. File count, from --format json: 1 file, 0 errors, 0 warnings, exit 0.
    3. Invariance: the resolved config has no parserOptions.project or projectService, and the 5 rules are per-file AST rules. So this diff cannot move any other file's verdict.

For #23072: the PUT door does read package

PUT {metaPath}/:type/:name reads package at rest-server.ts:7175 (metaItemPackageBinding(req.query?.package)) and threads it as packageId into the save request (:7225).

The handler's other query reads:

  • force (:7166);
  • mode, read a frame down in metaSaveRequestOptions (:7146, meta-save-request.ts:94);
  • the repeat guard names ['force', 'package', 'mode'] (:7145).

The PUT declares no closed set yet. The test's PUT ...?package=${REPAIR} at :203 carries weight: :222 asserts _packageId is REPAIR. This line is not changed here.

Acceptance notes

  • Not merged with origin/main: it moved 4 commits during this run (abf86554c9: lint, metadata-protocol, objectql, CI timing scripts). This diff is two test lines and dogfood runs only in the full battery, so the pin is the next hourly full run on main: Dogfood Regression Gate (1/3) green.
  • Shards 2/3 and 3/3 were not run locally, by declared narrowing. The edited file is in shard 1, and every other dogfood file boots its own app or a per-worker shared one that this file is not part of. CI's full battery runs all three.
  • The same hourly run's Test Core (6/6) red is shard-timing-drift and is not this card, as the claim notes.

Generated by Claude Code

…never read

The DELETE {metaPath}/:type/:name door (the reset) reads only `state`,
`dropStorage` and the bundle member selector; `DeleteMetaItemRequest`
declares no package. Its closed query set (route rule 5) now answers a
located 400 for any other name, so the two dogfood resets that still
carried `?package=` went red on the full battery. Dropping the parameter
changes nothing the handler does: it was ignored before the closed set
landed. The PUT saves keep their `?package=`, which that door reads.

Claude-Session: https://claude.ai/code/session_01VoSxBQujKLZKPwK2u5ehQ6
Co-authored-by: Claude <noreply@anthropic.com>
@objectstack-fleet objectstack-fleet Bot added the skip-changeset PR has no user-facing published change; bypasses the changeset gate label Oct 12, 2026
@github-actions

Copy link
Copy Markdown
Contributor

📓 Docs Drift Check

Nothing in this diff resolved to a documentable surface (no symbol, route or SDK anchor derived from 0 changed package(s)), so this run has no opinion about the docs.

What this run could not see

Coarse fallback — 0 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): node scripts/docs-audit/affected-docs.mjs --json 55828c5145ce1ca8cb597baf3396614adf9c0583 → packageMentionDocs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/xs skip-changeset PR has no user-facing published change; bypasses the changeset gate tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

hourly full run: red on main (CI)

2 participants