Core Concepts
Understand the repository objects that connect intent, isolated work, immutable state, evidence, and closeout.
Audience: Developers and integrators
Repository and Line#
A Repository is the local AIT authority for one working directory. A Line is a named, movable pointer to an admitted Snapshot. main is the normal initial Line; a Task receives its own feature Line and bound workspace.
Plan item#
A Plan records versioned Markdown lineage. In sprint mode, one stable [plan-ref: ...] identifies the document and one unchecked checklist item with an exact [ref: ...] is the taskable unit.
# Password Visibility [plan-ref: login/password-visibility/root]
- [ ] Add the accessible control and focused tests. [ref: login/password-visibility/implement]The item states the outcome. It is not an instruction to execute several unrelated changes.
Task, Change, and workspace#
A Task is the bounded work unit tied to the Plan intent. A Change is its reviewable change lineage. The Task-bound workspace separates implementation from the target Line until the result is admitted.
The command that starts the Task prints the exact workspace path. The agent must edit there, not in the canonical repository root.
Snapshot#
A Snapshot is immutable repository state with authorship and parent history. It records the completed code state; it does not include an unrelated Markdown Plan edit merely to hide documentation lineage inside code history.
Patchset and evidence#
In a remote-backed workflow, a Patchset is the selected review candidate for one Change. CI, attestation, review, and policy evidence attach to that candidate before final closeout.
Local-only work does not require remote infrastructure. Its configured admission policy still determines what must be verified before completion.
Closeout#
Closeout advances the configured target Line, completes the Task, cleans the bound workspace, and applies the repository's sprint-checklist policy. Remote work may require the final Markdown checkbox update and Plan sync as a separate step after code closeout.