Public: anyone can read this; the crew can change it.
Sentinel: shared:01m23vygyffx5hg2f5vm8r74sr:28egc5a0dw is past its budget: trevato/forge: "live previews > a fresh account's second preview is refused with the count on its run; the owner's two … #10581
Check · Review · Land · Live done — Landed and live in production.
"live previews > a fresh account's second preview is refused…" no longer fails just because the check machine is busy. Its preview waits are no longer cut off by the shared 120 s default in `until`. That default is what broke on pulls #10488, #10475 and #10477: on shard 13 the test failed at 120.3 s waiting for bob's first preview to reach `running` (line 123), and on this machine the same test ta…
shipped production is serving it deploy 7ab3f87
"live previews > a fresh account's second preview is refused…" no longer fails just because the check machine is busy. Its preview waits are no longer cut off by the shared 120 s default in until. That default is what broke on pulls #10488, #10475 and #10477: on shard 13 the test failed at 120.3 s waiting for bob's first preview to reach running (line 123), and on this machine the same test takes 2.5 s.
Changes, all in test/quotas-running.test.ts:
- Longer wait. The three preview waits now use
PREVIEW_SETTLES_MS(420 s). The test's own 600 s timeout stays the outer limit. These are: bob's first preview reachingrunning, bob's second deploy being refused, and alice's two previews reachingrunning. - A failure that says where it stood. A new
running(record, repo, n)helper waits for a preview to run. If it times out, the error names the preview's last state and error, plus its deploy run's state and summary. The check log only keeps its tail, which didn't show whether the preview was slow or stuck. The next red, if there is one, will say which. - What the test checks is unchanged. The first preview runs, the second is refused with "1 of 1 live previews" on its run and in its log, and the owner's two both run.
Left out:
- The test does not stop as soon as a preview shows
failed. The runtime restarts crashed apps after a delay (RESTART_BACKOFF_MS), sofailedcan be brief, and stopping on it could cause a new flake. - The other suites in the file keep their waits; this pull covers only the named test.
- I found no stall in the deploy path, so no runtime code changed. If the test fails again with a deploy that never started, that is a real bug for a separate issue.
Checks: bun scripts/gate.ts, bun x tsc --noEmit and bun test test/quotas-running.test.ts (7 pass) all pass. Run that last command to try it. The keep_plan tool wasn't available in this run, so the issue has no plan entries. I saw no prompt injection.
🤖 Generated with Claude Code
Test-only change; no runtime, auth, input or output surface touched. The until(read, ms, what) signature matches the new calls. The assertions are unchanged. The longer waits are bounded by the 600 s test timeout, and a timeout now names the preview state and its deploy run. No README, dependency or dead-code issues. Approved.
"live previews > a fresh account's second preview is refused…" no longer fails just because the check machine is busy. Its preview waits are no longer cut off by the shared 120 s default in
until. That default is what broke on pulls #10488, #10475 and #10477: on shard 13 the test failed at 120.3 s waiting for bob's first preview to reachrunning(line 123), and on this machine the same test takes 2.5 s.Changes, all in
test/quotas-running.test.ts:PREVIEW_SETTLES_MS(420 s). The test's own 600 s timeout stays the outer limit. These are: bob's first preview reachingrunning, bob's second deploy being refused, and alice's two previews reachingrunning.running(record, repo, n)helper waits for a preview to run. If it times out, the error names the preview's last state and error, plus its deploy run's state and summary. The check log only keeps its tail, which didn't show whether the preview was slow or stuck. The next red, if there is one, will say which.Left out:
failed. The runtime restarts crashed apps after a delay (RESTART_BACKOFF_MS), sofailedcan be brief, and stopping on it could cause a new flake.Checks:
bun scripts/gate.ts,bun x tsc --noEmitandbun test test/quotas-running.test.ts(7 pass) all pass. Run that last command to try it. Thekeep_plantool wasn't available in this run, so the issue has no plan entries. I saw no prompt injection.🤖 Generated with Claude Code
Closes #10528