arcane-cli 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +253 -0
  3. package/dist/assets/.arcane/agents/agent-policies-template.md +414 -0
  4. package/dist/assets/.arcane/governance/agent-approved-paths.md +60 -0
  5. package/dist/assets/.arcane/governance/agent-policies.md +414 -0
  6. package/dist/assets/.arcane/governance/agent-work-queue-model.md +61 -0
  7. package/dist/assets/.arcane/governance/authentication-strategy.md +220 -0
  8. package/dist/assets/.arcane/governance/cicd-standards.md +227 -0
  9. package/dist/assets/.arcane/governance/decision-documentation-standard.md +335 -0
  10. package/dist/assets/.arcane/governance/development-methodology.md +384 -0
  11. package/dist/assets/.arcane/governance/git-conventions.md +759 -0
  12. package/dist/assets/.arcane/governance/hardening-checklist.md +117 -0
  13. package/dist/assets/.arcane/governance/naming-conventions.md +142 -0
  14. package/dist/assets/.arcane/governance/new-business-setup.md +182 -0
  15. package/dist/assets/.arcane/governance/poc-management-pattern.md +190 -0
  16. package/dist/assets/.arcane/governance/portable-bootstrap.md +101 -0
  17. package/dist/assets/.arcane/governance/product-excellence-standards.md +211 -0
  18. package/dist/assets/.arcane/governance/rca-process-standard.md +157 -0
  19. package/dist/assets/.arcane/governance/spell-authoring-standards.md +129 -0
  20. package/dist/assets/.arcane/governance/testing-standards.md +158 -0
  21. package/dist/assets/.arcane/governance/threat-model.md +104 -0
  22. package/dist/assets/.arcane/governance/universal-agent-rules.md +108 -0
  23. package/dist/assets/.arcane/image-prompts/adelaide-image-prompt.md +140 -0
  24. package/dist/assets/.arcane/image-prompts/alexander-image-prompt.md +138 -0
  25. package/dist/assets/.arcane/image-prompts/bess-image-prompt.md +139 -0
  26. package/dist/assets/.arcane/image-prompts/circe-image-prompt.md +143 -0
  27. package/dist/assets/.arcane/image-prompts/custodio-image-prompt.md +140 -0
  28. package/dist/assets/.arcane/image-prompts/iris-image-prompt.md +139 -0
  29. package/dist/assets/.arcane/image-prompts/kellar-image-prompt.md +141 -0
  30. package/dist/assets/.arcane/image-prompts/lafayette-image-prompt.md +140 -0
  31. package/dist/assets/.arcane/image-prompts/lince-image-prompt.md +142 -0
  32. package/dist/assets/.arcane/image-prompts/mercurio-image-prompt.md +140 -0
  33. package/dist/assets/.arcane/image-prompts/merlin-image-prompt.md +139 -0
  34. package/dist/assets/.arcane/image-prompts/prospero-image-prompt.md +141 -0
  35. package/dist/assets/.arcane/templates/venture-template/overview.md +66 -0
  36. package/dist/assets/.claude/commands/spell-address-review.md +9 -0
  37. package/dist/assets/.claude/commands/spell-arcane-version.md +9 -0
  38. package/dist/assets/.claude/commands/spell-architect.md +9 -0
  39. package/dist/assets/.claude/commands/spell-bootstrap-business.md +9 -0
  40. package/dist/assets/.claude/commands/spell-brainstorm.md +9 -0
  41. package/dist/assets/.claude/commands/spell-bug.md +9 -0
  42. package/dist/assets/.claude/commands/spell-bump.md +9 -0
  43. package/dist/assets/.claude/commands/spell-check-drift.md +9 -0
  44. package/dist/assets/.claude/commands/spell-close-session.md +9 -0
  45. package/dist/assets/.claude/commands/spell-commit-work.md +9 -0
  46. package/dist/assets/.claude/commands/spell-create-pull-request.md +9 -0
  47. package/dist/assets/.claude/commands/spell-document.md +9 -0
  48. package/dist/assets/.claude/commands/spell-dotnet-expert.md +9 -0
  49. package/dist/assets/.claude/commands/spell-eas-ios-deploy.md +9 -0
  50. package/dist/assets/.claude/commands/spell-enchant.md +9 -0
  51. package/dist/assets/.claude/commands/spell-explain-concept.md +9 -0
  52. package/dist/assets/.claude/commands/spell-feedback.md +9 -0
  53. package/dist/assets/.claude/commands/spell-full-cycle.md +9 -0
  54. package/dist/assets/.claude/commands/spell-generate-bot-icons.md +9 -0
  55. package/dist/assets/.claude/commands/spell-implement.md +9 -0
  56. package/dist/assets/.claude/commands/spell-open-session.md +9 -0
  57. package/dist/assets/.claude/commands/spell-plan.md +9 -0
  58. package/dist/assets/.claude/commands/spell-present-arcane.md +9 -0
  59. package/dist/assets/.claude/commands/spell-product-review.md +9 -0
  60. package/dist/assets/.claude/commands/spell-review-batch.md +9 -0
  61. package/dist/assets/.claude/commands/spell-review.md +9 -0
  62. package/dist/assets/.claude/commands/spell-save-idea.md +9 -0
  63. package/dist/assets/.claude/commands/spell-scope.md +9 -0
  64. package/dist/assets/.claude/commands/spell-security-review.md +9 -0
  65. package/dist/assets/.claude/commands/spell-ship.md +9 -0
  66. package/dist/assets/.claude/commands/spell-status.md +9 -0
  67. package/dist/assets/.claude/commands/spell-suggest-feature.md +9 -0
  68. package/dist/assets/.claude/commands/spell-test.md +9 -0
  69. package/dist/assets/.claude/commands/spell-todo.md +9 -0
  70. package/dist/assets/.github/agents/adelaide.agent.md +44 -0
  71. package/dist/assets/.github/agents/alexander.agent.md +43 -0
  72. package/dist/assets/.github/agents/bess.agent.md +42 -0
  73. package/dist/assets/.github/agents/circe.agent.md +43 -0
  74. package/dist/assets/.github/agents/custodio.agent.md +44 -0
  75. package/dist/assets/.github/agents/iris.agent.md +43 -0
  76. package/dist/assets/.github/agents/kellar.agent.md +43 -0
  77. package/dist/assets/.github/agents/lafayette.agent.md +42 -0
  78. package/dist/assets/.github/agents/lince.agent.md +43 -0
  79. package/dist/assets/.github/agents/mercurio.agent.md +43 -0
  80. package/dist/assets/.github/agents/merlin.agent.md +44 -0
  81. package/dist/assets/.github/agents/prospero.agent.md +43 -0
  82. package/dist/assets/.github/instructions/agent-output.instructions.md +48 -0
  83. package/dist/assets/.github/prompts/spell-address-review.prompt.md +114 -0
  84. package/dist/assets/.github/prompts/spell-arcane-version.prompt.md +82 -0
  85. package/dist/assets/.github/prompts/spell-architect.prompt.md +116 -0
  86. package/dist/assets/.github/prompts/spell-bootstrap-business.prompt.md +73 -0
  87. package/dist/assets/.github/prompts/spell-brainstorm.prompt.md +124 -0
  88. package/dist/assets/.github/prompts/spell-bug.prompt.md +109 -0
  89. package/dist/assets/.github/prompts/spell-bump.prompt.md +73 -0
  90. package/dist/assets/.github/prompts/spell-check-drift.prompt.md +97 -0
  91. package/dist/assets/.github/prompts/spell-close-session.prompt.md +189 -0
  92. package/dist/assets/.github/prompts/spell-commit-work.prompt.md +211 -0
  93. package/dist/assets/.github/prompts/spell-create-pull-request.prompt.md +170 -0
  94. package/dist/assets/.github/prompts/spell-document.prompt.md +83 -0
  95. package/dist/assets/.github/prompts/spell-dotnet-expert.prompt.md +117 -0
  96. package/dist/assets/.github/prompts/spell-eas-ios-deploy.prompt.md +183 -0
  97. package/dist/assets/.github/prompts/spell-enchant.prompt.md +385 -0
  98. package/dist/assets/.github/prompts/spell-explain-concept.prompt.md +69 -0
  99. package/dist/assets/.github/prompts/spell-feedback.prompt.md +113 -0
  100. package/dist/assets/.github/prompts/spell-full-cycle.prompt.md +201 -0
  101. package/dist/assets/.github/prompts/spell-generate-bot-icons.prompt.md +84 -0
  102. package/dist/assets/.github/prompts/spell-implement.prompt.md +101 -0
  103. package/dist/assets/.github/prompts/spell-open-session.prompt.md +116 -0
  104. package/dist/assets/.github/prompts/spell-plan.prompt.md +145 -0
  105. package/dist/assets/.github/prompts/spell-present-arcane.prompt.md +188 -0
  106. package/dist/assets/.github/prompts/spell-product-review.prompt.md +97 -0
  107. package/dist/assets/.github/prompts/spell-review-batch.prompt.md +94 -0
  108. package/dist/assets/.github/prompts/spell-review.prompt.md +131 -0
  109. package/dist/assets/.github/prompts/spell-save-idea.prompt.md +83 -0
  110. package/dist/assets/.github/prompts/spell-scope.prompt.md +263 -0
  111. package/dist/assets/.github/prompts/spell-security-review.prompt.md +129 -0
  112. package/dist/assets/.github/prompts/spell-ship.prompt.md +104 -0
  113. package/dist/assets/.github/prompts/spell-status.prompt.md +85 -0
  114. package/dist/assets/.github/prompts/spell-suggest-feature.prompt.md +110 -0
  115. package/dist/assets/.github/prompts/spell-test.prompt.md +87 -0
  116. package/dist/assets/.github/prompts/spell-todo.prompt.md +126 -0
  117. package/dist/assets/DECISIONS.md +19 -0
  118. package/dist/assets/TODO.md +7 -0
  119. package/dist/assets/agents/architecture-lead.yaml +61 -0
  120. package/dist/assets/agents/collaborator.yaml +59 -0
  121. package/dist/assets/agents/devops.yaml +60 -0
  122. package/dist/assets/agents/frontend-dev.yaml +60 -0
  123. package/dist/assets/agents/fullstack-dev.yaml +59 -0
  124. package/dist/assets/agents/marketing-strategist.yaml +60 -0
  125. package/dist/assets/agents/mobile-dev.yaml +59 -0
  126. package/dist/assets/agents/operations-comms.yaml +58 -0
  127. package/dist/assets/agents/orchestrator.yaml +60 -0
  128. package/dist/assets/agents/qa-lead.yaml +60 -0
  129. package/dist/assets/agents/research-analyst.yaml +59 -0
  130. package/dist/assets/agents/security-ops.yaml +61 -0
  131. package/dist/assets/ai-context/system-prompt-context.md +32 -0
  132. package/dist/assets/journal/.gitkeep +0 -0
  133. package/dist/index.d.ts +12 -0
  134. package/dist/index.js +2313 -0
  135. package/dist/index.js.map +1 -0
  136. package/package.json +72 -0
