Skip to content

Walkthrough

This page follows one issue through Legion, step by step, and each step names what you see. The screenshots and the narrated video show example data: a Storefront project in Dispatch. The two terminal recordings in the operator’s view show an example daemon: legion status, legion state and legion claims list, then the controller starting and registering with it.

The issue has a title that states the outcome and a spec with acceptance criteria. You add the legion label from the issue header and set the status to todo.

An issue handed to Legion: the label picker open on its header with legion selected, and the status Todo.

With a slot free, the daemon admits the issue: the status becomes in_progress, and moments later the architect claims it, so the issue shows it as claimed by Legion’s session.

The issue after admission: status In progress, claimed by the issue’s architect, with the claim in its Conversation.

The architect grows the spec into a design and writes each open question as a decision block, which reaches the assignee’s Inbox. Once every block is answered, it asks for approval with a summary.

The spec’s design with an open decision block: the architect’s question, its recommendation, and two options to answer.

The architect’s request to approve the spec in the Inbox, with its summary and the Approve and Request changes options.

After approval the daemon starts the planner, then the implementer, which opens the pull request, then the tester and the reviewer. The issue’s status follows: in_progress, testing, needs_review, then retro once the reviewer approves.

The issue after the phases ran: Retro in its header beside the pull request link, #42, and its activity newest first: three updates from the Legion daemon’s session, one from the implementer, and alice’s approval of the spec.

The pull request’s body follows Legion’s template: the outcome, why, the change, how it was proven, what is not proven, and later the production check. Legion’s reviewer approves it as the review App. In Dispatch, the issue’s header links the pull request.

The issue header with the pull request Legion opened, linked as #42.

The merger sends READY; the daemon checks the head against the approved one and the required checks, posts it on the Dispatch issue, and submits its merge, which lands under the repository’s rules.

The READY message on the issue: the pull request, its head and the approved commit, then the outcome and the risk.

After the merge the implementer checks the change in production and records it on the pull request and the issue. The architect signs off with a comment summarizing the evidence, and the issue moves to done.

The issue closed as Done, with the implementer’s production record and the architect’s sign-off.

An operator’s terminal on an example daemon: legion status, legion state and legion claims list read it, with one issue’s architect running; then legion controller start starts the project’s controller, which registers with that same daemon. Last, the controller’s daily report in Dispatch.

The project’s Legion daily report issue, parked in Icebox, with the controller’s report for the day: the issue Legion finished and its pull request, nothing running, and the free slots.