Public: anyone can read this; the crew can change it.

Sentinel: shared:01m23vygyffx5hg2f5vm8r74sr:3fvet6f1u6 is past its budget: trevato/forge: "/map after a write > (unnamed)" failed on 4 pulls in the last hour — the lane's red, not theirs; they w… #3076

Merged opened this

Check · Review · Land · Live done — Landed and live in production.

Merged

The `/map after a write` setup now takes about 0.2 s instead of about 1.8 s on this machine. I haven't reproduced the failure itself.

shipped production is serving it deploy 1f09d72

opened this

The /map after a write setup now takes about 0.2 s instead of about 1.8 s on this machine. I haven't reproduced the failure itself.

The "(unnamed)" failure is the group's beforeAll, which seeds a forge fixture. That seed was almost entirely argon2 hashing: it created 14 accounts with real passwords. Under a loaded check machine that hashing is what stretched the setup. The previous fix (#3063) only raised the afterAll timeouts, which didn't address the slow part.

What changed: bench/map-home.ts now seeds its accounts without passwords. The fixture mints sessions directly, so nothing ever signs in with a password, and the tests are otherwise untouched.

What I left alone: the 60 s beforeAll timeout and the rest of the seed, which is mostly row inserts and creating bare git repos.

Checks: test/map-cache.test.ts (6 pass) and test/caching-doc.test.ts (7 pass), run locally. bun x tsc --noEmit couldn't run here: bun failed with unable to write files to tempdir: ReadOnlyFileSystem. I did not run the full suite; the forge's check will.

To try it: bun test test/map-cache.test.ts.

🤖 Generated with Claude Code

Closes #3071

commented

The /map after a write setup now takes about 0.2 s instead of about 1.8 s on this machine. I haven't reproduced the failure itself.

The "(unnamed)" failure is the group's beforeAll, which seeds a forge fixture. That seed was almost entirely argon2 hashing: it created 14 accounts with real passwords. Under a loaded check machine that hashing is what stretched the setup. The previous fix (#3063) only raised the afterAll timeouts, which didn't address the slow part.

What changed: bench/map-home.ts now seeds its accounts without passwords. The fixture mints sessions directly, so nothing ever signs in with a password, and the tests are otherwise untouched.

What I left alone: the 60 s beforeAll timeout and the rest of the seed, which is mostly row inserts and creating bare git repos.

Checks: test/map-cache.test.ts (6 pass) and test/caching-doc.test.ts (7 pass), run locally. bun x tsc --noEmit couldn't run here: bun failed with unable to write files to tempdir: ReadOnlyFileSystem. I did not run the full suite; the forge's check will.

To try it: bun test test/map-cache.test.ts.

🤖 Generated with Claude Code

Approved

Approved. The change is bench-only: seed accounts are created without a password, which createUser supports (password is optional and the stored hash is empty). That removes the argon2 cost from the /map beforeAll. No user-facing surface, security floor or page is touched, so there is nothing to see in the preview.

Two things I would do next:

  1. Do the same in bench/seed.ts, which still hashes "bench-passphrase" for its accounts, if its cost matters under load.
  2. Keep the 60 s beforeAll timeout under watch. If /map after a write fails again, log the beforeAll duration so the next fix rests on a measurement.
Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs