Skip to content

test(batches): boot the batch E2E suite through the peer-stamped server (base-red #14547) - #14718

Merged
diegosouzapw merged 1 commit into
release/v3.8.51from
fix/release-v3.8.51-basereds-r4
Sep 25, 2026
Merged

diegosouzapw merged 1 commit into
release/v3.8.51from
fix/release-v3.8.51-basereds-r4

Conversation

@diegosouzapw

@diegosouzapw diegosouzapw commented Sep 24, 2026 •

Copy link
Copy Markdown
Collaborator

⚠️ base-red inherited: #14547

Summary

tests/integration/batch-e2e-rate-limit.test.ts fails on the release tip (db70929330, and already before #14472) with Failed to create provider node: 401 null, before any assertion runs. No open PR covers it.

The suite seeds a provider node and mints an API key through the management API in open bootstrap mode. That window stays open only for a loopback peer, and locality comes from the TCP-peer stamp that only the custom server in scripts/dev/run-next.mjs writes. The suite booted run-next-playwright.mjs (bare next dev), which never stamps the peer, so the calls failed closed. #11535 fixed the same trap in the protocol-clients harness and #14403 in the ecosystem harness; this is the third one.

Change

  • tests/integration/batch-e2e-rate-limit.test.ts: boot run-next.mjs dev (HOST stays pinned to 127.0.0.1, open bootstrap unchanged). No assertion touched.
  • tests/unit/batch-e2e-server-stamping.test.ts: source contract pinning the boot target, loopback host and open bootstrap. Integration only runs on the release PR, so this is where every PR sees a regression.

Validation

Update (2026-09-25)

The three stale unit guards this PR also realigned (responses-handler, check-vitest-exclusions, perf-waterfall-elimination) were realigned the same way by #14511, which merged first. That commit was dropped on rebase, so this PR is now only the batch E2E boot fix.

Other reds on the tip, and who owns them

Measured on db70929330 on the idle .113:

Red Owner
typecheck:core cliproxyAccountHealth.ts TS2322, DEEP_HEALTH_CHECK_ENABLED missing from .env.example #14683
API / open-sse typecheck: auggie.ts ×8, projectCombo.ts ×3 #14511 (and #14520)
Migration count 182 → 183 in README / AGENTS.md / llm.txt #14714
The other unit reds in this PR's shards (catalog/provider guards, compression, lease inventory, translate-path golden, stryker gap) #14511 (files overlap 1:1)
check-deps @opencode/plugin #14520
agent-bridge-cert-flow POST /cert 400≠404 environment only: needs passwordless sudo, green on the devbox

All four owning PRs are currently DIRTY against the tip.

diegosouzapw added a commit that referenced this pull request Sep 24, 2026
All three fail on the release tip (fast-path shards 3/4 and 4/4 of #14718, a
PR that touches none of their subjects) and no open base-red PR covers them.
Each follows an intentional product change that merged without its guard:

- responses-handler: #14572 (#14330) gave the synthesized
  response.in_progress keepalive a sequence_number and response object; the
  assertion now pins the full compliant frame instead of the bare one.
- check-vitest-exclusions: #14493 repaired every quarantined suite and
  emptied the inventory; the live-config test still fails on any exclusion the
  inventory does not list, so the non-empty check was the only stale part.
- perf-waterfall-elimination: #14421 routes the Home settings read through
  loadHomeSettings() (defaults to getSettings); the test still requires it in
  the same Promise.all batch, before getMachineId, with no serial await.

28/28 on the idle .113.

Refs #14547
@diegosouzapw diegosouzapw changed the title test(batches): boot the batch E2E suite through the peer-stamped server (base-red #14547) test: clear four uncovered base-reds on release/v3.8.51 — batch E2E boot target + three stale unit guards (#14547) Sep 24, 2026
@diegosouzapw
diegosouzapw force-pushed the fix/release-v3.8.51-basereds-r4 branch from 43866ed to 1fdabd2 Compare September 24, 2026 13:35
diegosouzapw added a commit that referenced this pull request Sep 24, 2026
All three fail on the release tip (fast-path shards 3/4 and 4/4 of #14718, a
PR that touches none of their subjects) and no open base-red PR covers them.
Each follows an intentional product change that merged without its guard:

- responses-handler: #14572 (#14330) gave the synthesized
  response.in_progress keepalive a sequence_number and response object; the
  assertion now pins the full compliant frame instead of the bare one.
- check-vitest-exclusions: #14493 repaired every quarantined suite and
  emptied the inventory; the live-config test still fails on any exclusion the
  inventory does not list, so the non-empty check was the only stale part.
- perf-waterfall-elimination: #14421 routes the Home settings read through
  loadHomeSettings() (defaults to getSettings); the test still requires it in
  the same Promise.all batch, before getMachineId, with no serial await.

28/28 on the idle .113.

Refs #14547
The suite seeds a provider node and mints an API key via the management API in
open bootstrap mode. That window stays open only for a loopback peer, and
locality comes from the TCP-peer stamp that only the custom server in
run-next.mjs writes. Booted through run-next-playwright.mjs (bare next dev) it
got 401 on POST /api/provider-nodes before any assertion ran - red on the
release tip db70929 on the idle .113, also before #14472.

Same trap #11535 and #14403 fixed in the protocol and ecosystem harnesses.
Integration only runs on the release PR, so a unit source-contract test now pins
the boot target where every PR sees it. Fixed suite: 2/2 green on the same box.

Refs #14547
@diegosouzapw
diegosouzapw force-pushed the fix/release-v3.8.51-basereds-r4 branch from 1fdabd2 to 9a76968 Compare September 25, 2026 08:08
@diegosouzapw diegosouzapw changed the title test: clear four uncovered base-reds on release/v3.8.51 — batch E2E boot target + three stale unit guards (#14547) test(batches): boot the batch E2E suite through the peer-stamped server (base-red #14547) Sep 25, 2026
@diegosouzapw
diegosouzapw merged commit d2587a3 into release/v3.8.51 Sep 25, 2026
15 of 21 checks passed
@diegosouzapw
diegosouzapw deleted the fix/release-v3.8.51-basereds-r4 branch October 18, 2026 23:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant