138 lines
3.9 KiB
Markdown
138 lines
3.9 KiB
Markdown
# Execution Board Template
|
||
|
||
> **The execution board is the contract for a stream.**
|
||
> Copy this file into `.harness/<stream-name>/execution-board.md`.
|
||
> **The entire board must be written BEFORE any code is committed.**
|
||
> Plan-then-implement is non-negotiable.
|
||
|
||
---
|
||
|
||
# Execution Board — [STREAM NAME]
|
||
**Feature:** [One-line description of what this stream builds]
|
||
**Created:** YYYY-MM-DD
|
||
**Branch:** `feat/<stream-name>`
|
||
**IMPLEMENTATION_PLAN tasks:** [e.g., 5–8]
|
||
**Status:** 🔴 Not started | 🟡 Planning | 🟠 In progress | ✅ Complete
|
||
**Design reference:** [path to design doc, or N/A]
|
||
|
||
---
|
||
|
||
## 🎯 Goal
|
||
|
||
[2–4 sentences. What does this stream accomplish? What user-facing outcome does it produce?
|
||
How does it fit the larger product vision?]
|
||
|
||
---
|
||
|
||
## ⚠️ Dependencies
|
||
|
||
[Other streams or tasks that must be complete before this one can start.
|
||
If none: "None — can start immediately."]
|
||
|
||
---
|
||
|
||
## 📦 Packets
|
||
|
||
<!--
|
||
PLANNING RULES — must be followed before implementation of ANY packet begins:
|
||
|
||
1. Packet size: ~1-2 hours of agent work. Split larger packets.
|
||
2. Each packet must define: Goal, Steps, Files, Known-answer tests, Acceptance criteria.
|
||
3. Known-answer tests are MANDATORY for any domain-specific calculation
|
||
(financial math, scientific formulas, regulatory thresholds, etc.)
|
||
4. Acceptance criteria must be programmatically verifiable — not "looks good."
|
||
5. Write ALL packets in this board before coding any of them.
|
||
6. Dependency order must be explicit.
|
||
-->
|
||
|
||
### Packet [XX-01] — [Name]
|
||
**IMPLEMENTATION_PLAN task:** [N]
|
||
**Status:** ⬜ Not started | 🔄 In progress | ✅ Done
|
||
**Est. effort:** [N sessions]
|
||
**Depends on:** [XX-00 or "none"]
|
||
|
||
**Goal:** [One sentence]
|
||
|
||
**Steps:**
|
||
1. [Concrete step]
|
||
2. [...]
|
||
|
||
**Files created/modified:**
|
||
- `src/...` — [description]
|
||
- `src/.../__tests__/...` — [test file]
|
||
|
||
**Known-answer tests (mandatory for calculation modules):**
|
||
```
|
||
test('[what is being verified]', () => {
|
||
// Source: [official reference — URL, standard, specification]
|
||
expect(fn(input)).toBeCloseTo(expected, precision);
|
||
});
|
||
```
|
||
|
||
**Acceptance criteria:**
|
||
- [ ] [Programmatically verifiable criterion]
|
||
- [ ] Known-answer test passes
|
||
- [ ] Full test suite green (count ≥ baseline)
|
||
- [ ] TypeScript: clean (`npx tsc --noEmit` outputs nothing)
|
||
- [ ] **Documentation updated** (if user-facing): user guide, feature overview, or design doc reflects this change
|
||
|
||
**Validation evidence:** `.harness/<stream>/validation/<xx-01>-validation.md`
|
||
|
||
---
|
||
|
||
### Packet [XX-02] — [Name]
|
||
[Repeat above structure for each packet]
|
||
|
||
---
|
||
|
||
## 🔢 Dependency Order
|
||
|
||
```
|
||
[XX-01] → [XX-02] → [XX-04 (UI/integration)]
|
||
[XX-01] → [XX-03] → [XX-04 (UI/integration)]
|
||
```
|
||
|
||
[Which packets can run in parallel? Which must be sequential?]
|
||
|
||
---
|
||
|
||
## 🏁 Stream Completion Criteria
|
||
|
||
- [ ] All packets complete with validation evidence written
|
||
- [ ] All known-answer tests pass (list them here explicitly)
|
||
- [ ] Full test suite green
|
||
- [ ] TypeScript: clean
|
||
- [ ] Regression baseline saved: `.harness/regression-baselines/<stream>-baseline.json`
|
||
- [ ] Branch merged to main via `--no-ff` merge commit
|
||
- [ ] Process eval written: `.harness/<stream>/process-eval.md`
|
||
- [ ] IMPLEMENTATION_PLAN tasks marked `[x]`
|
||
- [ ] EXECUTION_MASTER.md (or project equivalent) updated
|
||
- [ ] **Documentation updated**: any user-facing feature changes are reflected in the relevant user guide, features overview, database schema doc, or design doc (whichever applies)
|
||
|
||
---
|
||
|
||
## 📋 Mandatory Commit Trailer Format
|
||
|
||
Every implementation commit in this stream:
|
||
|
||
```
|
||
feat(<stream-name>): <XX-NN> — <description>
|
||
|
||
Agent: <model-name>
|
||
Tests: <before> → <after>
|
||
Tests-Added: <N>
|
||
TypeScript: clean
|
||
```
|
||
|
||
---
|
||
|
||
## 🔍 Pre-Coding Checklist
|
||
|
||
Before writing any implementation code:
|
||
|
||
- [ ] This execution board is fully written (all packets defined)
|
||
- [ ] Branch created from latest main
|
||
- [ ] Baseline test count verified
|
||
- [ ] No open schema migrations from other active streams (if relevant)
|
||
- [ ] Design reference doc has been read
|