-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDESIGN.md.template
More file actions
79 lines (49 loc) · 2.11 KB
/
Copy pathDESIGN.md.template
File metadata and controls
79 lines (49 loc) · 2.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# {{PROJECT_NAME}} — Design & Decision Record
> Status: working document. When ratified, the loop treats this as **frozen ground truth**.
> Pairs with [`MANIFESTO.md`](../MANIFESTO.md): manifesto = public intent; this = engineering record.
## 1. What this project is
{{2–3 paragraphs: problem, audience, success shape}}
## 2. The wedge
> **We compete with {{X}}, not with {{Y}}.**
{{Why this framing — competitive landscape in one paragraph}}
## 3. Locked decisions
| Decision | Lock |
|----------|------|
| Product scope | {{e.g. library / service / CLI}} |
| Primary language | {{e.g. TypeScript}} |
| Distribution | {{e.g. npm, binary, Docker}} |
| Architecture | {{e.g. single core + adapters}} |
| API style | {{e.g. sync, REST, embedded}} |
| Reliability bar | {{e.g. every line tested; property tests; DST}} |
| Test runner | {{e.g. bun test, pytest, go test}} |
| Beachhead | {{e.g. dev/test first; production earned later}} |
Do not re-litigate locked rows without explicit human amendment to this file.
## 4. Principles
1. **{{Principle}}** — {{explanation}}
2. **{{Principle}}** — {{explanation}}
3. **{{Principle}}** — {{explanation}}
## 5. Architecture
```
{{ASCII or tree diagram — modules, trust boundaries}}
```
### Trust boundaries
| Boundary | Modules | Gate |
|----------|---------|------|
| Guarded core | {{paths}} | {{heavy tests, CODEOWNERS, coverage threshold}} |
| Open edges | {{paths}} | {{standard gate}} |
**Honesty discipline:** guarded modules stay small because they are genuinely minimal — not because complexity was swept elsewhere.
## 6. Feature roadmap (ordered)
### Phase / milestone 1 — {{name}}
- {{deliverable}}
- Acceptance: see `loop/ACCEPTANCE.md`
### Phase / milestone 2 — {{name}}
- {{deliverable}}
### Later (explicit deferrals)
- {{item}} — reason deferred
## 7. Open questions
- [ ] {{question}} — owner: human; do not silently decide in loop
## 8. Deliberately rejected
Record alternatives the brainstorm considered so the loop does not reopen them:
- **{{Alternative}}** — rejected because {{reason}}
## 9. References
- {{Prior art, papers, repos to study}}