Canonical Diagrams
Visual representations of SMALL state flow and artifact relationships.
The Continuity Loop
Intent and Constraints define the boundary. Plan defines intended work. Progress records evidenced work. Handoff summarizes the current state for resume.
flowchart TD
subgraph Human["Human-Owned"]
Intent["intent.small.yml"]
Constraints["constraints.small.yml"]
end
subgraph Agent["Agent-Owned"]
Plan["plan.small.yml"]
Progress["progress.small.yml"]
Handoff["handoff.small.yml"]
end
Intent --> Plan
Constraints --> Plan
Plan --> Progress
Progress --> Handoff
Handoff --> PlanThe loop is closed: handoff enables any agent to resume from a known state.
Handoff-Driven Resume
A new agent starts from handoff.small.yml, not chat history. This ensures continuity without context loss.
sequenceDiagram participant Human participant Agent1 as Agent A participant Handoff as handoff.small.yml participant Agent2 as Agent B Human->>Agent1: Assign task Agent1->>Agent1: Read intent + constraints Agent1->>Agent1: Execute plan Agent1->>Handoff: Generate handoff Note over Handoff: Deterministic resume point Human->>Agent2: Resume work Agent2->>Handoff: Read handoff Agent2->>Agent2: Continue from known state Agent2->>Handoff: Update handoff
Artifact Ownership
SMALL defines clear ownership boundaries between human and agent artifacts.
flowchart LR
subgraph HumanOwned["Human-Owned (Read-Only for Agents)"]
Intent["Intent"]
Constraints["Constraints"]
end
subgraph AgentOwned["Agent-Owned (Append-Only)"]
Plan["Plan"]
Progress["Progress"]
Handoff["Handoff"]
end
Intent -->|"informs"| Plan
Constraints -->|"bounds"| Plan
Plan -->|"executed as"| Progress
Progress -->|"summarized in"| HandoffAgents may not modify intent or constraints without explicit human instruction.
Validation Flow
All SMALL artifacts are validated against schemas before acceptance.
flowchart LR Input["Artifact Input"] Schema["JSON Schema"] Validator["Validator"] Valid["Valid Artifact"] Invalid["Rejected + Error"] Input --> Validator Schema --> Validator Validator -->|"passes"| Valid Validator -->|"fails"| Invalid
Validation is non-optional. Invalid artifacts are rejected.
Why These Diagrams Matter
Most "agent memory" is unstructured chat history. SMALL makes execution state:
- Inspectable - Every artifact is readable and versioned
- Validated - Schemas enforce correct structure
- Portable - Any agent can resume from handoff
- Auditable - Progress is append-only evidence
For detailed primitive specifications, see Primitive Specification v1.
For the execution model diagrams, see Execution Model.