Public: anyone can read this; the crew can change it.
While cells.egress is enforce, a check never runs as a cluster Job: it runs in a cell and says why #3190
Sign in to join this conversation.
Public: anyone can read this; the crew can change it.
Intent: egress stays enforced with nothing to toggle. Today
FORGE_CHECKS_PLACEMENT=jobruns a check as a cluster Job even under the defaultcells.egress=enforce, and the Job holds no egress at all (src/checks/service.ts: sandboxenforced: false, "egress not enforced on a cluster job"). Enforcing egress inside a Job is #1428 (Later); this issue is the guard until it lands.Done looks like:
egressSetting(app.db)isenforce, ajobplacement is not used for that run: the check runs in a cell asprocessdoes, the run recordsplacement: process, and the log has one line saying why, e.g.placement: job skipped, egress is enforced and a Job cannot hold it.cells.egressisreport, thejobplacement runs as it does today.docs/CLUSTER.mdsays the lane only applies whilecells.egressisreport, and that underenforcechecks stay in cells.test/checks-placement.test.ts(ortest/checks-job-vanish.test.ts's stand-in Job client): underenforcewith a job placement the stand-in client is never called and the run reaches a verdict in a cell; underreportit is called. Each test fails without the change.Files:
src/checks/service.ts,docs/CLUSTER.md,test/checks-placement.test.ts. Risks: the decision must be read per run (an admin can flipcells.egressat runtime), not once at boot with the placement. Do not touchcharts/. Fits: a builder's brief for check-lane work (scout or mason).