@ngockhoale/ukit 2.6.5 → 2.6.6

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/CHANGELOG.md CHANGED
@@ -2,6 +2,41 @@
2
2
 
3
3
  All notable changes to UKit are documented here.
4
4
 
5
+ ## 2.6.6 - 2026-09-19
6
+
7
+ Documentation-hardening release — first slice of the
8
+ DOCUMENTATION_IMPROVEMENT_ROADMAP (cycle C24, DOC-001..006). No runtime
9
+ behavior changes: new manifest, new test lanes, doc cleanup, and a shipped
10
+ registry the remaining roadmap items build on.
11
+
12
+ - **DOC-001 — documentation ownership/source registry**: new
13
+ `manifests/documentation.yaml` classifies every active/template/adapter
14
+ documentation surface (owner, source_of_truth, merge_strategy, budget);
15
+ `tests/consistency/docRegistry.test.js` enforces schema, coverage,
16
+ manifest-skip consistency, and `error`-level budgets.
17
+ - **DOC-002 — cross-agent benchmark corpus**: spec + fixtures at
18
+ `tests/fixtures/doc-benchmark/` (corpus index, 4 host files, 9+ task files);
19
+ `tests/benchmarks/docBenchmarkCorpus.test.js` validates structure and
20
+ registry cross-references. Host execution deferred — every host recorded
21
+ `untested` (roadmap-permitted).
22
+ - **DOC-003 — artifact reference-integrity checks**:
23
+ `tests/integration/artifactReferenceIntegrity.test.js` fails when a shipped
24
+ instruction/skill doc references an internal command/file that does not
25
+ resolve into the `npm pack` artifact (or the declared runtime-generated
26
+ allowlist); wired into `yarn test:artifact`.
27
+ - **DOC-004 — owner-file preservation lifecycle tests**:
28
+ `tests/integration/ownerPreservation.test.js` proves install/update/uninstall
29
+ preserve exact bytes and symlink posture of every registry
30
+ `merge_strategy: skip` file, including BOM/CRLF and absent-seed cases.
31
+ - **DOC-005 — STATUS.md live snapshot**: `docs/STATUS.md` shrunk to a ≤150-line
32
+ live snapshot; historical body preserved verbatim at
33
+ `docs/archive/status/STATUS-2026-09-19.md` with two-way links; registry
34
+ budget for STATUS.md flipped to `error`.
35
+ - **DOC-006 — adapter stale-version cleanup**: zero stale `vX.Y.Z` literals on
36
+ adapter doc surfaces (`templates/.codex/README.md`, `.codex/README.md`,
37
+ `templates/ukit/README.md`, `.ukit/README.md`); Codex-specific mechanics
38
+ retained; `tests/consistency/staleVersionProse.test.js` enforces.
39
+
5
40
  ## 2.6.5 - 2026-09-19
6
41
 
7
42
  Stability release — third full audit pass on the 2.6.4 base (cycle C23). 15
