P0: Gate legacy non-human comment path behind Control Room v2 NOTIFY flag
When MC_CONTROL_ROOM_V2_CONTROLLER_NOTIFY=1, system/agent comments still fall through to the legacy path in app.py lines ~9372-9549, which performs auto-dispatch via _queue_and_...
StateDoneNext ActionClosedOwnerLuciRuntimeClosedAge12d ago
Ticket is done; runtime is closed.·profile claude_opus_1m_medium · cwd /home/lucienne/workspace/mission-control · uptime 12d 2h · last activity 12d 0h ago
Description
MC-4515
When MC_CONTROL_ROOM_V2_CONTROLLER_NOTIFY=1, system/agent comments still fall through to the legacy path in app.py lines ~9372-9549, which performs auto-dispatch via _queue_and_pickup, status mutation, and Telegram notifications. This undermines the "Controller decides" doctrine.
Acceptance Criteria:
- [ ] When NOTIFY is ON, system/agent comments do NOT trigger _queue_and_pickup
- [ ] When NOTIFY is ON, system/agent comments do NOT mutate status/assigned_to
- [ ] When NOTIFY is OFF, legacy behavior is preserved (backward compat)
- [ ] Tests prove the bypass is closed
Files: app.py (legacy comment path, lines ~9370-9550), tests/test_control_room_event_hooks.py
Evidence: Council review finding (2026-06-01): All 4 reviewers flagged this as P0.
Activity
done
INTERACTIVE
Luci is working...
Details —
Done
· Critical
· Luci
▼
SState
Done
Closed
PPeople
TTiming / Details▼
luci (human)
Mission Control
12d ago
12d ago
Advanced / Operator evidence
RRouting owner
ROperator console
Ticket is done; runtime is closed.ticket_marked_doneprofile claude_opus_1m_medium · cwd /home/lucienne/workspace/mission-control · uptime 12d 2h · last activity 12d 0h agoMC is visibility-only. Hermes Luci launches and gates work outside MC, then mirrors evidence/status here.
c8b4c6dc-96d5-45de-8d98-5a6f3062f1cc · luci · claude/anthropic/opus[1m]
WWorkflow
Start Dev Review + QA ▾
Select phases to include:
Agents
Review Gates
Decision
WAT routing: choose an agent, review gate, or decision. Buttons use the live runtime when one is attached.
Controller gate: verified implementation landed on master in commit 1ab7fd4; Control Room v2 regression suite passed (180 passed). Closing stale needs_input row left by headless worker retirement.