# iEvo Pipeline Context

> Auto-generated by `ievo init`. Auto-updated when CLI version changes.
> Do not edit manually — changes will be overwritten.

## Directory Structure

```
.ievo/
├── version           # CLI version that last updated this project
├── IEVO.md           # This file — pipeline context overlay
├── config.yaml       # Project settings
├── backlog/          # Raw ideas (IDEA-xxx) and research proposals (PROP-xxx)
├── spec/             # Requirements (REQ-xxx), questions (Q-xxx), changes (CR-xxx)
│   ├── SPEC_INDEX.md # Registry of all specs + statuses
│   ├── PRIORITY.md   # Selection algorithm
│   ├── requirements/ # REQ-NNN-<slug>.md
│   ├── questions/    # Q-NNN-<slug>.md, Q-NNN-arch.md (escalations)
│   └── changes/      # CR-NNN-<slug>.md
├── plans/            # Implementation plans (PLAN-REQ-xxx)
├── reports/          # Verification results
│   ├── acceptance/   # ACC-REQ-xxx.md, ACC-REQ-xxx-rN.md (revisions)
│   └── defrag/       # DEFRAG-YYYY-MM-DD.md
└── memory/           # Shared project memory
    ├── CONTEXT.md    # Project state, entities, architecture
    ├── DECISIONS.md  # Append-only decision log
    ├── VOCABULARY.md # Domain terms and definitions
    ├── HISTORY.md    # Session index with statuses
    └── sessions/     # Per-session plan + log
        └── NNN/
            ├── plan.md
            └── log.md
```

## Document Lifecycle

```
Idea → backlog/IDEA-xxx.md
  ↓ (Sprint planning — human selects)
Spec Writer → spec/requirements/REQ-xxx.md
  ↓ (ambiguity?)
  → spec/questions/Q-xxx.md (blocks REQ until resolved)
  ↓
Architect → plans/PLAN-REQ-xxx.md
  ↓ (plan broken?)
Coder → spec/questions/Q-xxx-arch.md (escalation to Architect)
  ↓
Coder → src/ + tests/
  ↓
Acceptance → reports/acceptance/ACC-REQ-xxx.md
  ↓ FAIL → Coder fixes → ACC-REQ-xxx-r2.md (revision)
  ↓ PASS → status = implemented
  ↓
Docs → docs/, README.md, CLAUDE.md
```

## Requirement Statuses

```
draft → ready → in-progress → implemented | blocked | removed
```

- `draft` — has ambiguities, not ready for implementation
- `ready` — fully specified, agent can pick it up
- `blocked` — agent found ambiguities, questions filed
- `in-progress` — agent is currently implementing
- `implemented` — all acceptance criteria met, all tests passing
- `removed` — deleted via Change Request

## Naming Conventions

| Type | Pattern | Location |
|------|---------|----------|
| Requirement | `REQ-NNN-<slug>.md` | `.ievo/spec/requirements/` |
| Question | `Q-NNN-<slug>.md` | `.ievo/spec/questions/` |
| Escalation | `Q-NNN-arch.md` | `.ievo/spec/questions/` |
| Change Request | `CR-NNN-<slug>.md` | `.ievo/spec/changes/` |
| Plan | `PLAN-REQ-NNN.md` | `.ievo/plans/` |
| Acceptance Report | `ACC-REQ-NNN.md` | `.ievo/reports/acceptance/` |
| Revision | `ACC-REQ-NNN-rN.md` | `.ievo/reports/acceptance/` |
| Defrag Report | `DEFRAG-YYYY-MM-DD.md` | `.ievo/reports/defrag/` |
| Idea | `IDEA-NNN-<slug>.md` | `.ievo/backlog/` |
| Proposal | `PROP-NNN-<slug>.md` | `.ievo/backlog/` |

## Pipeline Rules

- **15-minute rule**: Architect decomposes every task to ≤15 minutes of agent work
- **Sprint = agreed REQs**: human approves what enters sprint. Scope is frozen once agreed
- **Backlog = pre-spec**: raw ideas and proposals, not yet refined into requirements
- **Acceptance loop**: FAIL → Coder fixes → Acceptance re-verifies. No shortcuts
- **Coder escalation**: plan broken → `Q-xxx-arch.md` → Architect revises plan
- **EVO gates**: EVO agent observes every pipeline transition (post-spec, post-plan, post-implementation, post-acceptance)
- **Atomic REQs**: each requirement has 3-7 testable acceptance criteria
- **Priority scoring**: see `PRIORITY.md` for formula. Agents auto-select highest-value task

## Agent Pipeline

```
Backlog → Spec Writer → [EVO] → Sprint → Architect → [EVO] → Coder → [EVO] → Acceptance → [EVO] → Docs → Done
```

Agents read this file for directory structure and conventions. Agent-specific instructions are in each agent's `ROLE.md`.