@@ -0,0 +1,605 @@
1
+ version: 1
2
+ generated: false
3
+ description: >-
4
+ Machine-readable ownership/source registry for every documentation surface.
5
+ Hand-authored per SPEC §7; enforced by tests/consistency/docRegistry.test.js.
6
+ entries:
7
+ # ── Repo root ────────────────────────────────────────────────────────────
8
+ - id: root-claude-md
9
+ path: CLAUDE.md
10
+ class: canonical
11
+ audience: [agent, maintainer]
12
+ owner: product
13
+ source_of_truth: CLAUDE.md
14
+ merge_strategy: skip
15
+ load_policy: always
16
+ validation: [manual]
17
+ archive_policy: never
18
+ notes: repo-owned copy; never overwritten by ukit install/update
19
+ - id: root-agents-md
20
+ path: AGENTS.md
21
+ class: canonical
22
+ audience: [agent, maintainer]
23
+ owner: product
24
+ source_of_truth: AGENTS.md
25
+ merge_strategy: skip
26
+ load_policy: always
27
+ validation: [manual]
28
+ archive_policy: never
29
+ notes: repo-owned copy; never overwritten by ukit install/update
30
+ - id: root-readme
31
+ path: README.md
32
+ class: canonical
33
+ audience: [user, maintainer, contributor]
34
+ owner: product
35
+ source_of_truth: README.md
36
+ merge_strategy: none
37
+ load_policy: on-demand
38
+ validation: [manual]
39
+ archive_policy: never
40
+ notes: v1.3.1 prose — DOC-107 queued
41
+ - id: root-quick-start
42
+ path: QUICK_START.md
43
+ class: canonical
44
+ audience: [user, maintainer]
45
+ owner: product
46
+ source_of_truth: QUICK_START.md
47
+ merge_strategy: none
48
+ load_policy: on-demand
49
+ validation: [manual]
50
+ archive_policy: never
51
+ notes: maintainer-authored quick start
52
+ - id: root-project-important
53
+ path: PROJECT_IMPORTANT.md
54
+ class: owner
55
+ audience: [owner, agent]
56
+ owner: project-owner
57
+ source_of_truth: PROJECT_IMPORTANT.md
58
+ merge_strategy: skip
59
+ load_policy: always
60
+ validation: [manual]
61
+ archive_policy: owner-decides
62
+ notes: user-authored owner file living in this repo; installed target of manifest `project-important`
63
+ - id: root-changelog
64
+ path: CHANGELOG.md
65
+ class: canonical
66
+ audience: [maintainer, user]
67
+ owner: release
68
+ source_of_truth: CHANGELOG.md
69
+ merge_strategy: none
70
+ load_policy: on-demand
71
+ validation: [manual]
72
+ archive_policy: never
73
+ notes: release record
74
+ - id: registry-self
75
+ path: manifests/documentation.yaml
76
+ class: canonical
77
+ audience: [agent, maintainer]
78
+ owner: product
79
+ source_of_truth: manifests/documentation.yaml
80
+ merge_strategy: none
81
+ load_policy: on-demand
82
+ validation: [test:tests/consistency/docRegistry.test.js]
83
+ archive_policy: never
84
+ notes: self-describing entry
85
+
86
+ # ── docs/ canonical files ────────────────────────────────────────────────
87
+ - id: docs-bugfix
88
+ path: docs/BUGFIX.md
89
+ class: canonical
90
+ audience: [agent, maintainer]
91
+ owner: product
92
+ source_of_truth: docs/BUGFIX.md
93
+ merge_strategy: none
94
+ load_policy: on-demand
95
+ validation: [manual]
96
+ archive_policy: never
97
+ - id: docs-bug-index
98
+ path: docs/BUG_INDEX.md
99
+ class: canonical
100
+ audience: [agent, maintainer]
101
+ owner: product
102
+ source_of_truth: docs/BUG_INDEX.md
103
+ merge_strategy: none
104
+ load_policy: on-demand
105
+ validation: [manual]
106
+ archive_policy: never
107
+ - id: docs-bug-metrics
108
+ path: docs/BUG_METRICS.md
109
+ class: canonical
110
+ audience: [agent, maintainer]
111
+ owner: product
112
+ source_of_truth: docs/BUG_METRICS.md
113
+ merge_strategy: none
114
+ load_policy: on-demand
115
+ validation: [manual]
116
+ archive_policy: never
117
+ - id: docs-bug-template
118
+ path: docs/BUG_TEMPLATE.md
119
+ class: canonical
120
+ audience: [agent, maintainer]
121
+ owner: product
122
+ source_of_truth: docs/BUG_TEMPLATE.md
123
+ merge_strategy: none
124
+ load_policy: on-demand
125
+ validation: [manual]
126
+ archive_policy: never
127
+ - id: docs-code-map
128
+ path: docs/CODE_MAP.md
129
+ class: canonical
130
+ audience: [agent, maintainer]
131
+ owner: product
132
+ source_of_truth: docs/CODE_MAP.md
133
+ merge_strategy: none
134
+ load_policy: task-routed
135
+ validation: [manual]
136
+ archive_policy: never
137
+ budget: { max_lines: 250, enforcement: warning }
138
+ - id: docs-improvement-roadmap
139
+ path: docs/DOCUMENTATION_IMPROVEMENT_ROADMAP.md
140
+ class: canonical
141
+ audience: [maintainer]
142
+ owner: product
143
+ source_of_truth: docs/DOCUMENTATION_IMPROVEMENT_ROADMAP.md
144
+ merge_strategy: none
145
+ load_policy: on-demand
146
+ validation: [manual]
147
+ archive_policy: never
148
+ - id: docs-gateway
149
+ path: docs/GATEWAY.md
150
+ class: canonical
151
+ audience: [agent, maintainer]
152
+ owner: adapter
153
+ source_of_truth: docs/GATEWAY.md
154
+ merge_strategy: none
155
+ load_policy: on-demand
156
+ validation: [manual]
157
+ archive_policy: never
158
+ - id: docs-install
159
+ path: docs/INSTALL.md
160
+ class: canonical
161
+ audience: [user, maintainer]
162
+ owner: product
163
+ source_of_truth: docs/INSTALL.md
164
+ merge_strategy: none
165
+ load_policy: on-demand
166
+ validation: [manual]
167
+ archive_policy: never
168
+ - id: docs-memory
169
+ path: docs/MEMORY.md
170
+ class: canonical
171
+ audience: [agent, maintainer]
172
+ owner: product
173
+ source_of_truth: docs/MEMORY.md
174
+ merge_strategy: none
175
+ load_policy: task-routed
176
+ validation: [manual]
177
+ archive_policy: never
178
+ budget: { max_lines: 200, enforcement: warning }
179
+ - id: docs-project
180
+ path: docs/PROJECT.md
181
+ class: canonical
182
+ audience: [agent, maintainer]
183
+ owner: product
184
+ source_of_truth: docs/PROJECT.md
185
+ merge_strategy: none
186
+ load_policy: on-demand
187
+ validation: [manual]
188
+ archive_policy: never
189
+ - id: docs-project-important-spec
190
+ path: docs/PROJECT_IMPORTANT_SPEC.md
191
+ class: canonical
192
+ audience: [agent, maintainer]
193
+ owner: product
194
+ source_of_truth: docs/PROJECT_IMPORTANT_SPEC.md
195
+ merge_strategy: none
196
+ load_policy: on-demand
197
+ validation: [manual]
198
+ archive_policy: never
199
+ - id: docs-prompt-caching
200
+ path: docs/PROMPT_CACHING.md
201
+ class: canonical
202
+ audience: [agent, maintainer]
203
+ owner: product
204
+ source_of_truth: docs/PROMPT_CACHING.md
205
+ merge_strategy: none
206
+ load_policy: on-demand
207
+ validation: [manual]
208
+ archive_policy: never
209
+ - id: docs-release-checklist
210
+ path: docs/RELEASE_CHECKLIST.md
211
+ class: canonical
212
+ audience: [maintainer]
213
+ owner: release
214
+ source_of_truth: docs/RELEASE_CHECKLIST.md
215
+ merge_strategy: none
216
+ load_policy: on-demand
217
+ validation: [manual]
218
+ archive_policy: never
219
+ - id: docs-ukit-codev-principles
220
+ path: docs/UKIT_CODEV_PRINCIPLES.md
221
+ class: canonical
222
+ audience: [agent, maintainer]
223
+ owner: product
224
+ source_of_truth: docs/UKIT_CODEV_PRINCIPLES.md
225
+ merge_strategy: none
226
+ load_policy: on-demand
227
+ validation: [manual]
228
+ archive_policy: never
229
+ - id: docs-ukit-usage-guide
230
+ path: docs/UKIT_USAGE_GUIDE.md
231
+ class: canonical
232
+ audience: [user, maintainer]
233
+ owner: product
234
+ source_of_truth: docs/UKIT_USAGE_GUIDE.md
235
+ merge_strategy: none
236
+ load_policy: on-demand
237
+ validation: [manual]
238
+ archive_policy: never
239
+ - id: docs-worklog-archive
240
+ path: docs/WORKLOG_ARCHIVE.md
241
+ class: canonical
242
+ audience: [agent, maintainer]
243
+ owner: product
244
+ source_of_truth: docs/WORKLOG_ARCHIVE.md
245
+ merge_strategy: none
246
+ load_policy: on-demand
247
+ validation: [manual]
248
+ archive_policy: never
249
+
250
+ # ── docs/ runtime + dir families ─────────────────────────────────────────
251
+ - id: docs-status
252
+ path: docs/STATUS.md
253
+ class: runtime
254
+ audience: [agent, maintainer]
255
+ owner: runtime
256
+ source_of_truth: docs/STATUS.md
257
+ merge_strategy: none
258
+ load_policy: continuation-only
259
+ validation: [manual]
260
+ archive_policy: date-rotate
261
+ budget: { max_lines: 150, enforcement: error }
262
+ notes: enforcement flipped to error by TASK-005 (2026-09-19)
263
+ - id: docs-worklog
264
+ path: docs/WORKLOG.md
265
+ class: runtime
266
+ audience: [agent, maintainer]
267
+ owner: runtime
268
+ source_of_truth: docs/WORKLOG.md
269
+ merge_strategy: none
270
+ load_policy: continuation-only
271
+ validation: [manual]
272
+ archive_policy: never
273
+ budget: { max_lines: 600, enforcement: warning }
274
+ notes: rotation = DOC-105
275
+ - id: docs-ai-handoff
276
+ path: docs/AI_HANDOFF/
277
+ class: runtime
278
+ audience: [agent, maintainer]
279
+ owner: runtime
280
+ source_of_truth: docs/AI_HANDOFF/
281
+ merge_strategy: none
282
+ load_policy: task-routed
283
+ validation: [manual]
284
+ archive_policy: never
285
+ notes: dir entry — covers all files beneath
286
+ - id: docs-archive
287
+ path: docs/archive/
288
+ class: archive
289
+ audience: [maintainer]
290
+ owner: product
291
+ source_of_truth: docs/archive/
292
+ merge_strategy: none
293
+ load_policy: never
294
+ validation: [none]
295
+ archive_policy: immutable
296
+ notes: covers docs/archive/releases/ — no separate row
297
+ - id: docs-baseline
298
+ path: docs/_baseline/
299
+ class: archive
300
+ audience: [maintainer]
301
+ owner: product
302
+ source_of_truth: docs/_baseline/
303
+ merge_strategy: none
304
+ load_policy: never
305
+ validation: [none]
306
+ archive_policy: immutable
307
+ - id: docs-plans
308
+ path: docs/plans/
309
+ class: archive
310
+ audience: [maintainer]
311
+ owner: product
312
+ source_of_truth: docs/plans/
313
+ merge_strategy: none
314
+ load_policy: never
315
+ validation: [none]
316
+ archive_policy: immutable
317
+ - id: docs-research
318
+ path: docs/research/
319
+ class: archive
320
+ audience: [maintainer]
321
+ owner: product
322
+ source_of_truth: docs/research/
323
+ merge_strategy: none
324
+ load_policy: never
325
+ validation: [none]
326
+ archive_policy: immutable
327
+
328
+ # ── templates/ canonical authoring sources ───────────────────────────────
329
+ - id: tpl-claude-md
330
+ path: templates/CLAUDE.md
331
+ class: canonical
332
+ audience: [agent, maintainer]
333
+ owner: product
334
+ source_of_truth: templates/CLAUDE.md
335
+ merge_strategy: overwrite_with_backup
336
+ load_policy: always
337
+ validation: [manual]
338
+ archive_policy: never
339
+ notes: renders to installed roots
340
+ - id: tpl-agents-md
341
+ path: templates/AGENTS.md
342
+ class: canonical
343
+ audience: [agent, maintainer]
344
+ owner: product
345
+ source_of_truth: templates/AGENTS.md
346
+ merge_strategy: overwrite_with_backup
347
+ load_policy: always
348
+ validation: [manual]
349
+ archive_policy: never
350
+ notes: renders to installed roots
351
+ - id: tpl-project-important
352
+ path: templates/PROJECT_IMPORTANT.md
353
+ class: canonical
354
+ audience: [owner, agent, maintainer]
355
+ owner: project-owner
356
+ source_of_truth: templates/PROJECT_IMPORTANT.md
357
+ merge_strategy: skip
358
+ load_policy: always
359
+ validation: [manual]
360
+ archive_policy: never
361
+ notes: seeds owner file
362
+ - id: tpl-docs-dir
363
+ path: templates/docs/
364
+ class: canonical
365
+ audience: [agent, maintainer]
366
+ owner: product
367
+ source_of_truth: templates/docs/
368
+ merge_strategy: overwrite_with_backup
369
+ load_policy: on-demand
370
+ validation: [manual]
371
+ archive_policy: never
372
+ notes: default for docs templates; skip items have per-file entries below
373
+ - id: tpl-docs-project
374
+ path: templates/docs/PROJECT.md
375
+ class: canonical
376
+ audience: [agent, maintainer]
377
+ owner: product
378
+ source_of_truth: templates/docs/PROJECT.md
379
+ merge_strategy: skip
380
+ load_policy: on-demand
381
+ validation: [manual]
382
+ archive_policy: never
383
+ - id: tpl-docs-memory
384
+ path: templates/docs/MEMORY.md
385
+ class: canonical
386
+ audience: [agent, maintainer]
387
+ owner: product
388
+ source_of_truth: templates/docs/MEMORY.md
389
+ merge_strategy: skip
390
+ load_policy: on-demand
391
+ validation: [manual]
392
+ archive_policy: never
393
+ - id: tpl-docs-worklog
394
+ path: templates/docs/WORKLOG.md
395
+ class: canonical
396
+ audience: [agent, maintainer]
397
+ owner: product
398
+ source_of_truth: templates/docs/WORKLOG.md
399
+ merge_strategy: skip
400
+ load_policy: on-demand
401
+ validation: [manual]
402
+ archive_policy: never
403
+ - id: tpl-docs-code-map
404
+ path: templates/docs/CODE_MAP.md
405
+ class: canonical
406
+ audience: [agent, maintainer]
407
+ owner: product
408
+ source_of_truth: templates/docs/CODE_MAP.md
409
+ merge_strategy: skip
410
+ load_policy: on-demand
411
+ validation: [manual]
412
+ archive_policy: never
413
+ - id: tpl-docs-bugfix
414
+ path: templates/docs/BUGFIX.md
415
+ class: canonical
416
+ audience: [agent, maintainer]
417
+ owner: product
418
+ source_of_truth: templates/docs/BUGFIX.md
419
+ merge_strategy: skip
420
+ load_policy: on-demand
421
+ validation: [manual]
422
+ archive_policy: never
423
+ - id: tpl-docs-bug-template
424
+ path: templates/docs/BUG_TEMPLATE.md
425
+ class: canonical
426
+ audience: [agent, maintainer]
427
+ owner: product
428
+ source_of_truth: templates/docs/BUG_TEMPLATE.md
429
+ merge_strategy: skip
430
+ load_policy: on-demand
431
+ validation: [manual]
432
+ archive_policy: never
433
+ - id: tpl-docs-bug-index
434
+ path: templates/docs/BUG_INDEX.md
435
+ class: canonical
436
+ audience: [agent, maintainer]
437
+ owner: product
438
+ source_of_truth: templates/docs/BUG_INDEX.md
439
+ merge_strategy: skip
440
+ load_policy: on-demand
441
+ validation: [manual]
442
+ archive_policy: never
443
+ - id: tpl-docs-bug-metrics
444
+ path: templates/docs/BUG_METRICS.md
445
+ class: canonical
446
+ audience: [agent, maintainer]
447
+ owner: product
448
+ source_of_truth: templates/docs/BUG_METRICS.md
449
+ merge_strategy: skip
450
+ load_policy: on-demand
451
+ validation: [manual]
452
+ archive_policy: never
453
+ - id: tpl-docs-ai-handoff
454
+ path: templates/docs/AI_HANDOFF/
455
+ class: canonical
456
+ audience: [agent, maintainer]
457
+ owner: product
458
+ source_of_truth: templates/docs/AI_HANDOFF/
459
+ merge_strategy: skip
460
+ load_policy: on-demand
461
+ validation: [manual]
462
+ archive_policy: never
463
+ notes: dir sourceTemplate docs/AI_HANDOFF → dir path ending '/'
464
+ - id: tpl-codex-readme
465
+ path: templates/.codex/README.md
466
+ class: canonical
467
+ audience: [agent, maintainer]
468
+ owner: adapter
469
+ source_of_truth: templates/.codex/README.md
470
+ merge_strategy: overwrite_with_backup
471
+ load_policy: always
472
+ validation: [manual]
473
+ archive_policy: never
474
+ notes: codex host adapter surface — FR-007 scan
475
+ - id: tpl-omp-dir
476
+ path: templates/.omp/
477
+ class: canonical
478
+ audience: [agent, maintainer]
479
+ owner: adapter
480
+ source_of_truth: templates/.omp/
481
+ merge_strategy: overwrite_with_backup
482
+ load_policy: always
483
+ validation: [manual]
484
+ archive_policy: never
485
+ notes: omp host adapter surface (AGENTS/README/RULES + agents)
486
+ - id: tpl-ukit-readme
487
+ path: templates/ukit/README.md
488
+ class: canonical
489
+ audience: [maintainer]
490
+ owner: runtime
491
+ source_of_truth: templates/ukit/README.md
492
+ merge_strategy: overwrite_with_backup
493
+ load_policy: never
494
+ validation: [manual]
495
+ archive_policy: never
496
+ notes: reference only — FR-007 scan
497
+ - id: tpl-ukit-storage-memory
498
+ path: templates/ukit/storage/memory/
499
+ class: canonical
500
+ audience: [agent, maintainer]
501
+ owner: runtime
502
+ source_of_truth: templates/ukit/storage/memory/
503
+ merge_strategy: skip
504
+ load_policy: on-demand
505
+ validation: [manual]
506
+ archive_policy: never
507
+ notes: dir sourceTemplate ukit/storage/memory → dir path ending '/'
508
+ - id: tpl-claude-dir
509
+ path: templates/.claude/
510
+ class: canonical
511
+ audience: [agent, maintainer]
512
+ owner: adapter
513
+ source_of_truth: templates/.claude/
514
+ merge_strategy: overwrite_with_backup
515
+ load_policy: task-routed
516
+ validation: [manual]
517
+ archive_policy: never
518
+ notes: skills/agents/hooks dir entry
519
+ - id: tpl-adapter-presets
520
+ path: templates/adapter-presets/
521
+ class: canonical
522
+ audience: [maintainer]
523
+ owner: adapter
524
+ source_of_truth: templates/adapter-presets/
525
+ merge_strategy: none
526
+ load_policy: on-demand
527
+ validation: [manual]
528
+ archive_policy: never
529
+ notes: mixed strategies per manifest; skip items have per-file entries
530
+ - id: tpl-preset-claude-settings-local
531
+ path: templates/adapter-presets/claude/settings.local.json
532
+ class: canonical
533
+ audience: [maintainer]
534
+ owner: adapter
535
+ source_of_truth: templates/adapter-presets/claude/settings.local.json
536
+ merge_strategy: skip
537
+ load_policy: on-demand
538
+ validation: [manual]
539
+ archive_policy: never
540
+ notes: non-.md entry — exists for FR-002 manifest consistency
541
+ - id: tpl-preset-codex-settings-local
542
+ path: templates/adapter-presets/codex/settings.local.json
543
+ class: canonical
544
+ audience: [maintainer]
545
+ owner: adapter
546
+ source_of_truth: templates/adapter-presets/codex/settings.local.json
547
+ merge_strategy: skip
548
+ load_policy: on-demand
549
+ validation: [manual]
550
+ archive_policy: never
551
+ notes: non-.md entry — exists for FR-002 manifest consistency
552
+ - id: tpl-gitignore
553
+ path: templates/.gitignore
554
+ class: canonical
555
+ audience: [maintainer]
556
+ owner: product
557
+ source_of_truth: templates/.gitignore
558
+ merge_strategy: skip
559
+ load_policy: on-demand
560
+ validation: [manual]
561
+ archive_policy: never
562
+ notes: non-.md entry — exists for FR-002 manifest consistency
563
+
564
+ # ── repo mirrors (derived from templates/) ───────────────────────────────
565
+ - id: mirror-claude-dir
566
+ path: .claude/
567
+ class: derived
568
+ audience: [agent, maintainer]
569
+ owner: adapter
570
+ source_of_truth: templates/.claude/
571
+ merge_strategy: none
572
+ load_policy: task-routed
573
+ validation: [manual]
574
+ archive_policy: never
575
+ notes: repo mirror of templates/.claude/
576
+ - id: mirror-codex-readme
577
+ path: .codex/README.md
578
+ class: derived
579
+ audience: [agent, maintainer]
580
+ owner: adapter
581
+ source_of_truth: templates/.codex/README.md
582
+ merge_strategy: none
583
+ load_policy: on-demand
584
+ validation: [manual]
585
+ archive_policy: never
586
+ - id: mirror-omp-dir
587
+ path: .omp/
588
+ class: derived
589
+ audience: [agent, maintainer]
590
+ owner: adapter
591
+ source_of_truth: templates/.omp/
592
+ merge_strategy: none
593
+ load_policy: on-demand
594
+ validation: [manual]
595
+ archive_policy: never
596
+ - id: mirror-ukit-readme
597
+ path: .ukit/README.md
598
+ class: derived
599
+ audience: [agent, maintainer]
600
+ owner: runtime
601
+ source_of_truth: templates/ukit/README.md
602
+ merge_strategy: none
603
+ load_policy: on-demand
604
+ validation: [manual]
605
+ archive_policy: never
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ngockhoale/ukit",
3
- "version": "2.6.5",
3
+ "version": "2.6.6",
4
4
  "description": "Install/update an index-first AI workspace for Claude Code, OpenAI Codex, OpenCode, and omp (Oh My Pi).",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -55,7 +55,7 @@
