pub fn checker_ceiling() -> GrantSetExpand description
The widest authority any checker may hold.
| Included | Why |
|---|---|
fs:read:**, fs:list:**, fs:stat:** | A checker has to see what it is judging. |
proc:exec:** | The useful checkers shell out — a compiler, a type checker, a test runner. |
What is left out matters more than what is in:
- No
net. A checker cannot reach an inference API, so it cannot ask a model what it thinks. This is the mechanism behind “model-free”, and it is why the claim survives a checker author who did not read the docs. - No
secret. No API key, so no credential to reach one with even if egress were somehow available. - No
time, norand. The two ordinary sources of a verdict that differs between two runs over identical inputs. - No
fs:write. A checker that could edit the workspace could make its own verdict true.
proc:exec is the one wide grant, and it is wide honestly: a subprocess can
do whatever the sandbox lets it. Confining the child is feature 09’s job,
which is exactly the division ARCHITECTURE.md §3 draws — this crate
decides what authority is legitimate, the sandbox decides what is
actually possible.