2.3 KiB
status, created, updated, spec
| status | created | updated | spec |
|---|---|---|---|
| in_progress | 2026-08-23 | 2026-08-23 | ../../specs/platform/requirements/e2e-duration-aware-sharding.md |
Keep merge-queue E2E checks within the response budget
Root cause
PR #2950 was removed from the merge queue because the required E2E Tests Passed check failed. The normal shard 14 job reached its 25-minute job
timeout twice, at 14:11:29Z and 13:46:49Z, after the same 167-test serial
plan had run for about 24 minutes. The report job and aggregate gate then
failed because the shard was cancelled. The queue ruleset allows 60 minutes
for required checks, so the 25-minute shard cap was the smaller limit.
The run used the deterministic count fallback because no successful main
timing-profile artifact existed yet. The fix gives that fallback's normal
shard enough bounded execution time to finish without changing per-test
timeouts, retry behavior, or the fail-closed aggregate gate.
Outcome
Set the normal E2E matrix job timeout to 35 minutes and protect that queue budget with the existing workflow contract test. Keep the container, desktop, report, and Playwright timeouts unchanged.
Wave 1: queue-safe normal shard budget
Task 01 updates the workflow contract, the E2E workflow, and the affected spec/plan records. It runs the focused contract test and checks that the worktree diff is valid.
Verification
python3 .github/scripts/e2e-tests-workflow-contract_test.py
git diff --check
The next merge-group run is the operational verification: shard 14 must reach
a terminal test result, the report must merge, and E2E Tests Passed must be
successful for the PR to remain in the queue.
Status
- Confirm queue removal event and failed synthetic merge-group checks.
- Confirm the repeated shard timeout and ruleset response budget.
- Add the regression contract and raise only the normal shard job budget.
- Push the fix to PR #2950 and re-check the current-head queue state.
Local implementation result
- Added a workflow contract assertion for the normal 35-minute shard budget.
- The new assertion failed against the old 25-minute workflow, then passed after the workflow change.
python3 .github/scripts/e2e-tests-workflow-contract_test.pypassed, 5 tests.git diff --checkpassed.