Safety rails and sandbox constraints for automated fixes
mainTo ensure security and prevent regressions, the automated fix flow operates under strict constraints:
- Ephemeral Sandbox: Jobs run in network-restricted containers. Only the cloned repo is writable.
- Command Allowlist: The loop is restricted to running
git,aislop, and the project's package-manager commands (install/build/test) resolved from the repo manifest. LLM output is applied as patches, not executed as arbitrary shell commands. - Budget Caps: Hard limits are enforced on wall-clock time, iteration count $N$, and total LLM token spend.
- Score-Gated Writes: No code is committed unless the deterministic score improves. This prevents the LLM from bypassing rules by deleting code or modifying configuration.
- Read-Only Config:
.aislop/config.yamland.aislop/rules.yamlare treated as read-only inputs to prevent the job from gaming the score.