domain-knowledge-kit 0.1.0 → 0.2.8
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.
- package/README.md +111 -229
- package/dist/cli.js +17 -0
- package/dist/cli.js.map +1 -1
- package/dist/features/agent/commands/init.d.ts +11 -0
- package/dist/features/agent/commands/init.d.ts.map +1 -0
- package/dist/features/agent/commands/init.js +77 -0
- package/dist/features/agent/commands/init.js.map +1 -0
- package/dist/features/agent/commands/prime.d.ts +15 -0
- package/dist/features/agent/commands/prime.d.ts.map +1 -0
- package/dist/features/agent/commands/prime.js +425 -0
- package/dist/features/agent/commands/prime.js.map +1 -0
- package/dist/features/pipeline/indexer.d.ts +1 -1
- package/dist/features/pipeline/indexer.d.ts.map +1 -1
- package/dist/features/pipeline/indexer.js +2 -2
- package/dist/features/pipeline/indexer.js.map +1 -1
- package/dist/features/pipeline/renderer.d.ts +6 -6
- package/dist/features/pipeline/renderer.js +7 -7
- package/dist/features/pipeline/renderer.js.map +1 -1
- package/dist/features/pipeline/tests/indexer.test.js +7 -7
- package/dist/features/pipeline/tests/indexer.test.js.map +1 -1
- package/dist/features/pipeline/tests/renderer.test.js +1 -1
- package/dist/features/pipeline/tests/renderer.test.js.map +1 -1
- package/dist/features/pipeline/tests/validate-schemas.test.js +1 -1
- package/dist/features/pipeline/tests/validate-schemas.test.js.map +1 -1
- package/dist/features/pipeline/tests/validator.test.js +30 -30
- package/dist/features/pipeline/tests/validator.test.js.map +1 -1
- package/dist/features/pipeline/validator.d.ts +1 -1
- package/dist/features/pipeline/validator.js +1 -1
- package/dist/features/pipeline/validator.js.map +1 -1
- package/dist/features/query/commands/search.d.ts +3 -0
- package/dist/features/query/commands/search.d.ts.map +1 -1
- package/dist/features/query/commands/search.js +29 -8
- package/dist/features/query/commands/search.js.map +1 -1
- package/dist/features/query/searcher.js +1 -1
- package/dist/features/query/searcher.js.map +1 -1
- package/dist/features/query/tests/searcher.test.js +7 -7
- package/dist/features/query/tests/searcher.test.js.map +1 -1
- package/dist/features/scaffold/commands/add-item.d.ts +15 -0
- package/dist/features/scaffold/commands/add-item.d.ts.map +1 -0
- package/dist/features/scaffold/commands/add-item.js +125 -0
- package/dist/features/scaffold/commands/add-item.js.map +1 -0
- package/dist/features/scaffold/commands/new-adr.d.ts +12 -0
- package/dist/features/scaffold/commands/new-adr.d.ts.map +1 -0
- package/dist/features/scaffold/commands/new-adr.js +95 -0
- package/dist/features/scaffold/commands/new-adr.js.map +1 -0
- package/dist/features/scaffold/commands/new-context.d.ts +17 -0
- package/dist/features/scaffold/commands/new-context.d.ts.map +1 -0
- package/dist/features/scaffold/commands/new-context.js +67 -0
- package/dist/features/scaffold/commands/new-context.js.map +1 -0
- package/dist/features/scaffold/commands/new-domain.d.ts +14 -0
- package/dist/features/scaffold/commands/new-domain.d.ts.map +1 -0
- package/dist/features/scaffold/commands/new-domain.js +86 -0
- package/dist/features/scaffold/commands/new-domain.js.map +1 -0
- package/dist/shared/adr-parser.js +1 -1
- package/dist/shared/errors.js +1 -1
- package/dist/shared/errors.js.map +1 -1
- package/dist/shared/index.d.ts +1 -1
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +1 -1
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/loader.d.ts +1 -1
- package/dist/shared/loader.js +3 -3
- package/dist/shared/paths.d.ts +34 -13
- package/dist/shared/paths.d.ts.map +1 -1
- package/dist/shared/paths.js +53 -23
- package/dist/shared/paths.js.map +1 -1
- package/dist/shared/tests/graph.test.js +10 -10
- package/dist/shared/tests/graph.test.js.map +1 -1
- package/dist/shared/tests/loader.test.js +23 -23
- package/dist/shared/tests/loader.test.js.map +1 -1
- package/dist/shared/tests/verify-collision-fix.test.js +2 -2
- package/dist/shared/tests/verify-collision-fix.test.js.map +1 -1
- package/dist/shared/types/domain.d.ts +5 -5
- package/dist/shared/types/domain.d.ts.map +1 -1
- package/dist/shared/types/domain.js +1 -1
- package/package.json +11 -3
- /package/tools/{domain-pack → dkk}/schema/.gitkeep +0 -0
- /package/tools/{domain-pack → dkk}/schema/actors.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/schema/adr-frontmatter.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/schema/aggregate.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/schema/command.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/schema/context.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/schema/event.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/schema/glossary.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/schema/index.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/schema/policy.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/schema/read-model.schema.json +0 -0
- /package/tools/{domain-pack → dkk}/templates/.gitkeep +0 -0
- /package/tools/{domain-pack → dkk}/templates/context.md.hbs +0 -0
- /package/tools/{domain-pack → dkk}/templates/index.md.hbs +0 -0
- /package/tools/{domain-pack → dkk}/templates/item.md.hbs +0 -0
|
@@ -0,0 +1,425 @@
|
|
|
1
|
+
import { existsSync } from "node:fs";
|
|
2
|
+
import { loadDomainModel } from "../../../shared/loader.js";
|
|
3
|
+
import { forEachItem } from "../../../shared/item-visitor.js";
|
|
4
|
+
import { domainDir } from "../../../shared/paths.js";
|
|
5
|
+
/** The full agent context document. */
|
|
6
|
+
function primeContent() {
|
|
7
|
+
return `# Domain Knowledge Kit — Agent Context
|
|
8
|
+
|
|
9
|
+
## Project Overview
|
|
10
|
+
|
|
11
|
+
This project uses a **Domain Knowledge Pack**: a structured, YAML-based domain model with Architecture Decision Records (ADRs), full-text search, and generated Markdown documentation. The CLI tool is \`dkk\`.
|
|
12
|
+
|
|
13
|
+
## Core Principles
|
|
14
|
+
|
|
15
|
+
1. **Domain YAML is the single source of truth.** Never generate domain knowledge from code; always read and edit the YAML files under \`.dkk/domain/\`.
|
|
16
|
+
2. **ADRs live in \`.dkk/adr/\`** as Markdown files with YAML frontmatter. They link to domain items via \`domain_refs\` and domain items link back via \`adr_refs\`.
|
|
17
|
+
3. **Every change to domain files must pass quality gates:** run \`dkk render\` before committing (validates automatically, then renders docs and rebuilds the search index). Use \`dkk validate\` for a quick dry-run check without rendering.
|
|
18
|
+
|
|
19
|
+
## Domain Model Structure
|
|
20
|
+
|
|
21
|
+
\`\`\`
|
|
22
|
+
.dkk/
|
|
23
|
+
domain/
|
|
24
|
+
index.yml # Top-level: registered contexts + cross-context flows
|
|
25
|
+
actors.yml # Global actors (human | system | external)
|
|
26
|
+
contexts/
|
|
27
|
+
<name>/ # One directory per bounded context
|
|
28
|
+
context.yml # Context metadata (name, description, glossary)
|
|
29
|
+
events/ # One .yml file per domain event
|
|
30
|
+
commands/ # One .yml file per command
|
|
31
|
+
aggregates/ # One .yml file per aggregate
|
|
32
|
+
policies/ # One .yml file per policy
|
|
33
|
+
read-models/ # One .yml file per read model
|
|
34
|
+
adr/
|
|
35
|
+
adr-NNNN.md # Architecture Decision Records (YAML frontmatter)
|
|
36
|
+
\`\`\`
|
|
37
|
+
|
|
38
|
+
## Item Types
|
|
39
|
+
|
|
40
|
+
| Type | Description | Key Fields |
|
|
41
|
+
|------|-------------|------------|
|
|
42
|
+
| **Event** | Something that happened in the domain | \`name\`, \`description\`, \`fields\`, \`raised_by\`, \`adr_refs\` |
|
|
43
|
+
| **Command** | An instruction to change state | \`name\`, \`description\`, \`fields\`, \`actor\`, \`handled_by\`, \`adr_refs\` |
|
|
44
|
+
| **Policy** | Reactive logic triggered by events | \`name\`, \`description\`, \`when\`, \`then\`, \`adr_refs\` |
|
|
45
|
+
| **Aggregate** | Consistency boundary handling commands | \`name\`, \`description\`, \`handles\`, \`emits\`, \`adr_refs\` |
|
|
46
|
+
| **Read Model** | Query-optimized projection | \`name\`, \`description\`, \`subscribes_to\`, \`used_by\`, \`adr_refs\` |
|
|
47
|
+
| **Glossary** | Ubiquitous language term | \`term\`, \`definition\`, \`aliases\`, \`adr_refs\` |
|
|
48
|
+
| **Actor** | Person or system interacting with the domain | \`name\`, \`type\` (human/system/external), \`description\`, \`adr_refs\` |
|
|
49
|
+
| **Flow** | Cross-context sequence of steps | \`name\`, \`description\`, \`steps[]\` |
|
|
50
|
+
|
|
51
|
+
## ID Conventions
|
|
52
|
+
|
|
53
|
+
| Item Type | ID Format | Example |
|
|
54
|
+
|--------------|------------------------------------|----------------------------|
|
|
55
|
+
| Context item | \`<context>.<ItemName>\` | \`ordering.OrderPlaced\` |
|
|
56
|
+
| Actor | \`actor.<Name>\` | \`actor.Customer\` |
|
|
57
|
+
| ADR | \`adr-NNNN\` | \`adr-0001\` |
|
|
58
|
+
| Flow | \`flow.<Name>\` | \`flow.OrderFulfillment\` |
|
|
59
|
+
| Context | \`context.<name>\` | \`context.ordering\` |
|
|
60
|
+
|
|
61
|
+
## CLI Command Reference
|
|
62
|
+
|
|
63
|
+
| Command | Purpose |
|
|
64
|
+
|-------------------------------|------------------------------------------------------|
|
|
65
|
+
| \`dkk list\` | List all domain items (filterable by \`--context\`, \`--type\`) |
|
|
66
|
+
| \`dkk show <id>\` | Display full YAML of a domain item |
|
|
67
|
+
| \`dkk search <query>\` | FTS5 full-text search with ranking |
|
|
68
|
+
| \`dkk related <id>\` | BFS graph traversal of related items |
|
|
69
|
+
| \`dkk validate\` | Schema + cross-reference validation |
|
|
70
|
+
| \`dkk render\` | Validate → render docs → rebuild search index |
|
|
71
|
+
| \`dkk adr show <id>\` | Display ADR frontmatter |
|
|
72
|
+
| \`dkk adr related <id>\` | Show bidirectional ADR ↔ domain links |
|
|
73
|
+
| \`dkk init\` | Create/update AGENTS.md with DKK section |
|
|
74
|
+
| \`dkk prime\` | Output this agent context to stdout |
|
|
75
|
+
|
|
76
|
+
## Domain Search Workflow
|
|
77
|
+
|
|
78
|
+
When answering questions about the domain, always query the model — never guess.
|
|
79
|
+
|
|
80
|
+
1. **Parse the request** — Extract key concepts, entity names, and domain terms.
|
|
81
|
+
2. **Search** — Run full-text search for each key concept:
|
|
82
|
+
\`\`\`bash
|
|
83
|
+
dkk search "<concept>"
|
|
84
|
+
\`\`\`
|
|
85
|
+
Use \`--context <name>\` to scope to a bounded context. Use \`--type <type>\` to narrow results (event, command, policy, aggregate, read_model, glossary, actor, adr, flow, context).
|
|
86
|
+
3. **Show details** — For each relevant result, retrieve the full definition:
|
|
87
|
+
\`\`\`bash
|
|
88
|
+
dkk show <id>
|
|
89
|
+
\`\`\`
|
|
90
|
+
4. **Explore relationships** — Discover connected items via graph traversal:
|
|
91
|
+
\`\`\`bash
|
|
92
|
+
dkk related <id> --depth 2
|
|
93
|
+
\`\`\`
|
|
94
|
+
5. **Check ADR links** — Find architecture decisions connected to results:
|
|
95
|
+
\`\`\`bash
|
|
96
|
+
dkk adr related <id>
|
|
97
|
+
\`\`\`
|
|
98
|
+
6. **Compile the answer** — Present results as a structured summary including:
|
|
99
|
+
- Relevant domain items with ID, type, context, name, and excerpt.
|
|
100
|
+
- Related ADRs with title and status.
|
|
101
|
+
- Key relationships between items (e.g. "PlaceOrder → handled by Order → emits OrderPlaced").
|
|
102
|
+
|
|
103
|
+
## Domain Update Workflow
|
|
104
|
+
|
|
105
|
+
When modifying the domain model:
|
|
106
|
+
|
|
107
|
+
1. **Inspect current state** — Load current definitions and neighbours:
|
|
108
|
+
\`\`\`bash
|
|
109
|
+
dkk show <id>
|
|
110
|
+
dkk related <id>
|
|
111
|
+
dkk list --context <name>
|
|
112
|
+
\`\`\`
|
|
113
|
+
2. **Edit YAML files directly** — Apply changes to the appropriate files:
|
|
114
|
+
- **New context:** Create \`.dkk/domain/contexts/<name>/context.yml\` with name/description/glossary, create subdirs (\`events/\`, \`commands/\`, etc.), and register in \`.dkk/domain/index.yml\`.
|
|
115
|
+
- **New domain item:** Create a new \`.yml\` file in the correct subdirectory (e.g. \`.dkk/domain/contexts/<name>/events/OrderPlaced.yml\`).
|
|
116
|
+
- **New actor:** Add to \`.dkk/domain/actors.yml\` under \`actors\`.
|
|
117
|
+
- **New flow:** Add to \`.dkk/domain/index.yml\` under \`flows\`.
|
|
118
|
+
- **Modified item:** Edit the item's \`.yml\` file in place, preserving all existing fields.
|
|
119
|
+
3. **Maintain referential integrity:**
|
|
120
|
+
- \`adr_refs\` must point to existing ADRs in \`.dkk/adr/\`.
|
|
121
|
+
- \`domain_refs\` in ADR frontmatter must point to existing domain items.
|
|
122
|
+
- Update cross-references (\`handles\`, \`emits\`, \`triggers\`, \`subscribes_to\`, \`used_by\`, \`raised_by\`, \`handled_by\`, \`actor\`) on related items to stay consistent.
|
|
123
|
+
- Every new event should have \`raised_by\` pointing to its aggregate.
|
|
124
|
+
- Every new command should have \`handled_by\` pointing to its aggregate.
|
|
125
|
+
- Update aggregate \`handles.commands\` and \`emits.events\` arrays when adding commands/events.
|
|
126
|
+
4. **Follow naming conventions:**
|
|
127
|
+
- Items: PascalCase (\`OrderPlaced\`, \`PlaceOrder\`).
|
|
128
|
+
- Contexts: kebab-case (\`ordering\`, \`inventory-management\`).
|
|
129
|
+
- ADR ids: \`adr-NNNN\` (zero-padded 4-digit number).
|
|
130
|
+
- Actors: PascalCase (\`Customer\`, \`PaymentGateway\`).
|
|
131
|
+
5. **Update ADRs** — If the change affects an architectural decision:
|
|
132
|
+
- Add \`domain_refs\` to the ADR frontmatter for new items.
|
|
133
|
+
- Add \`adr_refs\` to new/modified domain items pointing to relevant ADRs.
|
|
134
|
+
- Consider creating a new ADR if the change introduces a significant decision.
|
|
135
|
+
6. **Run quality gates:**
|
|
136
|
+
\`\`\`bash
|
|
137
|
+
dkk render # Validates → renders docs → rebuilds search index
|
|
138
|
+
\`\`\`
|
|
139
|
+
|
|
140
|
+
### YAML Structure Reference
|
|
141
|
+
|
|
142
|
+
Each domain item is a separate YAML file in a typed subdirectory under the context directory.
|
|
143
|
+
|
|
144
|
+
**Context metadata** (\`.dkk/domain/contexts/<name>/context.yml\`):
|
|
145
|
+
|
|
146
|
+
\`\`\`yaml
|
|
147
|
+
name: ordering
|
|
148
|
+
description: Handles customer order lifecycle.
|
|
149
|
+
glossary:
|
|
150
|
+
- term: Order
|
|
151
|
+
definition: A customer's request to purchase items.
|
|
152
|
+
\`\`\`
|
|
153
|
+
|
|
154
|
+
**Event** (\`.dkk/domain/contexts/<name>/events/OrderPlaced.yml\`):
|
|
155
|
+
|
|
156
|
+
\`\`\`yaml
|
|
157
|
+
name: OrderPlaced
|
|
158
|
+
description: Raised when a customer order is confirmed.
|
|
159
|
+
fields:
|
|
160
|
+
- name: orderId
|
|
161
|
+
type: UUID
|
|
162
|
+
raised_by: Order
|
|
163
|
+
adr_refs:
|
|
164
|
+
- adr-0001
|
|
165
|
+
\`\`\`
|
|
166
|
+
|
|
167
|
+
**Command** (\`.dkk/domain/contexts/<name>/commands/PlaceOrder.yml\`):
|
|
168
|
+
|
|
169
|
+
\`\`\`yaml
|
|
170
|
+
name: PlaceOrder
|
|
171
|
+
description: Submit a new customer order.
|
|
172
|
+
fields:
|
|
173
|
+
- name: items
|
|
174
|
+
type: "OrderItem[]"
|
|
175
|
+
actor: Customer
|
|
176
|
+
handled_by: Order
|
|
177
|
+
\`\`\`
|
|
178
|
+
|
|
179
|
+
**Policy** (\`.dkk/domain/contexts/<name>/policies/SendConfirmationEmail.yml\`):
|
|
180
|
+
|
|
181
|
+
\`\`\`yaml
|
|
182
|
+
name: SendConfirmationEmail
|
|
183
|
+
description: Sends email when order is placed.
|
|
184
|
+
when:
|
|
185
|
+
events:
|
|
186
|
+
- OrderPlaced
|
|
187
|
+
then:
|
|
188
|
+
commands:
|
|
189
|
+
- NotifyCustomer
|
|
190
|
+
\`\`\`
|
|
191
|
+
|
|
192
|
+
**Aggregate** (\`.dkk/domain/contexts/<name>/aggregates/Order.yml\`):
|
|
193
|
+
|
|
194
|
+
\`\`\`yaml
|
|
195
|
+
name: Order
|
|
196
|
+
description: Manages order state and invariants.
|
|
197
|
+
handles:
|
|
198
|
+
commands:
|
|
199
|
+
- PlaceOrder
|
|
200
|
+
emits:
|
|
201
|
+
events:
|
|
202
|
+
- OrderPlaced
|
|
203
|
+
\`\`\`
|
|
204
|
+
|
|
205
|
+
**Read model** (\`.dkk/domain/contexts/<name>/read-models/OrderSummary.yml\`):
|
|
206
|
+
|
|
207
|
+
\`\`\`yaml
|
|
208
|
+
name: OrderSummary
|
|
209
|
+
description: Read-optimized view of order details.
|
|
210
|
+
subscribes_to:
|
|
211
|
+
- OrderPlaced
|
|
212
|
+
used_by:
|
|
213
|
+
- Customer
|
|
214
|
+
\`\`\`
|
|
215
|
+
|
|
216
|
+
**Actors file** (\`.dkk/domain/actors.yml\`):
|
|
217
|
+
|
|
218
|
+
\`\`\`yaml
|
|
219
|
+
actors:
|
|
220
|
+
- name: Customer
|
|
221
|
+
type: human
|
|
222
|
+
description: End user who places and tracks orders.
|
|
223
|
+
\`\`\`
|
|
224
|
+
|
|
225
|
+
**Index file** (\`.dkk/domain/index.yml\`):
|
|
226
|
+
|
|
227
|
+
\`\`\`yaml
|
|
228
|
+
contexts:
|
|
229
|
+
- name: ordering
|
|
230
|
+
description: Handles customer order lifecycle.
|
|
231
|
+
flows:
|
|
232
|
+
- name: OrderFulfillment
|
|
233
|
+
description: End-to-end order processing flow.
|
|
234
|
+
steps:
|
|
235
|
+
- ref: ordering.PlaceOrder
|
|
236
|
+
type: command
|
|
237
|
+
- ref: ordering.OrderPlaced
|
|
238
|
+
type: event
|
|
239
|
+
\`\`\`
|
|
240
|
+
|
|
241
|
+
## Change Review Workflow
|
|
242
|
+
|
|
243
|
+
When reviewing changes for domain impact:
|
|
244
|
+
|
|
245
|
+
1. **Understand the change** — Identify affected bounded contexts, domain concepts, and whether items are added, modified, or removed.
|
|
246
|
+
2. **Search for impacted items** — For each concept in the change:
|
|
247
|
+
\`\`\`bash
|
|
248
|
+
dkk search "<concept>"
|
|
249
|
+
\`\`\`
|
|
250
|
+
3. **Inspect impacted items** — Show current definitions:
|
|
251
|
+
\`\`\`bash
|
|
252
|
+
dkk show <id>
|
|
253
|
+
\`\`\`
|
|
254
|
+
4. **Trace the blast radius** — Use graph traversal to find dependent items:
|
|
255
|
+
\`\`\`bash
|
|
256
|
+
dkk related <id> --depth 2
|
|
257
|
+
\`\`\`
|
|
258
|
+
5. **Check invariants** — Run validation:
|
|
259
|
+
\`\`\`bash
|
|
260
|
+
dkk validate
|
|
261
|
+
\`\`\`
|
|
262
|
+
Watch for: broken \`adr_refs\`, broken \`domain_refs\` in ADRs, dangling cross-references, missing context registrations.
|
|
263
|
+
6. **Find linked ADRs** — Identify decisions that may need updating:
|
|
264
|
+
\`\`\`bash
|
|
265
|
+
dkk adr related <id>
|
|
266
|
+
\`\`\`
|
|
267
|
+
7. **Compile impact analysis** — Report impacted items, blast radius, invariant violations, affected ADRs, and recommendations.
|
|
268
|
+
|
|
269
|
+
## Validation
|
|
270
|
+
|
|
271
|
+
The validator checks:
|
|
272
|
+
|
|
273
|
+
- **Schema conformance** — Each YAML file is validated against its JSON Schema.
|
|
274
|
+
- **Cross-references** — All item-to-item, item-to-ADR, and ADR-to-item references resolve correctly.
|
|
275
|
+
- **Context registration** — Every context directory in \`.dkk/domain/contexts/\` is registered in \`.dkk/domain/index.yml\`.
|
|
276
|
+
|
|
277
|
+
## Generated Documentation
|
|
278
|
+
|
|
279
|
+
Running \`dkk render\` produces:
|
|
280
|
+
|
|
281
|
+
- \`.dkk/docs/index.md\` — Top-level domain overview.
|
|
282
|
+
- \`.dkk/docs/<context>/index.md\` — Per-context overview.
|
|
283
|
+
- \`.dkk/docs/<context>/<ItemName>.md\` — Per-item detail page.
|
|
284
|
+
- SQLite FTS5 search index for the \`search\` command.
|
|
285
|
+
|
|
286
|
+
Do not edit files under \`.dkk/docs/\` by hand; they are regenerated on each render.
|
|
287
|
+
|
|
288
|
+
## File Conventions
|
|
289
|
+
|
|
290
|
+
- YAML files use \`.yml\` extension.
|
|
291
|
+
- Names are PascalCase for items (events, commands, etc.) and kebab-case for contexts and ADR ids.
|
|
292
|
+
- JSON Schemas live in \`tools/dkk/schema/\`; Handlebars templates in \`tools/dkk/templates/\`.
|
|
293
|
+
- Generated documentation goes to \`.dkk/docs/\` (do not edit by hand).
|
|
294
|
+
`;
|
|
295
|
+
}
|
|
296
|
+
// ── Dynamic domain summary ───────────────────────────────────────────
|
|
297
|
+
/**
|
|
298
|
+
* Build a dynamic "Current Domain Summary" section from the live domain
|
|
299
|
+
* model on disk. Returns the Markdown string to append after the static
|
|
300
|
+
* instructions.
|
|
301
|
+
*/
|
|
302
|
+
function buildDomainSummary(root) {
|
|
303
|
+
// If there's no .dkk/domain/ directory at all, short-circuit.
|
|
304
|
+
if (!existsSync(domainDir(root))) {
|
|
305
|
+
return ("\n## Current Domain Summary\n\n" +
|
|
306
|
+
"No domain model found. Run `dkk new domain` to get started.\n");
|
|
307
|
+
}
|
|
308
|
+
let model;
|
|
309
|
+
try {
|
|
310
|
+
model = loadDomainModel({ root });
|
|
311
|
+
}
|
|
312
|
+
catch {
|
|
313
|
+
return ("\n## Current Domain Summary\n\n" +
|
|
314
|
+
"No domain model found. Run `dkk new domain` to get started.\n");
|
|
315
|
+
}
|
|
316
|
+
// If there are zero contexts, actors, and ADRs the model is essentially empty.
|
|
317
|
+
if (model.contexts.size === 0 && model.actors.length === 0 && model.adrs.size === 0) {
|
|
318
|
+
return ("\n## Current Domain Summary\n\n" +
|
|
319
|
+
"No domain model found. Run `dkk new domain` to get started.\n");
|
|
320
|
+
}
|
|
321
|
+
const lines = [];
|
|
322
|
+
lines.push("\n## Current Domain Summary\n");
|
|
323
|
+
// ── Global totals ────────────────────────────────────────────────
|
|
324
|
+
const totals = {
|
|
325
|
+
event: 0,
|
|
326
|
+
command: 0,
|
|
327
|
+
policy: 0,
|
|
328
|
+
aggregate: 0,
|
|
329
|
+
read_model: 0,
|
|
330
|
+
glossary: 0,
|
|
331
|
+
};
|
|
332
|
+
for (const ctx of model.contexts.values()) {
|
|
333
|
+
forEachItem(ctx, (type) => {
|
|
334
|
+
totals[type]++;
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
const totalItems = Object.values(totals).reduce((a, b) => a + b, 0);
|
|
338
|
+
lines.push(`**${model.contexts.size}** bounded context(s), ` +
|
|
339
|
+
`**${totalItems}** domain item(s), ` +
|
|
340
|
+
`**${model.actors.length}** actor(s), ` +
|
|
341
|
+
`**${model.adrs.size}** ADR(s)\n`);
|
|
342
|
+
// ── Contexts detail ──────────────────────────────────────────────
|
|
343
|
+
if (model.contexts.size > 0) {
|
|
344
|
+
lines.push("### Contexts\n");
|
|
345
|
+
for (const ctx of model.contexts.values()) {
|
|
346
|
+
const counts = {
|
|
347
|
+
event: 0,
|
|
348
|
+
command: 0,
|
|
349
|
+
policy: 0,
|
|
350
|
+
aggregate: 0,
|
|
351
|
+
read_model: 0,
|
|
352
|
+
glossary: 0,
|
|
353
|
+
};
|
|
354
|
+
forEachItem(ctx, (type) => {
|
|
355
|
+
counts[type]++;
|
|
356
|
+
});
|
|
357
|
+
const parts = [];
|
|
358
|
+
if (counts.event)
|
|
359
|
+
parts.push(`${counts.event} event(s)`);
|
|
360
|
+
if (counts.command)
|
|
361
|
+
parts.push(`${counts.command} command(s)`);
|
|
362
|
+
if (counts.aggregate)
|
|
363
|
+
parts.push(`${counts.aggregate} aggregate(s)`);
|
|
364
|
+
if (counts.policy)
|
|
365
|
+
parts.push(`${counts.policy} policy/policies`);
|
|
366
|
+
if (counts.read_model)
|
|
367
|
+
parts.push(`${counts.read_model} read model(s)`);
|
|
368
|
+
if (counts.glossary)
|
|
369
|
+
parts.push(`${counts.glossary} glossary term(s)`);
|
|
370
|
+
const countStr = parts.length ? ` — ${parts.join(", ")}` : "";
|
|
371
|
+
lines.push(`- **${ctx.name}**: ${ctx.description}${countStr}`);
|
|
372
|
+
}
|
|
373
|
+
lines.push("");
|
|
374
|
+
}
|
|
375
|
+
// ── Actors ────────────────────────────────────────────────────────
|
|
376
|
+
if (model.actors.length > 0) {
|
|
377
|
+
lines.push("### Actors\n");
|
|
378
|
+
for (const actor of model.actors) {
|
|
379
|
+
lines.push(`- **${actor.name}** (${actor.type}): ${actor.description}`);
|
|
380
|
+
}
|
|
381
|
+
lines.push("");
|
|
382
|
+
}
|
|
383
|
+
// ── ADRs ──────────────────────────────────────────────────────────
|
|
384
|
+
if (model.adrs.size > 0) {
|
|
385
|
+
lines.push("### Architecture Decision Records\n");
|
|
386
|
+
for (const adr of model.adrs.values()) {
|
|
387
|
+
lines.push(`- **${adr.id}**: ${adr.title} [${adr.status}]`);
|
|
388
|
+
}
|
|
389
|
+
lines.push("");
|
|
390
|
+
}
|
|
391
|
+
// ── Key relationships (aggregates → commands / events) ────────────
|
|
392
|
+
const aggregates = [];
|
|
393
|
+
for (const ctx of model.contexts.values()) {
|
|
394
|
+
for (const agg of ctx.aggregates ?? []) {
|
|
395
|
+
aggregates.push({ ctx: ctx.name, agg });
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
if (aggregates.length > 0) {
|
|
399
|
+
lines.push("### Key Relationships\n");
|
|
400
|
+
for (const { ctx, agg } of aggregates) {
|
|
401
|
+
const cmds = agg.handles?.commands ?? [];
|
|
402
|
+
const evts = agg.emits?.events ?? [];
|
|
403
|
+
const cmdStr = cmds.length ? cmds.join(", ") : "none";
|
|
404
|
+
const evtStr = evts.length ? evts.join(", ") : "none";
|
|
405
|
+
lines.push(`- **${ctx}.${agg.name}**: handles [${cmdStr}] → emits [${evtStr}]`);
|
|
406
|
+
}
|
|
407
|
+
lines.push("");
|
|
408
|
+
}
|
|
409
|
+
return lines.join("\n");
|
|
410
|
+
}
|
|
411
|
+
/** Register the `prime` subcommand. */
|
|
412
|
+
export function registerPrime(program) {
|
|
413
|
+
program
|
|
414
|
+
.command("prime")
|
|
415
|
+
.description("Output full DKK agent context to stdout")
|
|
416
|
+
.option("-r, --root <path>", "Override repository root")
|
|
417
|
+
.option("--static-only", "Output only the static instructions (skip domain summary)")
|
|
418
|
+
.action((opts) => {
|
|
419
|
+
process.stdout.write(primeContent());
|
|
420
|
+
if (!opts.staticOnly) {
|
|
421
|
+
process.stdout.write(buildDomainSummary(opts.root));
|
|
422
|
+
}
|
|
423
|
+
});
|
|
424
|
+
}
|
|
425
|
+
//# sourceMappingURL=prime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prime.js","sourceRoot":"","sources":["../../../../src/features/agent/commands/prime.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,7 +22,7 @@ export interface IndexRow {
|
|
|
22
22
|
export interface IndexerOptions {
|
|
23
23
|
/** Override repository root. */
|
|
24
24
|
root?: string;
|
|
25
|
-
/** Override output path (default: `<root>/.
|
|
25
|
+
/** Override output path (default: `<root>/.dkk/index.db`). */
|
|
26
26
|
dbPath?: string;
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../../src/features/pipeline/indexer.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,WAAW,EAAqE,MAAM,8BAA8B,CAAC;AAUnI,wDAAwD;AACxD,MAAM,WAAW,QAAQ;IACvB,4EAA4E;IAC5E,EAAE,EAAE,MAAM,CAAC;IACX,8GAA8G;IAC9G,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,+BAA+B;AAC/B,MAAM,WAAW,cAAc;IAC7B,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,
|
|
1
|
+
{"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../../src/features/pipeline/indexer.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,WAAW,EAAqE,MAAM,8BAA8B,CAAC;AAUnI,wDAAwD;AACxD,MAAM,WAAW,QAAQ;IACvB,4EAA4E;IAC5E,EAAE,EAAE,MAAM,CAAC;IACX,8GAA8G;IAC9G,IAAI,EAAE,MAAM,CAAC;IACb,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,SAAS,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,+BAA+B;AAC/B,MAAM,WAAW,cAAc;IAC7B,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAiBD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,GAAE,cAAmB,GAAG,MAAM,CAgEnF"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* SQLite FTS5 indexer for domain items.
|
|
3
3
|
*
|
|
4
|
-
* Creates / rebuilds an SQLite database at `.
|
|
4
|
+
* Creates / rebuilds an SQLite database at `.dkk/index.db`
|
|
5
5
|
* with an FTS5 virtual table `domain_fts` for full-text search across
|
|
6
6
|
* all items in the loaded {@link DomainModel}.
|
|
7
7
|
*
|
|
@@ -41,7 +41,7 @@ function fieldsText(fields) {
|
|
|
41
41
|
*/
|
|
42
42
|
export function buildIndex(model, options = {}) {
|
|
43
43
|
const root = options.root ?? repoRoot();
|
|
44
|
-
const dbPath = options.dbPath ?? join(root, ".
|
|
44
|
+
const dbPath = options.dbPath ?? join(root, ".dkk", "index.db");
|
|
45
45
|
// Ensure the parent directory exists.
|
|
46
46
|
const dir = dirname(dbPath);
|
|
47
47
|
if (!existsSync(dir)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexer.js","sourceRoot":"","sources":["../../../src/features/pipeline/indexer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,sEAAsE;AACtE,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAoC,CAAC;AAgC9E,yEAAyE;AAEzE,6DAA6D;AAC7D,SAAS,QAAQ,CAAC,GAAG,KAA6B;IAChD,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzC,CAAC;AAED,2DAA2D;AAC3D,SAAS,UAAU,CAAC,MAA+D;IACjF,IAAI,CAAC,MAAM,EAAE,MAAM;QAAE,OAAO,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvG,CAAC;AAED,yEAAyE;AAEzE;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,KAAkB,EAAE,UAA0B,EAAE;IACzE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"indexer.js","sourceRoot":"","sources":["../../../src/features/pipeline/indexer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,sEAAsE;AACtE,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAoC,CAAC;AAgC9E,yEAAyE;AAEzE,6DAA6D;AAC7D,SAAS,QAAQ,CAAC,GAAG,KAA6B;IAChD,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzC,CAAC;AAED,2DAA2D;AAC3D,SAAS,UAAU,CAAC,MAA+D;IACjF,IAAI,CAAC,MAAM,EAAE,MAAM;QAAE,OAAO,EAAE,CAAC;IAC/B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvG,CAAC;AAED,yEAAyE;AAEzE;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,KAAkB,EAAE,UAA0B,EAAE;IACzE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAEhE,sCAAsC;IACtC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEhC,IAAI,CAAC;QACH,4CAA4C;QAC5C,EAAE,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QAC5C,EAAE,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QAE7C,6BAA6B;QAC7B,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;KAYP,CAAC,CAAC;QAEH,yCAAyC;QACzC,EAAE,CAAC,IAAI,CAAC;;;;;KAKP,CAAC,CAAC;QACH,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAClE,UAAU,EACV,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CACzB,CAAC;QAEF,gCAAgC;QAChC,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC;;;KAGzB,CAAC,CAAC;QAEH,4DAA4D;QAC5D,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,IAAgB,EAAE,EAAE;YACpD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QAChC,SAAS,CAAC,IAAI,CAAC,CAAC;QAEhB,OAAO,MAAM,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,yEAAyE;AAEzE;;;GAGG;AACH,SAAS,WAAW,CAAC,KAAkB;IACrC,MAAM,IAAI,GAAe,EAAE,CAAC;IAE5B,qEAAqE;IAErE,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC;YACR,EAAE,EAAE,SAAS,KAAK,CAAC,IAAI,EAAE;YACzB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC;YACjC,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;SAC9C,CAAC,CAAC;IACL,CAAC;IAED,mEAAmE;IAEnE,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC5C,iBAAiB;QACjB,IAAI,CAAC,IAAI,CAAC;YACR,EAAE,EAAE,WAAW,OAAO,EAAE;YACxB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC;YAC/B,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,gEAAgE;QAChE,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YACpC,MAAM,EAAE,GAAG,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAExD,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,UAAU,CAAC,CAAC,CAAC;oBAChB,MAAM,KAAK,GAAG,IAAqB,CAAC;oBACpC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;oBACpC,IAAI,CAAC,IAAI,CAAC;wBACR,EAAE;wBACF,IAAI,EAAE,UAAU;wBAChB,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;wBACvB,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,OAAO,CAAC;wBAC5C,SAAS,EAAE,IAAI;wBACf,OAAO;qBACR,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBACD,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,MAAM,GAAG,GAAG,IAAmB,CAAC;oBAChC,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,IAAI,GAAG,CAAC,SAAS;wBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;oBAC9D,IAAI,CAAC,IAAI,CAAC;wBACR,EAAE;wBACF,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,EAAE;wBACR,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;wBAClF,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;wBACjC,OAAO;qBACR,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBACD,KAAK,SAAS,CAAC,CAAC,CAAC;oBACf,MAAM,GAAG,GAAG,IAAe,CAAC;oBAC5B,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,IAAI,GAAG,CAAC,UAAU;wBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;oBAChE,IAAI,GAAG,CAAC,KAAK;wBAAE,MAAM,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBACjD,IAAI,CAAC,IAAI,CAAC;wBACR,EAAE;wBACF,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,EAAE;wBACR,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;wBAChH,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;wBACjC,OAAO;qBACR,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,MAAM,GAAG,GAAG,IAAc,CAAC;oBAC3B,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE;wBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;oBACvE,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE;wBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;oBACzE,IAAI,CAAC,IAAI,CAAC;wBACR,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,EAAE;wBACR,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC;wBAC/B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;wBACjC,OAAO;qBACR,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBACD,KAAK,WAAW,CAAC,CAAC,CAAC;oBACjB,MAAM,GAAG,GAAG,IAAiB,CAAC;oBAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE;wBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;oBAC5E,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE;wBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;oBACxE,IAAI,CAAC,IAAI,CAAC;wBACR,EAAE;wBACF,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,IAAI,EAAE,EAAE;wBACR,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;wBAC1D,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;wBACjC,OAAO;qBACR,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBACD,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,EAAE,GAAG,IAAiB,CAAC;oBAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;oBAC5B,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,aAAa,IAAI,EAAE;wBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;oBAC3E,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,OAAO,IAAI,EAAE;wBAAE,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;oBAClE,IAAI,CAAC,IAAI,CAAC;wBACR,EAAE;wBACF,IAAI,EAAE,YAAY;wBAClB,OAAO,EAAE,OAAO;wBAChB,IAAI,EAAE,EAAE,CAAC,IAAI;wBACb,IAAI,EAAE,EAAE;wBACR,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC;wBAC9B,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;wBACjC,OAAO;qBACR,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qEAAqE;IAErE,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,GAAG,IAAI,GAAG,CAAC,WAAW,IAAI,EAAE;YAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1D,IAAI,GAAG,CAAC,aAAa;YAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,CAAC;YACR,EAAE,EAAE,KAAK;YACT,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,GAAG,CAAC,KAAK;YACf,IAAI,EAAE,GAAG,CAAC,MAAM;YAChB,IAAI,EAAE,QAAQ,CACZ,GAAG,CAAC,KAAK,EACT,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,EACvB,GAAG,CAAC,IAAI,CACT;YACD,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;YACjC,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;IACL,CAAC;IAED,qEAAqE;IAErE,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC;YACR,EAAE,EAAE,QAAQ,IAAI,CAAC,IAAI,EAAE;YACvB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAa,CAAC,CAAC;YAC3E,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;YACnC,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Domain documentation renderer.
|
|
3
3
|
*
|
|
4
|
-
* Compiles Handlebars templates from `tools/
|
|
5
|
-
* and renders Markdown documentation to
|
|
4
|
+
* Compiles Handlebars templates from `tools/dkk/templates/`
|
|
5
|
+
* and renders Markdown documentation to `.dkk/docs/`.
|
|
6
6
|
*
|
|
7
7
|
* Output structure:
|
|
8
|
-
* docs/
|
|
8
|
+
* .dkk/docs/
|
|
9
9
|
* index.md ← top-level domain overview
|
|
10
10
|
* <context>/
|
|
11
11
|
* index.md ← per-context overview
|
|
@@ -32,9 +32,9 @@ export interface RenderResult {
|
|
|
32
32
|
* Render the full domain model as Markdown documentation.
|
|
33
33
|
*
|
|
34
34
|
* 1. Compiles Handlebars templates
|
|
35
|
-
* 2. Renders
|
|
36
|
-
* 3. For each bounded context renders
|
|
37
|
-
* 4. For each item in a context renders
|
|
35
|
+
* 2. Renders `.dkk/docs/index.md`
|
|
36
|
+
* 3. For each bounded context renders `.dkk/docs/<ctx>/index.md`
|
|
37
|
+
* 4. For each item in a context renders `.dkk/docs/<ctx>/<Item>.md`
|
|
38
38
|
*
|
|
39
39
|
* @returns A {@link RenderResult} with file count and paths.
|
|
40
40
|
*/
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Domain documentation renderer.
|
|
3
3
|
*
|
|
4
|
-
* Compiles Handlebars templates from `tools/
|
|
5
|
-
* and renders Markdown documentation to
|
|
4
|
+
* Compiles Handlebars templates from `tools/dkk/templates/`
|
|
5
|
+
* and renders Markdown documentation to `.dkk/docs/`.
|
|
6
6
|
*
|
|
7
7
|
* Output structure:
|
|
8
|
-
* docs/
|
|
8
|
+
* .dkk/docs/
|
|
9
9
|
* index.md ← top-level domain overview
|
|
10
10
|
* <context>/
|
|
11
11
|
* index.md ← per-context overview
|
|
@@ -174,15 +174,15 @@ function writeOutput(filePath, content, written) {
|
|
|
174
174
|
* Render the full domain model as Markdown documentation.
|
|
175
175
|
*
|
|
176
176
|
* 1. Compiles Handlebars templates
|
|
177
|
-
* 2. Renders
|
|
178
|
-
* 3. For each bounded context renders
|
|
179
|
-
* 4. For each item in a context renders
|
|
177
|
+
* 2. Renders `.dkk/docs/index.md`
|
|
178
|
+
* 3. For each bounded context renders `.dkk/docs/<ctx>/index.md`
|
|
179
|
+
* 4. For each item in a context renders `.dkk/docs/<ctx>/<Item>.md`
|
|
180
180
|
*
|
|
181
181
|
* @returns A {@link RenderResult} with file count and paths.
|
|
182
182
|
*/
|
|
183
183
|
export function renderDocs(model, options = {}) {
|
|
184
184
|
const outDir = options.outputDir ?? docsDir(options.root);
|
|
185
|
-
const tplDir = options.templateDir ?? templatesDir(
|
|
185
|
+
const tplDir = options.templateDir ?? templatesDir();
|
|
186
186
|
const written = [];
|
|
187
187
|
// Register helpers and compile templates
|
|
188
188
|
registerHelpers(Handlebars);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../../src/features/pipeline/renderer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../../src/features/pipeline/renderer.ts"],"names":[],"mappings":"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"}
|