Skip to main content
Features have only four states: not_started, in_progress, blocked, and passing. Prefer lifecycle commands for updates instead of editing states and claims directly.

Create

See the new-feature options → The input file must be inside the repository and cannot preset a claim, evidence, workspace, or completed state. Before creation, the command validates the ID, milestone, dependencies, verification, and source references. A failure does not modify the state file.

Start

See the feature start options → Before starting, the command checks that the feature is ready based on its status and dependencies, then checks the owner WIP limit. On success, it atomically creates the claim and lease and transitions the feature to in_progress; it does not require a claim in advance.

Verify and review

Options: Run automated verification · Record a review verify executes automated verifications; use evidence manual for manual verifications. The review must pass, occur after the latest verification, and be recorded by a reviewer other than the claim owner.

Complete

See the feature complete options → The command requires a valid claim, passing dependencies, passing results for every verification at the current commit, and a later independent review. Only then does it atomically transition the feature to passing.

Block and reopen

Options: Block a feature · Reopen a feature block writes a blocker, releases the claim, and transitions the feature to blocked. reopen clears the blocker and returns it to not_started, after which it must be started again.

Release

See the release options → Use release to abandon work that is still in progress. It clears the claim and returns in_progress to not_started. It is not a feature-completion step.