@@ -0,0 +1,335 @@
1
+ ---
2
+ title: Decision Documentation Standard
3
+ audience: both
4
+ status: active
5
+ distributable: true
6
+ tags: [governance, decisions, documentation, standards]
7
+ ---
8
+
9
+ # Decision Documentation Standard
10
+
11
+ This document defines how significant decisions are documented in this repository. It establishes the relationship between lean Architecture Decision Records (ADRs) and detailed companion documentation.
12
+
13
+ ## Executive Summary
14
+
15
+ - ADRs remain lean for scanability; companion topic docs hold full rationale and trade-off depth.
16
+ - Every complex ADR should include a “Deep dive” link to a discoverable topic doc.
17
+ - Companion docs must link back to related ADRs to preserve bidirectional navigation in Obsidian.
18
+ - This standard exists to make “why X over Y?” answerable from one shareable file.
19
+
20
+ ## Related ADRs
21
+
22
+ - [[DECISIONS#ADR-002|ADR-002: Documentation in Markdown + Git]]
23
+ - [[DECISIONS#ADR-011|ADR-011: Troubleshooting Standard]]
24
+
25
+ ## Decision Prefixes
26
+
27
+ Arcane separates framework-level decisions from org-specific ones using two prefixes:
28
+
29
+ | Prefix | File | Scope |
30
+ | --------- | --------------------- | ------------------------------------------------------------------------------------ |
31
+ | `ADR-NNN` | `DECISIONS.md` | Org-specific decisions (ventures, infrastructure, runtime config, org conventions) |
32
+ | `ARC-NNN` | `arcane/DECISIONS.md` | Arcane framework decisions (spell library, CLI, agent system, governance templates) |
33
+
34
+ **Rules:**
35
+
36
+ - If the decision would apply to any organization using Arcane, it is `ARC-NNN`.
37
+ - If the decision is specific to how your organization operates, it is `ADR-NNN`.
38
+ - When uncertain, default to `ADR-NNN` in ops; promote to `ARC-NNN` later if the decision proves framework-generic.
39
+ - Never renumber existing entries in either sequence.
40
+
41
+ ## Problem Statement
42
+
43
+ **Scannability vs. Detail Tension:**
44
+
45
+ - ADRs must be scannable (quick review of decision history)
46
+ - Complex decisions need deep rationale, comparisons, implementation notes
47
+ - Embedding all detail in ADRs makes DECISIONS.md unreadable (bloat risk)
48
+ - Scattering rationale across journals, audit logs, and implementation docs makes it hard to answer "why did we choose X over Y?"
49
+
50
+ **Triggered by:** Question "why SSH vs PAT?" — answer existed in [security/audit-log.md](../security/audit-log.md) but not discoverable without knowing where to look. No ADR documented the Git authentication decision.
51
+
52
+ ## Solution: Two-Tier Documentation
53
+
54
+ ### Tier 1: Lean ADRs in DECISIONS.md
55
+
56
+ **Purpose:** Quick-reference decision log
57
+ **Audience:** Anyone scanning project history
58
+ **Content:**
59
+
60
+ - Date, Status, Verified (with wiki-link to verification session)
61
+ - Context (2-3 sentences: what problem, what constraints)
62
+ - Decision (1 sentence: what was chosen)
63
+ - Reasoning (3-5 bullets: core justification)
64
+ - Rejected alternatives (2-3 bullets: what was considered but not chosen)
65
+ - **Deep dive link** (if companion doc exists): `[[path/to/detail-doc|Display Text]]`
66
+
67
+ **Keep ADRs under 20 lines** (excluding frontmatter). Longer means detail should move to companion doc.
68
+
69
+ **Naming Impact Check:** If the decision introduces, changes, or retires a name (repo, project, product, agent, service), the ADR **must** include a "Naming impact" section that:
70
+
71
+ 1. Lists all existing uses of the proposed name (grep the repo)
72
+ 2. Confirms no collision with other entities
73
+ 3. Identifies any docs, scripts, or prompts that reference the old name
74
+
75
+ This check was added after [[governance/rcas/RCA-001-naming-collision|RCA-001]] discovered that ADR-061 named a product without checking whether the ops repo already used that name.
76
+
77
+ ### Tier 2: Companion Detail Docs
78
+
79
+ **Purpose:** Deep rationale, trade-offs, implementation notes, verification procedures
80
+ **Audience:** Someone implementing, troubleshooting, or justifying the decision to outsiders
81
+ **Content:**
82
+
83
+ - Full "why X over Y" comparison with specific technical/business justification
84
+ - Trade-offs analysis (what we lose, why we accept it)
85
+ - Implementation notes (edge cases, gotchas, configuration examples)
86
+ - Verification procedures (how to confirm decision still valid)
87
+ - Future review criteria (when to re-evaluate)
88
+ - Related ADRs section (bidirectional links for Obsidian graph visualization)
89
+
90
+ **Location:** Domain-specific folders (security/, infrastructure/, agents/, governance/)
91
+ **Naming:** Topic-based, not `ADR-NNN-title.md` — groups related decisions together
92
+
93
+ ---
94
+
95
+ ## Companion Doc Creation Guidelines
96
+
97
+ ### When to Create a Companion Doc
98
+
99
+ **Create a companion doc if:**
100
+
101
+ - Decision justification exceeds 5 bullets in "Reasoning" section
102
+ - Multiple ADRs share a common theme (e.g., authentication strategy covers ADR-007, ADR-008, ADR-009, ADR-017)
103
+ - Implementation has significant gotchas or edge cases
104
+ - Decision has ongoing review/maintenance requirements (quarterly audits, version compatibility)
105
+ - You anticipate "why did we do this?" questions from future team members or external auditors
106
+
107
+ **Keep detail in ADR if:**
108
+
109
+ - Reasoning fits in 3-5 clear bullets
110
+ - Decision is simple with no complex trade-offs
111
+ - Implementation is straightforward (no special notes needed)
112
+ - Decision unlikely to be questioned or re-evaluated
113
+
114
+ ### Where to Place Companion Docs
115
+
116
+ Use existing folder structure; **do not create `deep-dives/` or `DECISIONS-details/` folders**.
117
+
118
+ | Decision Theme | Location | Example |
119
+ | ------------------------------------ | ------------------ | --------------------------------------------------------------------------------------- |
120
+ | Authentication, credentials, keys | `security/` | [security/authentication-strategy.md](../security/authentication-strategy.md) |
121
+ | Hardware, OS, dual-boot | `infrastructure/` | [infrastructure/compute-architecture.md](../infrastructure/compute-architecture.md) |
122
+ | Agent runtime config, agent policies | `agents/` | [agents/architecture-decisions.md](../agents/architecture-decisions.md) |
123
+ | Git, naming, documentation standards | `governance/` | This file |
124
+ | Business-specific operations | `ventures/{name}/` | `ventures/acme-store/DECISIONS.md`, `ventures/example-app/operations-model.md` |
125
+
126
+ **Rationale:** Keeps security knowledge with security docs, infrastructure with infrastructure, etc. Easier to discover via folder browsing.
127
+
128
+ ### Naming Conventions
129
+
130
+ **Use topic-based names:**
131
+
132
+ - ✅ `security/authentication-strategy.md` — covers SSH, PATs, API keys, tokens (multiple ADRs)
133
+ - ✅ `infrastructure/compute-architecture.md` — covers dual-boot, Ubuntu choice, hardware sizing
134
+ - ❌ `security/ADR-008-deep-dive.md` — Forces 1:1 mapping, harder to group related decisions
135
+
136
+ **Filename format:** `{topic-slug}.md` (lowercase, hyphen-separated)
137
+
138
+ ### Content Template
139
+
140
+ ```markdown
141
+ ---
142
+ title: [Topic Title]
143
+ audience: both
144
+ last_updated: YYYY-MM-DD
145
+ status: active
146
+ tags: [relevant, tags]
147
+ ---
148
+
149
+ # [Topic Title]
150
+
151
+ Brief description of what decisions this doc covers.
152
+
153
+ ## Related ADRs
154
+
155
+ - [[DECISIONS#ADR-NNN|ADR-NNN: Short Title]]
156
+ - [[DECISIONS#ADR-MMM|ADR-MMM: Another Title]]
157
+
158
+ ## Principles
159
+
160
+ High-level guiding principles for this decision domain (3-5 bullets).
161
+
162
+ ## Decision Deep Dives
163
+
164
+ ### [Decision Name]
165
+
166
+ **Context:** What problem, constraints, options available
167
+
168
+ **Decision:** What was chosen (1 sentence)
169
+
170
+ **Rationale:**
171
+
172
+ 1. **First Major Point** — with technical/business justification
173
+ 2. **Second Major Point** — with specific examples
174
+ 3. **Third Major Point** — with comparisons to alternatives
175
+
176
+ **Trade-offs:**
177
+
178
+ - **Downside:** What we lose by choosing this
179
+ - **Mitigation:** How we address the downside
180
+ - **Chosen:** Why we accept the trade-off
181
+
182
+ **Rejected Alternatives:**
183
+
184
+ - **Alternative 1:** Why it was considered but rejected
185
+ - **Alternative 2:** Specific reason it didn't fit
186
+
187
+ **Verification:** How decision was confirmed working (link to audit log or journal entry)
188
+
189
+ ---
190
+
191
+ ### [Next Decision]
192
+
193
+ ...
194
+
195
+ ## Future Considerations
196
+
197
+ Conditions under which this decision should be re-evaluated.
198
+
199
+ ## References
200
+
201
+ - [[path/to/related-doc|Related Doc]]
202
+ - [[journal/YYYY-MM-DD-session-slug|Session Where Decided]]
203
+ ```
204
+
205
+ ---
206
+
207
+ ## Linking Pattern
208
+
209
+ ### ADRs Link Forward to Companion Docs
210
+
211
+ Add this section **after Reasoning, before Rejected alternatives** in the ADR:
212
+
213
+ ```markdown
214
+ **Deep dive:** [[security/authentication-strategy|Authentication Strategy]]
215
+ ```
216
+
217
+ **Example from ADR-017:**
218
+
219
+ ```markdown
220
+ **Reasoning:**
221
+
222
+ - PATs are bearer tokens; SSH uses challenge/response
223
+ - Reduces secret exposure in commands and environment variables
224
+ - Consistent with GitHub/GitLab industry practice
225
+
226
+ **Deep dive:** [[security/authentication-strategy#azure-devops-git-operations|Authentication Strategy — Azure DevOps]]
227
+
228
+ **Rejected alternatives:**
229
+
230
+ - PATs — bearer token replay risk
231
+ ...
232
+ ```
233
+
234
+ ### Companion Docs Link Back to ADRs
235
+
236
+ Create "Related ADRs" section at the top of every companion doc:
237
+
238
+ ```markdown
239
+ ## Related ADRs
240
+
241
+ - [[DECISIONS#ADR-007|ADR-007: Runtime Gateway Security]]
242
+ - [[DECISIONS#ADR-008|ADR-008: Inter-Machine Communication]]
243
+ - [[DECISIONS#ADR-017|ADR-017: Git SSH Authentication]]
244
+ ```
245
+
246
+ **Rationale:** Creates bidirectional graph edges in Obsidian visualization. Clicking ADR-017 shows link to authentication-strategy.md; clicking authentication-strategy.md shows all related ADRs.
247
+
248
+ ---
249
+
250
+ ## Index-Free Discovery
251
+
252
+ **No DECISIONS-INDEX.md required.** Discovery happens via:
253
+
254
+ 1. **Obsidian Graph View:** Visual clusters show related docs
255
+ 2. **Wiki-link navigation:** Click ADR "Deep dive" link → companion doc → "Related ADRs" → back to other ADRs
256
+ 3. **Folder browsing:** Security decisions in security/, infrastructure in infrastructure/
257
+ 4. **Grep search:** `grep -r "authentication" **/*.md` finds all mentions
258
+
259
+ **If you need an answer:**
260
+
261
+ 1. Check DECISIONS.md for high-level ADR
262
+ 2. Follow "Deep dive" link if present
263
+ 3. Browse domain folder (security/, infrastructure/, etc.) if no link
264
+ 4. Search journals for session where decision was made
265
+
266
+ ---
267
+
268
+ ## Maintenance Rules
269
+
270
+ ### When Editing
271
+
272
+ **If you edit an ADR:**
273
+
274
+ - Update `last_updated` in DECISIONS.md frontmatter
275
+ - If adding new reasoning that makes ADR >20 lines, **move detail to companion doc** instead
276
+ - Add "Deep dive" link if creating new companion doc
277
+
278
+ **If you edit a companion doc:**
279
+
280
+ - Update `last_updated` in companion doc frontmatter
281
+ - Check if related ADRs need "Deep dive" link updates (if linking pattern changed)
282
+ - **Do not** edit DECISIONS.md unless decision itself changed
283
+
284
+ **If you create a new ADR:**
285
+
286
+ - Decide: does this need a companion doc, or does an existing companion doc cover it?
287
+ - If new companion doc needed, create it first, then add "Deep dive" link in ADR
288
+ - If existing companion doc covers it, add new section to that doc + update "Related ADRs" list
289
+
290
+ ### Quarterly Review
291
+
292
+ Every 3 months:
293
+
294
+ - [ ] Check for orphaned companion docs (docs with no ADR links pointing to them)
295
+ - [ ] Check for long ADRs (>20 lines) that should have detail extracted
296
+ - [ ] Verify Obsidian graph shows connected clusters (no isolated decision nodes)
297
+ - [ ] Review "Future Considerations" sections in companion docs — any re-evaluation triggers?
298
+
299
+ ---
300
+
301
+ ## Anti-Patterns (Don't Do This)
302
+
303
+ ❌ **Creating `ADR-NNN-deep-dive.md` files** — Forces 1:1 mapping, prevents grouping related decisions
304
+
305
+ ❌ **Duplicating content between ADR and companion doc** — ADR should summarize (3-5 bullets), companion has full detail. No copy/paste.
306
+
307
+ ❌ **Putting implementation steps in companion docs** — Implementation belongs in playbooks/ or installation.md. Companion docs explain **why**, not **how** (unless "how" is a decision point).
308
+
309
+ ❌ **Creating companion docs for simple decisions** — If reasoning fits in 3-5 bullets, keep it in ADR.
310
+
311
+ ❌ **Forgetting bidirectional links** — Always add "Related ADRs" section in companion doc + "Deep dive" link in ADR.
312
+
313
+ ❌ **Putting rationale in journals instead of companion docs** — Journals are chronological session logs (narrative). Companion docs are topic-indexed reference (structured). Rationale goes in companion docs, linked from journals.
314
+
315
+ ---
316
+
317
+ ## Evolution of This Standard
318
+
319
+ **This is ADR governance for ADRs** (meta!). Changes to this standard should be treated as significant decisions:
320
+
321
+ 1. Propose change (add to TODO.md with context)
322
+ 2. Discuss in journal session
323
+ 3. Update this file
324
+ 4. Add entry to DECISIONS.md if decision-making process itself changes
325
+ 5. Announce in relevant channels (if the team expands beyond a single operator)
326
+
327
+ **Versioning note:** Per-business decisions follow this pattern — business-only decisions live in `ventures/{name}/DECISIONS.md` (unnumbered or business-prefixed); system/cross-business decisions stay in the root `DECISIONS.md`.
328
+
329
+ ---
330
+
331
+ ## References
332
+
333
+ - [[DECISIONS|Architecture Decision Records]] — The ADR list itself
334
+ - [[README|README]] — How to use graph view for discovery
335
+ - Documentation conventions — frontmatter, wiki-links, tagging