name: review-decisions
description: Canonical decision policy for turning review findings into review_backlog.json decisions (fix_now, verify_first, defer, drop, needs_human_decision) with deterministic metadata and loop-cap behavior.
Review Decisions
Shared policy for Arbiter and PR shepherd style decision-making after review findings are normalized.
When To Use
Use this skill when:
- Converting canonical review findings into backlog decisions
- Enforcing allowed decision taxonomy
- Applying loop-cap policy (governed by
gates.max_fix_iterationsin allowlist) - Appending deferred findings to
.quest/backlog/deferred_findings.jsonl
Canonical Decision Set
Allowed decision values:
fix_nowverify_firstdeferdropneeds_human_decision
Each backlog item must include:
decision_confidencereasonneeds_validationownerbatch
Baseline Rules
- Use
fix_nowfor high-severity, high-confidence findings with clear evidence. - Use
verify_firstwhen confidence/evidence is weaker or reproduction is needed. - Use
deferwhen scope/priority does not justify immediate work. - Use
dropfor low-value/noise findings after explicit evaluation. - Use
needs_human_decisionwhen risk/tradeoff needs explicit human call.
Loop-Cap Rules
- Max fix iterations are governed by
gates.max_fix_iterationsin the allowlist (default 3). - Solo mode uses
min(solo.max_fix_iterations, gates.max_fix_iterations). - At cap, unresolved findings must be converted to:
defer(with accepted-debt rationale), orneeds_human_decision
- Do not silently continue looping after cap.
Deferred Backlog Requirements
When a finding is deferred, append one JSON object per line to:
.quest/backlog/deferred_findings.jsonl
Required lineage fields per deferred record:
deferred_by_questdeferred_at(ISO8601 UTC)defer_reasonproposed_followup
Batching And Ownership
ownershould identify who can resolve the finding (usually by touched area).batchshould group related files/findings to keep implementation slices focused.- Prefer deterministic grouping by canonical write scope path.