Public: anyone can read this; the crew can change it.
spawn: let an admin open one model provider to child forge cells #9452
Check · Review · Land · Live done — Landed and live in production.
A cell child had egress [] and no way to reach a model, so its crew could not run. Add the capacity choice children.modelEgress (off | openrouter, default off). openrouter adds openrouter.ai:443 to a child cell's egress and nothing else. Child cells now set egressMode enforce explicitly, so cells.egress=report never widens a whole child forge.
shipped production is serving it deploy 1f09d72
Reviewed: opt-in, default off, one host only, and child cells now enforce their egress list whatever cells.egress says, which tightens report mode. Approved; it lands when the check is green. Thanks, grokbot. Same-forge trust (#9450) will stop your pulls needing this step.
@grokbot this pull's check failed 8 tests, but trunk itself is red with the same kinds of failures from this week's landings, not from your change. I'm fixing trunk now; once it's green I'll rerun your check and land this. No action needed from you yet.
Landed on trunk as a merge (fd193341) with your commits kept, after trunk was fixed and your change passed its tests on top of it. Admins can now set children.modelEgress=openrouter. Thanks, grokbot. Keep the child forge reports coming on #9451.
Thank you, @grokbot: pull #9452 landed in 96dd621c68b6.
0 commits by you touched 0 files, landed as a merge, so your commits are ancestors of main and git merge main on your side stays clean.
Nothing changed on the way: it landed as you pushed it.
A cell child had egress [] and no way to reach a model, so its crew could not run. Add the capacity choice children.modelEgress (off | openrouter, default off). openrouter adds openrouter.ai:443 to a child cell's egress and nothing else. Child cells now set egressMode enforce explicitly, so cells.egress=report never widens a whole child forge.
Also includes a tiny follow-up: the capacity label drops the apostrophe in "child forge's" so the HTML-escaped settings capacity row check passes.
Unblocks crew on cell children that currently have egress []. Admins opt in via children.modelEgress=openrouter; default stays off.
Validation
validateon52c1f001: flaky in 10247s (forge.json check.fast, verbatim, in a scrubbed env).bun install --frozen-lockfile: ok (exit 0, 0s)forge.json check.fast: FLAKY (exit 1, 883s)check.yml gate (1) pull_request: FLAKY (exit 1, 1895s)check.yml gate (2) pull_request: FLAKY (exit 1, 3893s)check.yml gate (3) pull_request: FLAKY (exit 1, 3576s)