55
55
  "index:query": "node ./scripts/index/query-index.mjs",
56
56
  "bug:triage": "node ./scripts/bug/triage.mjs",
57
57
  "skill:audit": "node ./scripts/skill/audit-skill.mjs",
58
- "test:artifact": "vitest run tests/integration/packageArtifact.test.js",
58
+ "test:artifact": "vitest run tests/integration/packageArtifact.test.js tests/integration/artifactReferenceIntegrity.test.js",
59
59
  "test:release-core": "vitest run --exclude tests/integration/packageArtifact.test.js",
60
60
  "release:verify": "node ./scripts/release/verify-release.mjs",
61
61
  "test": "vitest run",
@@ -80,7 +80,7 @@ For clearly non-code specialist lanes (docs-only, status, task queue), skip the
80
80
  - If verification is needed, prefer `node .codex/ukit/index/verify-context.mjs ...`.
81
81
  - **Treat helper commands as internal orchestration.** Run them yourself when needed; never ask end users to run them.
82
82
 
83
- ## UKit v1.5.0 Shared Runtime
83
+ ## UKit Shared Runtime
84
84
 
85
85
  - Shared runtime state lives in `.ukit/storage/`.
86
86
  - Treat `.ukit/storage/config.json` as the source of compact, token-pipeline, router, memory, validation, and Safe Patch guardrail toggles.
@@ -1,6 +1,6 @@
1
1
  # UKit Shared Runtime
2
2
 
3
- This folder stores shared UKit runtime state for v1.5.0 features.
3
+ This folder stores shared UKit runtime state.
4
4
 
5
5
  - `storage/config.json` — runtime feature flags and defaults
6
6
  - `storage/cache/` — prompt-cache, compact history, compact pressure state, output summaries, and preserved raw tool outputs under `storage/cache/tee/`