awesome-loop-engineering / examples /security-review-loop.json
cy0307's picture
Sync awesome-loop-engineering
9ec4919 verified
Raw
History Blame Contribute Delete
2.95 kB
{
"name": "Security review",
"objective": "Continuously review scoped code changes for security risks, validate findings with evidence, and escalate sensitive decisions to humans.",
"trigger": {
"type": "event",
"cadence_or_event": "PRs touching auth, permissions, infrastructure, dependencies, cryptography, or data handling; plus a weekly pass on active branches."
},
"intake": {
"sources": ["changed files and diffs", "threat model", "dependency advisories", "secrets scan output", "static analysis results"],
"selection_rule": "Review security-relevant diffs only; validate every finding against concrete code paths before reporting it."
},
"workspace": {
"isolation": "Read-only exploration by default; safe fixtures only for proof-of-concept checks.",
"allowed_actions": ["static analysis", "tests against safe fixtures", "dependency audit", "evidence-backed reporting"],
"disallowed_actions": ["secret exfiltration", "production access", "destructive testing", "public disclosure", "broad rewrites"]
},
"context": {
"required_files": ["security policy", "threat model", "sensitive path list"],
"runtime_sources": ["prior findings and false positives", "CI security check results"]
},
"agents": [
{
"role": "Explorer",
"responsibility": "Map attack surfaces and sensitive changes in the diff."
},
{
"role": "Reviewer",
"responsibility": "Check for vulnerability classes and missing controls."
},
{
"role": "Validator",
"responsibility": "Distinguish exploitable findings from speculative concerns."
},
{
"role": "Judge",
"responsibility": "Decide whether to open a narrow PR, file an issue, or escalate."
}
],
"verification": {
"gates": ["findings cite concrete files, paths, inputs, or traces", "static analysis or tests support claims where possible", "suggested fixes do not weaken controls or broaden permissions", "sensitive actions are human-approved"],
"receipts": ["reviewed commit SHA", "sensitive paths checked", "commands run", "findings with severity and evidence", "recorded false positives"]
},
"state": {
"artifacts": ["security review report", "false-positive ledger"],
"update_rule": "Record the reviewed SHA, findings, false positives, and human decisions after each review target."
},
"budget": {
"max_retries": 2,
"max_runtime_minutes": 90
},
"escalation": {
"conditions": ["production credentials involved", "exploitability uncertain", "authentication or cryptography design questions", "compliance impact", "severity disagreement"],
"destination": "Private security triage channel, never a public issue"
},
"exit": {
"success": "High-confidence findings are reported with evidence, or no evidence-backed issues remain.",
"stop_without_success": "Validation retries are exhausted or the next step requires human approval."
}
}