docs(plan): reviewer gate UX fixes implementation plan; align spec Part 4 to ctx.ui.notify

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-02 17:16:57 +02:00
co-authored by Claude Opus 4.8
parent 91a6806617
commit daceda3555
2 changed files with 578 additions and 3 deletions
@@ -150,9 +150,9 @@ branch returns the actionable "Altro (reviewer): …" string, distinct from the
model already calls `reviewer_decide(allow_empty:true, advance:true)` in Phase 2 with zero
merito options when memory is empty. In the handler (`tht-gate.js:508-546`), before emitting
the widget: if the merito option list is empty AND `allow_empty` AND `advance`, do NOT emit the
multiselect — emit an `info` widget (`buildInfoRequest`, `builders.js:130-145`) with
"Nessuna memory riutilizzabile per questa domanda — passo alla fase successiva." and call
`advanceIfReady`. Return a textResult reporting the auto-advance. This keeps the harness as the
multiselect — show the reviewer an info notice via `ctx.ui.notify("Nessuna memory
riutilizzabile per questa domanda — passo alla fase successiva.", "info")` (bridged to the
client `{type:"info"}` event by `session-bridge.ts:26-27`) and call `advanceIfReady`. Return a textResult reporting the auto-advance. This keeps the harness as the
advancer (respects the anti-bypass hook), reuses `advanceIfReady` (which only advances an
auto-eligible phase — F2/F6 with zero substantive decisions), needs no new tool, and leaves the
model's Phase-2 call unchanged.