pub fn cmd_ticket_queue(
repo: &Path,
slug: &str,
explicit_mission: Option<&str>,
force: bool,
) -> Result<i32>Expand description
kranz ticket queue <slug> [--mission <id>]: enqueue the parked (Review)
mission for the ticket and set the ticket Queued.
draft (no --yes) leaves the ticket in Review with a committed plan.md on
a mission branch but nothing in the queue. Queueing picks that mission:
the explicit --mission if given, else the newest mission on the repo
whose recorded goal equals the ticket’s folded Ticket::mission_goal
(that is exactly what draft seeded it with).
The gate (cycle detection, unsatisfied-blocker refusal) and the enqueue
side effects live in deps::approve_ticket — the same core the REST
POST /api/tickets/:slug/approve handler calls, so the two surfaces can
never drift on what “approvable” means.
Ticket-queueing is verb “Queue” (see docs/scoping/pipeline-view.md decision D-A); “Approve” is reserved for plan approval.