fix(loop): repair review-diff/verdict-parsing bugs, deduplicate session lookups
Applies the P0-P3 fixes from the multi-agent-mux-loop audit (.mam/jobs/ab686e47/claude-reports/report-final.md): - P0-1: capture BASE_COMMIT before Phase 2 and diff against it, so reviewer diffs stay non-empty and cumulative even after the Creator commits per the documented DoD (bare `git diff` alone showed nothing once committed). - P0-2: has_verdict now matches only the report's last non-blank line, so a stray [VERDICT: ...] token quoted mid-report as a formatting example can no longer flip the outcome. - P1-1: replace the English-only refactor/complex/design/architect keyword sniff (dead code against Korean-language reviewer reports) with an explicit [ESCALATE: PLANNER] tag the reviewer prompt now asks for. - P1-2: resolve_all_reviewers/resolve_agent_type/resolve_planner_session now read through lib.sh's load_state_json single source of truth instead of each hand-rolling its own SQLite+YAML lookup; resolve_agent_type's name fallback matches exact hyphen segments instead of a substring `in` check. - P2-1: warn when --all-reviewer and --reviewer are both given, since the latter is silently discarded. - P2-2: correct the SKILL.md CLI-mapping table row that overstated an automated lint gate and an unconditional Planner feedback loop. - P3: fix lib.sh shellcheck SC2164 (unguarded cd in start_watchdog) and annotate the intentional SC2317 dual source/exec guard. Verified: shellcheck clean on both scripts, bash -n syntax OK, and the rewritten has_verdict/resolve_* functions were unit-tested against this repo's live .mam/agent-sessions state. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -143,7 +143,7 @@ sequenceDiagram
|
||||
| **Phase 2: Execution** | (기본값) | `--target-agent`로 명시한 주 작업 세션에 코딩 태스크를 주입합니다. |
|
||||
| **Phase 3: Review** | `--reviewer "A,B"` | 지정된 리뷰어 세션 리스트(`A`, `B` 등)에 교차 Peer Review를 위임합니다. |
|
||||
| **Phase 3: Consensus** | `--all-reviewer` | 레지스트리에 등록된 모든 active 리뷰어 세션을 자동으로 수집하여 리뷰를 돌립니다. (지정/수집된 모든 리뷰어의 PASS 만장일치가 항상 필요합니다.) |
|
||||
| **Iterative Loop** | `--max-loop M` | NOT PASS 또는 린트 실패 시 최대 `M`회까지 Planner와 Creator 간 피드백 루프를 반복합니다. |
|
||||
| **Iterative Loop** | `--max-loop M` | NOT PASS 판정 시 최대 `M`회까지 Creator가 자체 수정합니다. `--plan` 모드에서 리뷰어가 리포트에 `[ESCALATE: PLANNER]` 태그를 남기면 설계 변경 수준으로 판단하여 Planner에게 계획 갱신을 위임합니다 (린트는 리뷰어가 검토 관점 중 하나로 확인할 뿐, 별도의 자동 게이트는 아닙니다). |
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user