From fedbf64d82ecd0a4f0cf04c68f0f1fcdff1c2e71 Mon Sep 17 00:00:00 2001 From: Trevin Chow Date: Fri, 17 Apr 2026 21:41:53 -0700 Subject: [PATCH] feat(ce-review): add recommended-action tie-breaking to Stage 5 merge MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When contributing reviewers imply different per-finding actions for the same merged finding (e.g., correctness says Apply via suggested_fix, testing says Skip via low confidence), synthesis now picks the most conservative action using Skip > Defer > Apply > Acknowledge. This makes the walk-through's recommended action stable across re-runs and makes LFG results auditable after the fact. The user can still override per finding — the rule only determines what gets labeled "recommended." Part of the Interactive judgment-loop redesign (Unit 1 of 8). --- plugins/compound-engineering/skills/ce-review/SKILL.md | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/compound-engineering/skills/ce-review/SKILL.md b/plugins/compound-engineering/skills/ce-review/SKILL.md index 807b88a0..2b868a6f 100644 --- a/plugins/compound-engineering/skills/ce-review/SKILL.md +++ b/plugins/compound-engineering/skills/ce-review/SKILL.md @@ -469,6 +469,7 @@ Convert multiple reviewer compact JSON returns into one deduplicated, confidence 5. **Separate pre-existing.** Pull out findings with `pre_existing: true` into a separate list. 6. **Resolve disagreements.** When reviewers flag the same code region but disagree on severity, autofix_class, or owner, annotate the Reviewer column with the disagreement (e.g., "security (P0), correctness (P1) -- kept P0"). This transparency helps the user understand why a finding was routed the way it was. 7. **Normalize routing.** For each merged finding, set the final `autofix_class`, `owner`, and `requires_verification`. If reviewers disagree, keep the most conservative route. Synthesis may narrow a finding from `safe_auto` to `gated_auto` or `manual`, but must not widen it without new evidence. +7b. **Tie-break the recommended action.** Interactive mode's walk-through and LFG paths present a per-finding recommended action (Apply / Defer / Skip / Acknowledge) derived from the normalized `autofix_class` and `suggested_fix`. When contributing reviewers implied different actions for the same merged finding, synthesis picks the most conservative using the order `Skip > Defer > Apply > Acknowledge`. This guarantees that identical review artifacts produce the same recommendation deterministically, so LFG results are auditable after the fact and the walk-through's recommendation is stable across re-runs. The user may still override per finding via the walk-through's options; this rule only determines what gets labeled "recommended." 8. **Partition the work.** Build three sets: - in-skill fixer queue: only `safe_auto -> review-fixer` - residual actionable queue: unresolved `gated_auto` or `manual` findings whose owner is `downstream-resolver`