mirror of https://github.com/garrytan/gstack.git
fix(autoplan): label single-voice review rows and banner single-voice mode
When Codex is unavailable, every /autoplan review phase degrades to a single Claude voice, but the Final Approval Gate still printed CONFIRMED for those consensus rows, which reads as "two independent reviewers agreed" when only one ran. Add a CONFIRMED-1V label (one voice ran, orchestrator concurs, not dual-confirmed) to all three phase legends, and a top-of-gate SINGLE-VOICE MODE banner shown only when a phase ran without Codex. Closes #1956.
This commit is contained in:
parent
c7ae63201a
commit
b703b00f0b
|
|
@ -1198,8 +1198,10 @@ CEO DUAL VOICES — CONSENSUS TABLE:
|
|||
5. Competitive/market risks covered? — — —
|
||||
6. 6-month trajectory sound? — — —
|
||||
═══════════════════════════════════════════════════════════════
|
||||
CONFIRMED = both agree. DISAGREE = models differ (→ taste decision).
|
||||
Missing voice = N/A (not CONFIRMED). Single critical finding from one voice = flagged regardless.
|
||||
CONFIRMED = both voices agree. CONFIRMED-1V = only one voice ran (other N/A); the
|
||||
orchestrator concurs with the sole reviewer, so the row is NOT dual-confirmed.
|
||||
DISAGREE = models differ (→ taste decision). A missing voice is N/A, never CONFIRMED.
|
||||
Single critical finding from one voice = flagged regardless.
|
||||
```
|
||||
|
||||
Sections 1-10 — for EACH section, run the evaluation criteria from the loaded skill file:
|
||||
|
|
@ -1388,8 +1390,10 @@ ENG DUAL VOICES — CONSENSUS TABLE:
|
|||
5. Error paths handled? — — —
|
||||
6. Deployment risk manageable? — — —
|
||||
═══════════════════════════════════════════════════════════════
|
||||
CONFIRMED = both agree. DISAGREE = models differ (→ taste decision).
|
||||
Missing voice = N/A (not CONFIRMED). Single critical finding from one voice = flagged regardless.
|
||||
CONFIRMED = both voices agree. CONFIRMED-1V = only one voice ran (other N/A); the
|
||||
orchestrator concurs with the sole reviewer, so the row is NOT dual-confirmed.
|
||||
DISAGREE = models differ (→ taste decision). A missing voice is N/A, never CONFIRMED.
|
||||
Single critical finding from one voice = flagged regardless.
|
||||
```
|
||||
|
||||
3. Section 1 (Architecture): Produce ASCII dependency graph showing new components
|
||||
|
|
@ -1511,8 +1515,10 @@ DX DUAL VOICES — CONSENSUS TABLE:
|
|||
5. Upgrade path safe? — — —
|
||||
6. Dev environment friction-free? — — —
|
||||
═══════════════════════════════════════════════════════════════
|
||||
CONFIRMED = both agree. DISAGREE = models differ (→ taste decision).
|
||||
Missing voice = N/A (not CONFIRMED). Single critical finding from one voice = flagged regardless.
|
||||
CONFIRMED = both voices agree. CONFIRMED-1V = only one voice ran (other N/A); the
|
||||
orchestrator concurs with the sole reviewer, so the row is NOT dual-confirmed.
|
||||
DISAGREE = models differ (→ taste decision). A missing voice is N/A, never CONFIRMED.
|
||||
Single critical finding from one voice = flagged regardless.
|
||||
```
|
||||
|
||||
3. Passes 1-8: Run each from loaded skill. Rate 0-10. Auto-decide each issue.
|
||||
|
|
@ -1692,6 +1698,14 @@ Present as a message, then use AskUserQuestion:
|
|||
```
|
||||
## /autoplan Review Complete
|
||||
|
||||
### Review Mode
|
||||
[If any review phase ran single-voice (Codex unavailable/degraded — see the
|
||||
degradation matrix), show this banner; otherwise omit the whole section:]
|
||||
⚠ SINGLE-VOICE MODE — Codex unavailable for [N] of [M] review phases. The
|
||||
consensus columns for those phases reflect one independent reviewer, not two;
|
||||
their confirmed rows read CONFIRMED-1V (orchestrator concurs with the sole
|
||||
reviewer), not CONFIRMED.
|
||||
|
||||
### Plan Summary
|
||||
[1-3 sentence summary]
|
||||
|
||||
|
|
@ -1742,6 +1756,7 @@ I recommend [X] — [principle]. But [Y] is also viable:
|
|||
```
|
||||
|
||||
**Cognitive load management:**
|
||||
- All review phases ran dual voices: skip the "Review Mode" banner. Any phase single-voice (Codex unavailable): show it, with N = phases that ran without Codex and M = total review phases.
|
||||
- 0 user challenges: skip "User Challenges" section
|
||||
- 0 taste decisions: skip "Your Choices" section
|
||||
- 1-7 taste decisions: flat list
|
||||
|
|
|
|||
|
|
@ -363,8 +363,10 @@ CEO DUAL VOICES — CONSENSUS TABLE:
|
|||
5. Competitive/market risks covered? — — —
|
||||
6. 6-month trajectory sound? — — —
|
||||
═══════════════════════════════════════════════════════════════
|
||||
CONFIRMED = both agree. DISAGREE = models differ (→ taste decision).
|
||||
Missing voice = N/A (not CONFIRMED). Single critical finding from one voice = flagged regardless.
|
||||
CONFIRMED = both voices agree. CONFIRMED-1V = only one voice ran (other N/A); the
|
||||
orchestrator concurs with the sole reviewer, so the row is NOT dual-confirmed.
|
||||
DISAGREE = models differ (→ taste decision). A missing voice is N/A, never CONFIRMED.
|
||||
Single critical finding from one voice = flagged regardless.
|
||||
```
|
||||
|
||||
Sections 1-10 — for EACH section, run the evaluation criteria from the loaded skill file:
|
||||
|
|
@ -553,8 +555,10 @@ ENG DUAL VOICES — CONSENSUS TABLE:
|
|||
5. Error paths handled? — — —
|
||||
6. Deployment risk manageable? — — —
|
||||
═══════════════════════════════════════════════════════════════
|
||||
CONFIRMED = both agree. DISAGREE = models differ (→ taste decision).
|
||||
Missing voice = N/A (not CONFIRMED). Single critical finding from one voice = flagged regardless.
|
||||
CONFIRMED = both voices agree. CONFIRMED-1V = only one voice ran (other N/A); the
|
||||
orchestrator concurs with the sole reviewer, so the row is NOT dual-confirmed.
|
||||
DISAGREE = models differ (→ taste decision). A missing voice is N/A, never CONFIRMED.
|
||||
Single critical finding from one voice = flagged regardless.
|
||||
```
|
||||
|
||||
3. Section 1 (Architecture): Produce ASCII dependency graph showing new components
|
||||
|
|
@ -676,8 +680,10 @@ DX DUAL VOICES — CONSENSUS TABLE:
|
|||
5. Upgrade path safe? — — —
|
||||
6. Dev environment friction-free? — — —
|
||||
═══════════════════════════════════════════════════════════════
|
||||
CONFIRMED = both agree. DISAGREE = models differ (→ taste decision).
|
||||
Missing voice = N/A (not CONFIRMED). Single critical finding from one voice = flagged regardless.
|
||||
CONFIRMED = both voices agree. CONFIRMED-1V = only one voice ran (other N/A); the
|
||||
orchestrator concurs with the sole reviewer, so the row is NOT dual-confirmed.
|
||||
DISAGREE = models differ (→ taste decision). A missing voice is N/A, never CONFIRMED.
|
||||
Single critical finding from one voice = flagged regardless.
|
||||
```
|
||||
|
||||
3. Passes 1-8: Run each from loaded skill. Rate 0-10. Auto-decide each issue.
|
||||
|
|
@ -784,6 +790,14 @@ Present as a message, then use AskUserQuestion:
|
|||
```
|
||||
## /autoplan Review Complete
|
||||
|
||||
### Review Mode
|
||||
[If any review phase ran single-voice (Codex unavailable/degraded — see the
|
||||
degradation matrix), show this banner; otherwise omit the whole section:]
|
||||
⚠ SINGLE-VOICE MODE — Codex unavailable for [N] of [M] review phases. The
|
||||
consensus columns for those phases reflect one independent reviewer, not two;
|
||||
their confirmed rows read CONFIRMED-1V (orchestrator concurs with the sole
|
||||
reviewer), not CONFIRMED.
|
||||
|
||||
### Plan Summary
|
||||
[1-3 sentence summary]
|
||||
|
||||
|
|
@ -834,6 +848,7 @@ I recommend [X] — [principle]. But [Y] is also viable:
|
|||
```
|
||||
|
||||
**Cognitive load management:**
|
||||
- All review phases ran dual voices: skip the "Review Mode" banner. Any phase single-voice (Codex unavailable): show it, with N = phases that ran without Codex and M = total review phases.
|
||||
- 0 user challenges: skip "User Challenges" section
|
||||
- 0 taste decisions: skip "Your Choices" section
|
||||
- 1-7 taste decisions: flat list
|
||||
|
|
|
|||
Loading…
Reference in New Issue