What happened
On PR #5641, the review bot's only HIGH finding across 14 review rounds was [protected-path] — a governance gate flagging that files under skills/ were modified and require human review. Two humans approved the PR (ascerra on Aug 3, waynesun09 on Aug 5), both explicitly reviewing the protected-path files. Despite this, the review bot continued filing CHANGES_REQUESTED — 11 times total, including 3 times after both human approvals existed. The bot's verdict also oscillated: DISMISSED at 06:57, CHANGES_REQUESTED at 12:09, DISMISSED at 17:40 on Aug 5, all with the same protected-path finding. The author's final triage comment explicitly noted: 'Process gate only, human reviews already APPROVED. No code change.'
What could go better
The protected-path finding's purpose is to ensure human review of sensitive paths. Once qualifying human approvals exist on those exact files, the governance requirement is satisfied — filing CHANGES_REQUESTED at that point adds friction without value. This is distinct from #5369 (which covers governance findings on bot PRs, not human-approved PRs) and from #1922 (which covers stale findings from unchanged code, not governance findings whose implied action is already completed). The bot's protected-path finding was technically correct every time — the files were modified — but its recommendation ('needs human review') was already fulfilled. Confidence is high that this caused unnecessary friction: the author spent time triaging a finding that was already resolved by the review state. Uncertainty: it's possible the review agent intentionally re-flags protected paths as an audit trail, in which case the fix is to change the verdict type (COMMENT not CHANGES_REQUESTED) rather than suppress the finding entirely.
Proposed change
In the review agent's verdict logic (likely in agents/review.md or policies/review.yaml in fullsend-ai/agents), add a check: when the only HIGH+ findings are governance-type gates (like protected-path) whose requirement is 'human review of protected files,' query the PR's review state for existing human APPROVED reviews. If qualifying approvals exist, downgrade the finding's impact on the verdict from CHANGES_REQUESTED to COMMENT/informational. The finding should still be surfaced (it's useful as an audit trail) but should not block the merge indicator. This could be implemented as a policy rule: if finding.category == 'governance' and pr.has_human_approvals(on_protected_paths=True): verdict_impact = 'comment'.
Validation criteria
On the next 5 PRs in fullsend-ai/fullsend that modify protected paths (e.g., skills/, harness/) and already have at least one human APPROVED review, the review bot should not file CHANGES_REQUESTED solely based on protected-path. The finding should still appear in the review summary as informational. Measure: zero CHANGES_REQUESTED reviews where the only HIGH finding is protected-path and human approvals exist.
Generated by retro agent from fullsend-ai/fullsend#5641
What happened
On PR #5641, the review bot's only HIGH finding across 14 review rounds was
[protected-path]— a governance gate flagging that files underskills/were modified and require human review. Two humans approved the PR (ascerra on Aug 3, waynesun09 on Aug 5), both explicitly reviewing the protected-path files. Despite this, the review bot continued filing CHANGES_REQUESTED — 11 times total, including 3 times after both human approvals existed. The bot's verdict also oscillated: DISMISSED at 06:57, CHANGES_REQUESTED at 12:09, DISMISSED at 17:40 on Aug 5, all with the sameprotected-pathfinding. The author's final triage comment explicitly noted: 'Process gate only, human reviews already APPROVED. No code change.'What could go better
The
protected-pathfinding's purpose is to ensure human review of sensitive paths. Once qualifying human approvals exist on those exact files, the governance requirement is satisfied — filing CHANGES_REQUESTED at that point adds friction without value. This is distinct from #5369 (which covers governance findings on bot PRs, not human-approved PRs) and from #1922 (which covers stale findings from unchanged code, not governance findings whose implied action is already completed). The bot'sprotected-pathfinding was technically correct every time — the files were modified — but its recommendation ('needs human review') was already fulfilled. Confidence is high that this caused unnecessary friction: the author spent time triaging a finding that was already resolved by the review state. Uncertainty: it's possible the review agent intentionally re-flags protected paths as an audit trail, in which case the fix is to change the verdict type (COMMENT not CHANGES_REQUESTED) rather than suppress the finding entirely.Proposed change
In the review agent's verdict logic (likely in
agents/review.mdorpolicies/review.yamlin fullsend-ai/agents), add a check: when the only HIGH+ findings are governance-type gates (likeprotected-path) whose requirement is 'human review of protected files,' query the PR's review state for existing human APPROVED reviews. If qualifying approvals exist, downgrade the finding's impact on the verdict from CHANGES_REQUESTED to COMMENT/informational. The finding should still be surfaced (it's useful as an audit trail) but should not block the merge indicator. This could be implemented as a policy rule:if finding.category == 'governance' and pr.has_human_approvals(on_protected_paths=True): verdict_impact = 'comment'.Validation criteria
On the next 5 PRs in fullsend-ai/fullsend that modify protected paths (e.g.,
skills/,harness/) and already have at least one human APPROVED review, the review bot should not file CHANGES_REQUESTED solely based onprotected-path. The finding should still appear in the review summary as informational. Measure: zero CHANGES_REQUESTED reviews where the only HIGH finding isprotected-pathand human approvals exist.Generated by retro agent from fullsend-ai/fullsend#5641