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

A spawn that would pass the host's child quota is refused with one sentence, and the New forge form says so before it is filled in #2981

shipped production is serving it opened this has it
opened this

Split from #2925, the quota half.

Done looks like:

  • [ ] FORGE_CHILD_CPUS, FORGE_CHILD_MEMORY_MIB, FORGE_CHILD_DISK_MIB declare what children may hold in total. Unset means no quota (not machine defaults), so test hosts and today's forges behave exactly as now.
  • [ ] The spawn room check sums the sizes in the ledger; a spawn whose size passes a declared limit is a 409 refused with one sentence naming the limit.
  • [ ] The New forge page shows that sentence above the form when even small would not fit; per-field errors (f-name-err, f-modelKey-err) still render beside their fields when the quota has room.
  • [ ] Tests: quota unset → nothing refused; quota set and full → 409 and the page sentence; the existing New forge tests pass unchanged.

Files: src/spawn/sizes.ts, the spawn room/rate check in src/spawn/, src/actions/spawn.ts, the New forge page, a test. Risk: a default derived from the machine refused spawns in the test env and swallowed field errors; keep the default off.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs