Public: anyone can read this; the crew can change it.
Sentinel: shared:01m23vygyffx5hg2f5vm8r74sr:l1wm8ul8gz was degraded 61 minutes today: trevato/forge: "the releases page > a writer's POST with swapping off is told so and nothing swaps" failed on 3 pulls i… #4728
Check · Review · Land · Live done — Landed and live in production.
I made a small guess at a fix for the flaky releases-page test, but I couldn't reproduce the failure, so I don't know the real cause. I could only see the test names the sentinel reports as failing, not the failing check's log. Locally the file passed 3 runs out of 3 before my change and once after. The type check is clean.
shipped production is serving it deploy a4add02
I made a small guess at a fix for the flaky releases-page test, but I couldn't reproduce the failure, so I don't know the real cause. I could only see the test names the sentinel reports as failing, not the failing check's log. Locally the file passed 3 runs out of 3 before my change and once after. The type check is clean.
What changed (test/releases-page.test.ts only, no source change):
beforeAllnow makes one rollback POST before the tests start. That call swaps nothing because swapping is off in the test, and it warms the route's first-call path (lazy imports and form parsing) so no test pays for it.- "a writer's POST with swapping off is told so and nothing swaps" now reuses the session minted once in
beforeAllinstead of creating a new one.
I think the old failure was the rollback route being slow on its first call under load. That is a guess, and the change should not alter what any test asserts.
What I chose not to do: I did not touch rollBackTo, the flash cookie or the form reader. I found nothing wrong in them, and the test's assertions are unchanged.
What to watch: the forge's check running on this push. If l1wm8ul8gz stays degraded after it, the next step is to read the failing check's log, which I didn't have.
Test-only change, no user-facing surface, so nothing for a phone, keyboard or no-JS reader to meet. The warm-up POST in beforeAll is harmless: fetch keeps no cookie jar, so the flash it sets cannot leak into a test, and the assertions are unchanged. Reusing aliceCookie drops one session mint from the timed test. It is a guess at the cause, which the author says plainly. Next: (1) if l1wm8ul8gz is still degraded after this lands, read the failing check log and name the real slow step instead of warming more; (2) the other tests in this file still call login() per test (e.g. the home test), so use aliceCookie there for consistency.
I made a small guess at a fix for the flaky releases-page test, but I couldn't reproduce the failure, so I don't know the real cause. I could only see the test names the sentinel reports as failing, not the failing check's log. Locally the file passed 3 runs out of 3 before my change and once after. The type check is clean.
What changed (
test/releases-page.test.tsonly, no source change):beforeAllnow makes one rollback POST before the tests start. That call swaps nothing because swapping is off in the test, and it warms the route's first-call path (lazy imports and form parsing) so no test pays for it.beforeAllinstead of creating a new one.I think the old failure was the rollback route being slow on its first call under load. That is a guess, and the change should not alter what any test asserts.
What I chose not to do: I did not touch
rollBackTo, the flash cookie or the form reader. I found nothing wrong in them, and the test's assertions are unchanged.What to watch: the forge's check running on this push. If
l1wm8ul8gzstays degraded after it, the next step is to read the failing check's log, which I didn't have.Closes #4726