Plan parked: role-based runtime review gates for Mission Control
Parked campaign plan from Elmar Telegram review of `/Users/elmar/PKA/docs/hermes-worker-orchestration-playbook.md`. Decision direction: - Do NOT replicate all Hermes role profi...
StateDoneNext ActionClosedOwnerLuciRuntimeClosedAge18d ago
Ticket is done; runtime is closed.·profile codex · cwd /home/lucienne/workspace/mission-control · uptime 16d 20h · last activity 16d 15h ago
Description
MC-4207
Parked campaign plan from Elmar Telegram review of `/Users/elmar/PKA/docs/hermes-worker-orchestration-playbook.md`.
Decision direction:
- Do NOT replicate all Hermes role profiles from Lucienne/Mac onto Luci right now.
- Implement the same operating process inside Mission Control/Luci using role abstractions backed by runtime profiles, luci-persistent, scheduled tasks, and the MC controller.
- Treat `planner`, `designer`, `coder`, `qa`, `tester`, and `validator` as durable employee/role lanes. The role name is stable; the underlying runtime/model can change.
- Dashboard must show where each item is in the gate sequence so Elmar can follow coder -> QA -> tester -> designer signoff -> validation without asking Telegram for every state change.
Proposed acceptance criteria:
1. Role-to-runtime registry exists in MC: role, allowed runtime_profile(s), tools/capabilities, read/write permission, evidence expectations, fallback.
2. Ticket/campaign workflow supports required gates: plan, design direction, implementation, first validation, QA review, browser/user testing, designer screenshot signoff, final validation.
3. Dashboard/Workbench exposes the active gate, owning role/runtime, latest evidence packet, and next blocker/reviewer action.
4. Controller/scheduler can launch or supervise role lanes without creating separate Hermes profiles for every role on Luci.
5. Validation packet format is first-class: changed files, test commands/results, screenshots, QA/design/tester signoff, remaining risk, deploy/push/restart status.
6. Existing MC-4119 visual-redesign gates are preserved and become the reference process rather than a special case.
Park until current Home/MC-4119 recovery is stable; then launch as a dedicated campaign.
<!-- visual-policy:safety-v1 -->
Controller safety guardrail: no live deploy, luci-dashboard restart, direct copy into main/live tree, or production runtime mutation without explicit Elmar approval. Work in a feature branch/worktree; leave deploy/restart approval to the controller/Elmar.
Activity
done
INTERACTIVE
Luci is working...
Details —
Done
· Medium
· Luci
▼
SState
Done
Closed
PPeople
TTiming / Details▼
telegram (human)
Mission Control
18d ago
16d ago
Advanced / Operator evidence
RRouting owner
ROperator console
Ticket is done; runtime is closed.ticket_marked_doneprofile codex · cwd /home/lucienne/workspace/mission-control · uptime 16d 20h · last activity 16d 15h agoMC is visibility-only. Hermes Luci launches and gates work outside MC, then mirrors evidence/status here.Raw console: luci · codex/openai/gpt-5.5
Parked by controller after reviewing the Hermes Worker Orchestration Playbook. This should become a follow-up campaign once MC-4119/Home recovery is stable.
[failed_to_inject] runtime_busy: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message
Ticket picked up by Luci via MC dispatcher.
MC-4207: Plan parked: role-based runtime review gates for Mission Control
Work this ticket in the live tmux runtime. Use DONE:, REVIEW:, or QUESTION: when you need MC to reflect the next state.
luci17d ago
[failed_to_inject] runtime_busy: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message
Ticket picked up by Luci via MC dispatcher.
MC-4207: Plan parked: role-based runtime review gates for Mission Control
Work this ticket in the live tmux runtime. Use DONE:, REVIEW:, or QUESTION: when you need MC to reflect the next state.
luci17d ago
Worker died unexpectedly.
**Worker PID:** unknown
**OOM kill:** unknown
**Exit signal / dmesg:** unknown
**Last tool_use:** none
**tmux target:** mc-MC-4207
**Last pane output:**
```
[no pane output captured]
```
Reset to Todo to retry, or provide additional context.
luci17d ago
Luci picking up this ticket (background worker).
luci17d ago
Ticket picked up by Luci via MC dispatcher.
MC-4207: Plan parked: role-based runtime review gates for Mission Control
Work this ticket in the live tmux runtime. Use DONE:, REVIEW:, or QUESTION: when you need MC to reflect the next state.
luci17d ago
[failed_to_inject] runtime_busy: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message
Ticket picked up by Luci via MC dispatcher.
MC-4207: Plan parked: role-based runtime review gates for Mission Control
Work this ticket in the live tmux runtime. Use DONE:, REVIEW:, or QUESTION: when you need MC to reflect the next state.
luci17d ago
Ticket picked up by Luci via MC dispatcher.
MC-4207: Plan parked: role-based runtime review gates for Mission Control
Work this ticket in the live tmux runtime. Use DONE:, REVIEW:, or QUESTION: when you need MC to reflect the next state.
luci17d ago
Luci picking up this ticket (background worker).
luci17d ago
Ticket runtime send failed while dispatching.
root_cause: HTTP Error 409: CONFLICT
safe_retry: returned to `todo` for a fresh runtime retry.
human_input_required: no
system17d ago
RUNTIME TERMINAL STATE (MC-3482 contract)
status: warning
summary: Ticket runtime send failed; parked for automatic recovery.
root_cause: send failed while injecting into ticket runtime: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message was not sent.
safe_retry: Queued message was returned to pending and the ticket was returned to todo for a fresh runtime retry; no human input is needed.
stop_condition: After the configured retry limit, leave the ticket blocked for operator inspection instead of looping.
human_input_required: no
next_actions:
- Pickup will retry the pending message in a fresh runtime.
- Inspect runtime/send only if the retry fails again.
artifacts:
- ticket:MC-4207
system17d ago
RUNTIME TERMINAL STATE (MC-3482 contract)
status: error
summary: Ticket runtime send failed; parked for automatic recovery.
root_cause: send failed while injecting into ticket runtime: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message was not sent.
safe_retry: Retry limit reached; operator/human inspection is required before another automatic runtime dispatch.
stop_condition: After the configured retry limit, leave the ticket blocked for operator inspection instead of looping.
human_input_required: yes
next_actions:
- Pickup will retry the pending message in a fresh runtime.
- Inspect runtime/send only if the retry fails again.
artifacts:
- ticket:MC-4207
luci17d ago
Luci picking up this ticket (background worker).
luci17d ago
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
luci17d ago
[failed_to_inject] runtime_busy: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
luci17d ago
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
luci17d ago
Worker died unexpectedly.
**Worker PID:** unknown
**OOM kill:** unknown
**Exit signal / dmesg:** unknown
**Last tool_use:** none
**tmux target:** mc-MC-4207
**Last pane output:**
```
[no pane output captured]
```
Reset to Todo to retry, or provide additional context.
luci17d ago
Luci picking up this ticket (background worker).
luci17d ago
Ticket picked up by Luci via MC dispatcher.
MC-4207: Plan parked: role-based runtime review gates for Mission Control
Work this ticket in the live tmux runtime. Use DONE:, REVIEW:, or QUESTION: when you need MC to reflect the next state.
luci17d ago
[failed_to_inject] runtime_busy: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message
Ticket picked up by Luci via MC dispatcher.
MC-4207: Plan parked: role-based runtime review gates for Mission Control
Work this ticket in the live tmux runtime. Use DONE:, REVIEW:, or QUESTION: when you need MC to reflect the next state.
luci17d ago
[failed_to_inject] runtime_busy: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message
Ticket picked up by Luci via MC dispatcher.
MC-4207: Plan parked: role-based runtime review gates for Mission Control
Work this ticket in the live tmux runtime. Use DONE:, REVIEW:, or QUESTION: when you need MC to reflect the next state.
luci17d ago
Ticket runtime send failed while dispatching.
root_cause: HTTP Error 409: CONFLICT
safe_retry: returned to `todo` for a fresh runtime retry.
human_input_required: no
system17d ago
RUNTIME TERMINAL STATE (MC-3482 contract)
status: error
summary: Ticket runtime send failed; parked for automatic recovery.
root_cause: send failed while injecting into ticket runtime: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message was not sent.
safe_retry: Retry limit reached; operator/human inspection is required before another automatic runtime dispatch.
stop_condition: After the configured retry limit, leave the ticket blocked for operator inspection instead of looping.
human_input_required: yes
next_actions:
- Pickup will retry the pending message in a fresh runtime.
- Inspect runtime/send only if the retry fails again.
artifacts:
- ticket:MC-4207
luci17d ago
Luci picking up this ticket (background worker).
luci17d ago
[failed_to_inject] runtime_busy: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message
Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
luci17d ago
[failed_to_inject] runtime_busy: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message
Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
luci17d ago
Ticket runtime send failed while dispatching.
root_cause: HTTP Error 409: CONFLICT
safe_retry: returned to `todo` for a fresh runtime retry.
human_input_required: no
system17d ago
RUNTIME TERMINAL STATE (MC-3482 contract)
status: error
summary: Ticket runtime send failed; parked for automatic recovery.
root_cause: send failed while injecting into ticket runtime: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message was not sent.
safe_retry: Retry limit reached; operator/human inspection is required before another automatic runtime dispatch.
stop_condition: After the configured retry limit, leave the ticket blocked for operator inspection instead of looping.
human_input_required: yes
next_actions:
- Pickup will retry the pending message in a fresh runtime.
- Inspect runtime/send only if the retry fails again.
artifacts:
- ticket:MC-4207
luci17d ago
Luci picking up this ticket (background worker).
luci17d ago
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
luci17d ago
[failed_to_inject] runtime_busy: Ticket runtime is not ready for input (status=running). Wait for the current turn to finish, or explicitly interrupt/restart the runtime before sending more terminal input. This message
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
luci17d ago
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
[system]: Ticket moved to Todo: Plan parked: role-based runtime review gates for Mission Control
lucienne17d ago
This campaign is now broken into 5 actionable tickets: MC-4301 (activate QA reviewer), MC-4302 (wire review loop), MC-4303 (wire Tessa), MC-4304 (fix operator + dead-worker retry), MC-4305 (inbox cleanup). Those tickets have detailed specs and are assigned to luci. MC-4207 stays parked as the umbrella plan. Work the child tickets, not this one.
orchestrator-board-sweep17d ago
Auto-released by orchestrator board-sweep: MC-4207 was waiting on MC-4119, and every named blocker is now done/cancelled. Cleared pending_state/failure_reason and returned the ticket to Todo.
Luci17d ago
MC-4207 triage: this is a parked umbrella, not active implementation. Concrete work is now in child tickets: MC-4301 done, MC-4304 done, MC-4305 done, MC-4302 todo/next active, MC-4303 needs_input pending MC-4302/controller decision. No code changes made in this session.
Luci17d ago
MC-4207 should remain parked/superseded by child tickets; no implementation done here. Run MC-4302 next and resolve MC-4303 after its dependency/controller call.
api17d ago
Closed (orchestrator) — parent plan ticket, superseded by children (MC-4301 done, MC-4302 blocked, MC-4303 needs_input lucienne, MC-4304 done, MC-4305 done). No direct implementation needed on this parent.
luci-controller17d ago
[controller clarification] MC-4207 is not active work and not blocking MC-4119. It is a future/optional plan for role-based runtime review gates, parked until the visual campaign is stable/closed and explicitly prioritized.
luci-operator17d ago
Luci Operator released this waiting ticket because blocker MC-4119 is done; returning it to `todo`.
luci-controller17d ago
[controller review] Reviewed /home/lucienne/workspace/PKA/docs/mc-control-plane.md against codebase. Verdict: broadly right, but needs corrections before it is treated as canonical: (1) file lives in PKA/docs, not mission-control/docs; (2) drain no longer marks rows processed on delivery, it distinguishes delivered vs processed, but DB currently has a large delivered backlog; (3) shadow reviewer is watch-only and not yet fed into digest; (4) shadow calibration can become stale/wrong — MC-4203 row says reviewer=fail but human_decision=done after controller later rejected/returned it; (5) task file no longer sets MC_ORCH_SHADOW_REVIEW, so activation source must be documented/verified. Also repo has active dirty WIP in luci_operator.py/tests; do not edit/land doc until current MC-4207/4286 worktree is cleaned.
luci-operator17d ago
Luci Operator corrected this ticket: `blocked` carried a runtime/worker failure with no unanswered worker `QUESTION:`, so it is back in `todo` for Luci/Larry/Tessa to handle.
luci-operator17d ago
Luci Operator corrected this ticket: `blocked` carried a runtime/worker failure with no unanswered worker `QUESTION:`, so it is back in `todo` for Luci/Larry/Tessa to handle.
luci-operator17d ago
Luci Operator corrected this ticket: `blocked` carried a runtime/worker failure with no unanswered worker `QUESTION:`, so it is back in `todo` for Luci/Larry/Tessa to handle.