domain-knowledge-kit 0.1.0 → 0.2.7
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 +92 -228
- package/dist/cli.js +4 -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 +76 -0
- package/dist/features/agent/commands/init.js.map +1 -0
- package/dist/features/agent/commands/prime.d.ts +12 -0
- package/dist/features/agent/commands/prime.d.ts.map +1 -0
- package/dist/features/agent/commands/prime.js +273 -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 +6 -6
- package/dist/features/pipeline/tests/indexer.test.js +2 -2
- 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 +5 -5
- 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/searcher.js +1 -1
- package/dist/features/query/searcher.js.map +1 -1
- package/dist/features/query/tests/searcher.test.js +2 -2
- package/dist/features/query/tests/searcher.test.js.map +1 -1
- package/dist/shared/adr-parser.js +1 -1
- package/dist/shared/loader.d.ts +1 -1
- package/dist/shared/loader.js +2 -2
- package/dist/shared/paths.d.ts +4 -4
- package/dist/shared/paths.d.ts.map +1 -1
- package/dist/shared/paths.js +8 -8
- package/dist/shared/paths.js.map +1 -1
- package/dist/shared/tests/graph.test.js +1 -1
- package/dist/shared/tests/loader.test.js +3 -3
- package/dist/shared/tests/verify-collision-fix.test.js +1 -1
- package/dist/shared/types/domain.d.ts +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,273 @@
|
|
|
1
|
+
/** The full agent context document. */
|
|
2
|
+
function primeContent() {
|
|
3
|
+
return `# Domain Knowledge Kit — Agent Context
|
|
4
|
+
|
|
5
|
+
## Project Overview
|
|
6
|
+
|
|
7
|
+
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\`.
|
|
8
|
+
|
|
9
|
+
## Core Principles
|
|
10
|
+
|
|
11
|
+
1. **Domain YAML is the single source of truth.** Never generate domain knowledge from code; always read and edit the YAML files under \`domain/\`.
|
|
12
|
+
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\`.
|
|
13
|
+
3. **Every change to domain files must pass quality gates:** run \`dkk validate\` then \`dkk render\` before committing.
|
|
14
|
+
|
|
15
|
+
## Domain Model Structure
|
|
16
|
+
|
|
17
|
+
\`\`\`
|
|
18
|
+
domain/
|
|
19
|
+
index.yml # Top-level: registered contexts + cross-context flows
|
|
20
|
+
actors.yml # Global actors (human | system | external)
|
|
21
|
+
contexts/
|
|
22
|
+
<name>.yml # Bounded context with events, commands, policies,
|
|
23
|
+
# aggregates, read_models, glossary
|
|
24
|
+
.dkk/
|
|
25
|
+
adr/
|
|
26
|
+
adr-NNNN.md # Architecture Decision Records (YAML frontmatter)
|
|
27
|
+
\`\`\`
|
|
28
|
+
|
|
29
|
+
## Item Types
|
|
30
|
+
|
|
31
|
+
| Type | Description | Key Fields |
|
|
32
|
+
|------|-------------|------------|
|
|
33
|
+
| **Event** | Something that happened in the domain | \`name\`, \`description\`, \`fields\`, \`raised_by\`, \`adr_refs\` |
|
|
34
|
+
| **Command** | An instruction to change state | \`name\`, \`description\`, \`fields\`, \`actor\`, \`handled_by\`, \`adr_refs\` |
|
|
35
|
+
| **Policy** | Reactive logic triggered by events | \`name\`, \`description\`, \`when\`, \`then\`, \`adr_refs\` |
|
|
36
|
+
| **Aggregate** | Consistency boundary handling commands | \`name\`, \`description\`, \`handles\`, \`emits\`, \`adr_refs\` |
|
|
37
|
+
| **Read Model** | Query-optimized projection | \`name\`, \`description\`, \`subscribes_to\`, \`used_by\`, \`adr_refs\` |
|
|
38
|
+
| **Glossary** | Ubiquitous language term | \`term\`, \`definition\`, \`aliases\`, \`adr_refs\` |
|
|
39
|
+
| **Actor** | Person or system interacting with the domain | \`name\`, \`type\` (human/system/external), \`description\`, \`adr_refs\` |
|
|
40
|
+
| **Flow** | Cross-context sequence of steps | \`name\`, \`description\`, \`steps[]\` |
|
|
41
|
+
|
|
42
|
+
## ID Conventions
|
|
43
|
+
|
|
44
|
+
| Item Type | ID Format | Example |
|
|
45
|
+
|--------------|------------------------------------|----------------------------|
|
|
46
|
+
| Context item | \`<context>.<ItemName>\` | \`ordering.OrderPlaced\` |
|
|
47
|
+
| Actor | \`actor.<Name>\` | \`actor.Customer\` |
|
|
48
|
+
| ADR | \`adr-NNNN\` | \`adr-0001\` |
|
|
49
|
+
| Flow | \`flow.<Name>\` | \`flow.OrderFulfillment\` |
|
|
50
|
+
| Context | \`context.<name>\` | \`context.ordering\` |
|
|
51
|
+
|
|
52
|
+
## CLI Command Reference
|
|
53
|
+
|
|
54
|
+
| Command | Purpose |
|
|
55
|
+
|-------------------------------|------------------------------------------------------|
|
|
56
|
+
| \`dkk list\` | List all domain items (filterable by \`--context\`, \`--type\`) |
|
|
57
|
+
| \`dkk show <id>\` | Display full YAML of a domain item |
|
|
58
|
+
| \`dkk search <query>\` | FTS5 full-text search with ranking |
|
|
59
|
+
| \`dkk related <id>\` | BFS graph traversal of related items |
|
|
60
|
+
| \`dkk validate\` | Schema + cross-reference validation |
|
|
61
|
+
| \`dkk render\` | Validate → render docs → rebuild search index |
|
|
62
|
+
| \`dkk adr show <id>\` | Display ADR frontmatter |
|
|
63
|
+
| \`dkk adr related <id>\` | Show bidirectional ADR ↔ domain links |
|
|
64
|
+
| \`dkk init\` | Create/update AGENTS.md with DKK section |
|
|
65
|
+
| \`dkk prime\` | Output this agent context to stdout |
|
|
66
|
+
|
|
67
|
+
## Domain Search Workflow
|
|
68
|
+
|
|
69
|
+
When answering questions about the domain, always query the model — never guess.
|
|
70
|
+
|
|
71
|
+
1. **Parse the request** — Extract key concepts, entity names, and domain terms.
|
|
72
|
+
2. **Search** — Run full-text search for each key concept:
|
|
73
|
+
\`\`\`bash
|
|
74
|
+
dkk search "<concept>"
|
|
75
|
+
\`\`\`
|
|
76
|
+
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).
|
|
77
|
+
3. **Show details** — For each relevant result, retrieve the full definition:
|
|
78
|
+
\`\`\`bash
|
|
79
|
+
dkk show <id>
|
|
80
|
+
\`\`\`
|
|
81
|
+
4. **Explore relationships** — Discover connected items via graph traversal:
|
|
82
|
+
\`\`\`bash
|
|
83
|
+
dkk related <id> --depth 2
|
|
84
|
+
\`\`\`
|
|
85
|
+
5. **Check ADR links** — Find architecture decisions connected to results:
|
|
86
|
+
\`\`\`bash
|
|
87
|
+
dkk adr related <id>
|
|
88
|
+
\`\`\`
|
|
89
|
+
6. **Compile the answer** — Present results as a structured summary including:
|
|
90
|
+
- Relevant domain items with ID, type, context, name, and excerpt.
|
|
91
|
+
- Related ADRs with title and status.
|
|
92
|
+
- Key relationships between items (e.g. "PlaceOrder → handled by Order → emits OrderPlaced").
|
|
93
|
+
|
|
94
|
+
## Domain Update Workflow
|
|
95
|
+
|
|
96
|
+
When modifying the domain model:
|
|
97
|
+
|
|
98
|
+
1. **Inspect current state** — Load current definitions and neighbours:
|
|
99
|
+
\`\`\`bash
|
|
100
|
+
dkk show <id>
|
|
101
|
+
dkk related <id>
|
|
102
|
+
dkk list --context <name>
|
|
103
|
+
\`\`\`
|
|
104
|
+
2. **Edit YAML files directly** — Apply changes to the appropriate files:
|
|
105
|
+
- **New context:** Create \`domain/contexts/<name>.yml\` and register in \`domain/index.yml\`.
|
|
106
|
+
- **New domain item:** Add to the correct array (\`events\`, \`commands\`, \`policies\`, \`aggregates\`, \`read_models\`, \`glossary\`) in \`domain/contexts/<name>.yml\`.
|
|
107
|
+
- **New actor:** Add to \`domain/actors.yml\` under \`actors\`.
|
|
108
|
+
- **New flow:** Add to \`domain/index.yml\` under \`flows\`.
|
|
109
|
+
- **Modified item:** Edit in place, preserving all existing fields.
|
|
110
|
+
3. **Maintain referential integrity:**
|
|
111
|
+
- \`adr_refs\` must point to existing ADRs in \`.dkk/adr/\`.
|
|
112
|
+
- \`domain_refs\` in ADR frontmatter must point to existing domain items.
|
|
113
|
+
- Update cross-references (\`handles\`, \`emits\`, \`triggers\`, \`subscribes_to\`, \`used_by\`, \`raised_by\`, \`handled_by\`, \`actor\`) on related items to stay consistent.
|
|
114
|
+
- Every new event should have \`raised_by\` pointing to its aggregate.
|
|
115
|
+
- Every new command should have \`handled_by\` pointing to its aggregate.
|
|
116
|
+
- Update aggregate \`handles\` and \`emits\` arrays when adding commands/events.
|
|
117
|
+
4. **Follow naming conventions:**
|
|
118
|
+
- Items: PascalCase (\`OrderPlaced\`, \`PlaceOrder\`).
|
|
119
|
+
- Contexts: kebab-case (\`ordering\`, \`inventory-management\`).
|
|
120
|
+
- ADR ids: \`adr-NNNN\` (zero-padded 4-digit number).
|
|
121
|
+
- Actors: PascalCase (\`Customer\`, \`PaymentGateway\`).
|
|
122
|
+
5. **Update ADRs** — If the change affects an architectural decision:
|
|
123
|
+
- Add \`domain_refs\` to the ADR frontmatter for new items.
|
|
124
|
+
- Add \`adr_refs\` to new/modified domain items pointing to relevant ADRs.
|
|
125
|
+
- Consider creating a new ADR if the change introduces a significant decision.
|
|
126
|
+
6. **Run quality gates:**
|
|
127
|
+
\`\`\`bash
|
|
128
|
+
dkk validate
|
|
129
|
+
dkk render
|
|
130
|
+
\`\`\`
|
|
131
|
+
|
|
132
|
+
### YAML Structure Reference
|
|
133
|
+
|
|
134
|
+
**Context file** (\`domain/contexts/<name>.yml\`):
|
|
135
|
+
|
|
136
|
+
\`\`\`yaml
|
|
137
|
+
name: ordering
|
|
138
|
+
description: Handles customer order lifecycle.
|
|
139
|
+
glossary:
|
|
140
|
+
- term: Order
|
|
141
|
+
definition: A customer's request to purchase items.
|
|
142
|
+
events:
|
|
143
|
+
- name: OrderPlaced
|
|
144
|
+
description: Raised when a customer order is confirmed.
|
|
145
|
+
fields:
|
|
146
|
+
- name: orderId
|
|
147
|
+
type: UUID
|
|
148
|
+
raised_by: Order
|
|
149
|
+
adr_refs:
|
|
150
|
+
- adr-0001
|
|
151
|
+
commands:
|
|
152
|
+
- name: PlaceOrder
|
|
153
|
+
description: Submit a new customer order.
|
|
154
|
+
fields:
|
|
155
|
+
- name: items
|
|
156
|
+
type: "OrderItem[]"
|
|
157
|
+
actor: Customer
|
|
158
|
+
handled_by: Order
|
|
159
|
+
policies:
|
|
160
|
+
- name: SendConfirmationEmail
|
|
161
|
+
description: Sends email when order is placed.
|
|
162
|
+
when:
|
|
163
|
+
events:
|
|
164
|
+
- OrderPlaced
|
|
165
|
+
then:
|
|
166
|
+
commands:
|
|
167
|
+
- NotifyCustomer
|
|
168
|
+
aggregates:
|
|
169
|
+
- name: Order
|
|
170
|
+
description: Manages order state and invariants.
|
|
171
|
+
handles:
|
|
172
|
+
- PlaceOrder
|
|
173
|
+
emits:
|
|
174
|
+
- OrderPlaced
|
|
175
|
+
read_models:
|
|
176
|
+
- name: OrderSummary
|
|
177
|
+
description: Read-optimized view of order details.
|
|
178
|
+
subscribes_to:
|
|
179
|
+
- OrderPlaced
|
|
180
|
+
used_by:
|
|
181
|
+
- Customer
|
|
182
|
+
\`\`\`
|
|
183
|
+
|
|
184
|
+
**Actors file** (\`domain/actors.yml\`):
|
|
185
|
+
|
|
186
|
+
\`\`\`yaml
|
|
187
|
+
actors:
|
|
188
|
+
- name: Customer
|
|
189
|
+
type: human
|
|
190
|
+
description: End user who places and tracks orders.
|
|
191
|
+
\`\`\`
|
|
192
|
+
|
|
193
|
+
**Index file** (\`domain/index.yml\`):
|
|
194
|
+
|
|
195
|
+
\`\`\`yaml
|
|
196
|
+
contexts:
|
|
197
|
+
- name: ordering
|
|
198
|
+
description: Handles customer order lifecycle.
|
|
199
|
+
flows:
|
|
200
|
+
- name: OrderFulfillment
|
|
201
|
+
description: End-to-end order processing flow.
|
|
202
|
+
steps:
|
|
203
|
+
- ref: ordering.PlaceOrder
|
|
204
|
+
type: command
|
|
205
|
+
- ref: ordering.OrderPlaced
|
|
206
|
+
type: event
|
|
207
|
+
\`\`\`
|
|
208
|
+
|
|
209
|
+
## Change Review Workflow
|
|
210
|
+
|
|
211
|
+
When reviewing changes for domain impact:
|
|
212
|
+
|
|
213
|
+
1. **Understand the change** — Identify affected bounded contexts, domain concepts, and whether items are added, modified, or removed.
|
|
214
|
+
2. **Search for impacted items** — For each concept in the change:
|
|
215
|
+
\`\`\`bash
|
|
216
|
+
dkk search "<concept>"
|
|
217
|
+
\`\`\`
|
|
218
|
+
3. **Inspect impacted items** — Show current definitions:
|
|
219
|
+
\`\`\`bash
|
|
220
|
+
dkk show <id>
|
|
221
|
+
\`\`\`
|
|
222
|
+
4. **Trace the blast radius** — Use graph traversal to find dependent items:
|
|
223
|
+
\`\`\`bash
|
|
224
|
+
dkk related <id> --depth 2
|
|
225
|
+
\`\`\`
|
|
226
|
+
5. **Check invariants** — Run validation:
|
|
227
|
+
\`\`\`bash
|
|
228
|
+
dkk validate
|
|
229
|
+
\`\`\`
|
|
230
|
+
Watch for: broken \`adr_refs\`, broken \`domain_refs\` in ADRs, dangling cross-references, missing context registrations.
|
|
231
|
+
6. **Find linked ADRs** — Identify decisions that may need updating:
|
|
232
|
+
\`\`\`bash
|
|
233
|
+
dkk adr related <id>
|
|
234
|
+
\`\`\`
|
|
235
|
+
7. **Compile impact analysis** — Report impacted items, blast radius, invariant violations, affected ADRs, and recommendations.
|
|
236
|
+
|
|
237
|
+
## Validation
|
|
238
|
+
|
|
239
|
+
The validator checks:
|
|
240
|
+
|
|
241
|
+
- **Schema conformance** — Each YAML file is validated against its JSON Schema.
|
|
242
|
+
- **Cross-references** — All item-to-item, item-to-ADR, and ADR-to-item references resolve correctly.
|
|
243
|
+
- **Context registration** — Every context file in \`domain/contexts/\` is registered in \`domain/index.yml\`.
|
|
244
|
+
|
|
245
|
+
## Generated Documentation
|
|
246
|
+
|
|
247
|
+
Running \`dkk render\` produces:
|
|
248
|
+
|
|
249
|
+
- \`.dkk/docs/index.md\` — Top-level domain overview.
|
|
250
|
+
- \`.dkk/docs/<context>/index.md\` — Per-context overview.
|
|
251
|
+
- \`.dkk/docs/<context>/<ItemName>.md\` — Per-item detail page.
|
|
252
|
+
- SQLite FTS5 search index for the \`search\` command.
|
|
253
|
+
|
|
254
|
+
Do not edit files under \`.dkk/docs/\` by hand; they are regenerated on each render.
|
|
255
|
+
|
|
256
|
+
## File Conventions
|
|
257
|
+
|
|
258
|
+
- YAML files use \`.yml\` extension.
|
|
259
|
+
- Names are PascalCase for items (events, commands, etc.) and kebab-case for contexts and ADR ids.
|
|
260
|
+
- JSON Schemas live in \`tools/dkk/schema/\`; Handlebars templates in \`tools/dkk/templates/\`.
|
|
261
|
+
- Generated documentation goes to \`.dkk/docs/\` (do not edit by hand).
|
|
262
|
+
`;
|
|
263
|
+
}
|
|
264
|
+
/** Register the `prime` subcommand. */
|
|
265
|
+
export function registerPrime(program) {
|
|
266
|
+
program
|
|
267
|
+
.command("prime")
|
|
268
|
+
.description("Output full DKK agent context to stdout")
|
|
269
|
+
.action(() => {
|
|
270
|
+
process.stdout.write(primeContent());
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
//# sourceMappingURL=prime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prime.js","sourceRoot":"","sources":["../../../../src/features/agent/commands/prime.ts"],"names":[],"mappings":"AAUA,uCAAuC;AACvC,SAAS,YAAY;IACnB,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmQR,CAAC;AACF,CAAC;AAED,uCAAuC;AACvC,MAAM,UAAU,aAAa,CAAC,OAAY;IACxC,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,yCAAyC,CAAC;SACtD,MAAM,CAAC,GAAG,EAAE;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -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":"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"}
|
|
@@ -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,9 +174,9 @@ 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
|
*/
|
|
@@ -13,8 +13,8 @@ import { buildIndex } from "../indexer.js";
|
|
|
13
13
|
const TMP = join(tmpdir(), `dkk-search-test-${Date.now()}`);
|
|
14
14
|
const DOMAIN = join(TMP, "domain");
|
|
15
15
|
const CONTEXTS = join(DOMAIN, "contexts");
|
|
16
|
-
const ADR_DIR = join(TMP, "
|
|
17
|
-
const DB_PATH = join(TMP, ".
|
|
16
|
+
const ADR_DIR = join(TMP, ".dkk", "adr");
|
|
17
|
+
const DB_PATH = join(TMP, ".dkk", "index.db");
|
|
18
18
|
function setup() {
|
|
19
19
|
mkdirSync(join(CONTEXTS, "ordering", "events"), { recursive: true });
|
|
20
20
|
mkdirSync(join(CONTEXTS, "ordering", "commands"), { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexer.test.js","sourceRoot":"","sources":["../../../../src/features/pipeline/tests/indexer.test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,yEAAyE;AAEzE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,mBAAmB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AACzC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"indexer.test.js","sourceRoot":"","sources":["../../../../src/features/pipeline/tests/indexer.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ function assertContains(label, content, expected) {
|
|
|
28
28
|
const TMP = join(tmpdir(), `dkk-renderer-test-${Date.now()}`);
|
|
29
29
|
const OUT_DIR = join(TMP, "output");
|
|
30
30
|
const TPL_DIR = join(TMP, "templates");
|
|
31
|
-
const REAL_TPL_DIR = join(import.meta.dirname, "../../../..", "tools", "
|
|
31
|
+
const REAL_TPL_DIR = join(import.meta.dirname, "../../../..", "tools", "dkk", "templates");
|
|
32
32
|
function buildModel() {
|
|
33
33
|
const index = {
|
|
34
34
|
contexts: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderer.test.js","sourceRoot":"","sources":["../../../../src/features/pipeline/tests/renderer.test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACpF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAS5C,yEAAyE;AAEzE,IAAI,MAAM,GAAG,CAAC,CAAC;AACf,IAAI,MAAM,GAAG,CAAC,CAAC;AAEf,SAAS,MAAM,CAAC,KAAa,EAAE,SAAkB;IAC/C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC;IAC9B,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,CAAC;QACT,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAa,EAAE,OAAe,EAAE,QAAgB;IACtE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,yEAAyE;AAEzE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,qBAAqB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;AACvC,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"renderer.test.js","sourceRoot":"","sources":["../../../../src/features/pipeline/tests/renderer.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ import { join } from "node:path";
|
|
|
10
10
|
const require = createRequire(import.meta.url);
|
|
11
11
|
const Ajv = require("ajv").default;
|
|
12
12
|
const addFormats = require("ajv-formats").default;
|
|
13
|
-
const SCHEMA_DIR = join(import.meta.dirname, "../../../../tools/
|
|
13
|
+
const SCHEMA_DIR = join(import.meta.dirname, "../../../../tools/dkk/schema");
|
|
14
14
|
const files = readdirSync(SCHEMA_DIR).filter((f) => f.endsWith(".schema.json"));
|
|
15
15
|
// ---- Load all schemas into ajv ----
|
|
16
16
|
const ajv = new Ajv({ allErrors: true, strict: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-schemas.test.js","sourceRoot":"","sources":["../../../../src/features/pipeline/tests/validate-schemas.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,0EAA0E;AAC1E,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,OAAuC,CAAC;AACnE,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,OAA+C,CAAC;AAE1F,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"validate-schemas.test.js","sourceRoot":"","sources":["../../../../src/features/pipeline/tests/validate-schemas.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ import { tmpdir } from "node:os";
|
|
|
10
10
|
import { loadDomainModel } from "../../../shared/loader.js";
|
|
11
11
|
import { validateDomainModel, } from "../validator.js";
|
|
12
12
|
// ── Helpers ───────────────────────────────────────────────────────────
|
|
13
|
-
const SCHEMA_DIR = join(import.meta.dirname, "../../../../tools/
|
|
13
|
+
const SCHEMA_DIR = join(import.meta.dirname, "../../../../tools/dkk/schema");
|
|
14
14
|
let passed = 0;
|
|
15
15
|
let failed = 0;
|
|
16
16
|
function assert(label, condition, detail) {
|
|
@@ -33,7 +33,7 @@ function hasWarning(result, substring) {
|
|
|
33
33
|
function makeTempRoot(suffix) {
|
|
34
34
|
const root = join(tmpdir(), `dkk-validator-${suffix}-${Date.now()}`);
|
|
35
35
|
mkdirSync(join(root, "domain", "contexts"), { recursive: true });
|
|
36
|
-
mkdirSync(join(root, "
|
|
36
|
+
mkdirSync(join(root, ".dkk", "adr"), { recursive: true });
|
|
37
37
|
return root;
|
|
38
38
|
}
|
|
39
39
|
/** Write a YAML string to a file. */
|
|
@@ -118,7 +118,7 @@ function testValidModel() {
|
|
|
118
118
|
" - OrderPlaced",
|
|
119
119
|
].join("\n")]],
|
|
120
120
|
});
|
|
121
|
-
writeAdr(join(root, "
|
|
121
|
+
writeAdr(join(root, ".dkk", "adr"), "0001-use-yaml.md", [
|
|
122
122
|
"id: adr-0001",
|
|
123
123
|
"title: Use YAML for domain models",
|
|
124
124
|
"status: accepted",
|
|
@@ -161,7 +161,7 @@ function testBrokenDomainRefs() {
|
|
|
161
161
|
const root = makeTempRoot("brokendomainref");
|
|
162
162
|
writeYaml(join(root, "domain", "index.yml"), "contexts: []\n");
|
|
163
163
|
writeYaml(join(root, "domain", "actors.yml"), "actors: []\n");
|
|
164
|
-
writeAdr(join(root, "
|
|
164
|
+
writeAdr(join(root, ".dkk", "adr"), "0001-test.md", [
|
|
165
165
|
"id: adr-0001",
|
|
166
166
|
"title: Test",
|
|
167
167
|
"status: accepted",
|
|
@@ -305,7 +305,7 @@ function testBrokenSupersededBy() {
|
|
|
305
305
|
const root = makeTempRoot("superseded");
|
|
306
306
|
writeYaml(join(root, "domain", "index.yml"), "contexts: []\n");
|
|
307
307
|
writeYaml(join(root, "domain", "actors.yml"), "actors: []\n");
|
|
308
|
-
writeAdr(join(root, "
|
|
308
|
+
writeAdr(join(root, ".dkk", "adr"), "0001-old.md", [
|
|
309
309
|
"id: adr-0001",
|
|
310
310
|
"title: Old decision",
|
|
311
311
|
"status: superseded",
|