@fractalsynapse/dsh-chapters 0.0.0-stage → 0.2.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/LICENSE +14 -0
  2. package/README.md +76 -2
  3. package/cordis.patch.yml +363 -0
  4. package/docs/architecture.md +692 -0
  5. package/docs/autorun-guide.md +248 -0
  6. package/docs/backlog.md +2022 -0
  7. package/docs/contract.md +938 -0
  8. package/docs/development.md +990 -0
  9. package/docs/host-compaction-seam.md +225 -0
  10. package/docs/host-protected-head-ask.md +80 -0
  11. package/docs/knowledge-repo.md +1332 -0
  12. package/docs/plans-carriage.md +571 -0
  13. package/docs/project-state.md +642 -0
  14. package/docs/provider.md +98 -0
  15. package/docs/superpowers/plans/2026-10-17-chapters-save.md +198 -0
  16. package/docs/superpowers/plans/2026-11-02-chapter-removal.md +151 -0
  17. package/docs/superpowers/specs/2026-11-02-chapter-removal-design.md +115 -0
  18. package/docs/verify.md +561 -0
  19. package/lib/archive.d.ts +161 -0
  20. package/lib/archive.js +229 -0
  21. package/lib/archive.js.map +1 -0
  22. package/lib/arrival.d.ts +23 -0
  23. package/lib/arrival.js +125 -0
  24. package/lib/arrival.js.map +1 -0
  25. package/lib/artifact-query.d.ts +62 -0
  26. package/lib/artifact-query.js +187 -0
  27. package/lib/artifact-query.js.map +1 -0
  28. package/lib/attach.d.ts +46 -0
  29. package/lib/attach.js +120 -0
  30. package/lib/attach.js.map +1 -0
  31. package/lib/auto-save.d.ts +145 -0
  32. package/lib/auto-save.js +334 -0
  33. package/lib/auto-save.js.map +1 -0
  34. package/lib/aux-message.d.ts +17 -0
  35. package/lib/aux-message.js +20 -0
  36. package/lib/aux-message.js.map +1 -0
  37. package/lib/client.js +1419 -0
  38. package/lib/client.js.map +1 -0
  39. package/lib/codegraph.d.ts +76 -0
  40. package/lib/codegraph.js +190 -0
  41. package/lib/codegraph.js.map +1 -0
  42. package/lib/commands.d.ts +52 -0
  43. package/lib/commands.js +946 -0
  44. package/lib/commands.js.map +1 -0
  45. package/lib/compose.d.ts +30 -0
  46. package/lib/compose.js +185 -0
  47. package/lib/compose.js.map +1 -0
  48. package/lib/continue-core.d.ts +245 -0
  49. package/lib/continue-core.js +405 -0
  50. package/lib/continue-core.js.map +1 -0
  51. package/lib/diag.d.ts +55 -0
  52. package/lib/diag.js +186 -0
  53. package/lib/diag.js.map +1 -0
  54. package/lib/engine-core.d.ts +301 -0
  55. package/lib/engine-core.js +531 -0
  56. package/lib/engine-core.js.map +1 -0
  57. package/lib/engine-note.d.ts +35 -0
  58. package/lib/engine-note.js +32 -0
  59. package/lib/engine-note.js.map +1 -0
  60. package/lib/engine.d.ts +329 -0
  61. package/lib/engine.js +1179 -0
  62. package/lib/engine.js.map +1 -0
  63. package/lib/enrich-queue.d.ts +66 -0
  64. package/lib/enrich-queue.js +126 -0
  65. package/lib/enrich-queue.js.map +1 -0
  66. package/lib/enrich-store.d.ts +31 -0
  67. package/lib/enrich-store.js +103 -0
  68. package/lib/enrich-store.js.map +1 -0
  69. package/lib/enrich-wire.d.ts +163 -0
  70. package/lib/enrich-wire.js +353 -0
  71. package/lib/enrich-wire.js.map +1 -0
  72. package/lib/enrich.d.ts +102 -0
  73. package/lib/enrich.js +267 -0
  74. package/lib/enrich.js.map +1 -0
  75. package/lib/gitops.d.ts +107 -0
  76. package/lib/gitops.js +539 -0
  77. package/lib/gitops.js.map +1 -0
  78. package/lib/index.d.ts +241 -0
  79. package/lib/index.js +1162 -0
  80. package/lib/index.js.map +1 -0
  81. package/lib/indexing.d.ts +98 -0
  82. package/lib/indexing.js +223 -0
  83. package/lib/indexing.js.map +1 -0
  84. package/lib/injections.d.ts +90 -0
  85. package/lib/injections.js +165 -0
  86. package/lib/injections.js.map +1 -0
  87. package/lib/last-resort.d.ts +24 -0
  88. package/lib/last-resort.js +27 -0
  89. package/lib/last-resort.js.map +1 -0
  90. package/lib/log-shape.d.ts +38 -0
  91. package/lib/log-shape.js +93 -0
  92. package/lib/log-shape.js.map +1 -0
  93. package/lib/models-command.d.ts +74 -0
  94. package/lib/models-command.js +100 -0
  95. package/lib/models-command.js.map +1 -0
  96. package/lib/notice.d.ts +74 -0
  97. package/lib/notice.js +92 -0
  98. package/lib/notice.js.map +1 -0
  99. package/lib/plans.d.ts +154 -0
  100. package/lib/plans.js +315 -0
  101. package/lib/plans.js.map +1 -0
  102. package/lib/preset.d.ts +186 -0
  103. package/lib/preset.js +212 -0
  104. package/lib/preset.js.map +1 -0
  105. package/lib/prompt-keys.d.ts +7 -0
  106. package/lib/prompt-keys.js +8 -0
  107. package/lib/prompt-keys.js.map +1 -0
  108. package/lib/prompt-loop.d.ts +73 -0
  109. package/lib/prompt-loop.js +147 -0
  110. package/lib/prompt-loop.js.map +1 -0
  111. package/lib/prompt-push.d.ts +47 -0
  112. package/lib/prompt-push.js +115 -0
  113. package/lib/prompt-push.js.map +1 -0
  114. package/lib/prompt-runner.d.ts +48 -0
  115. package/lib/prompt-runner.js +90 -0
  116. package/lib/prompt-runner.js.map +1 -0
  117. package/lib/prompt-state.d.ts +142 -0
  118. package/lib/prompt-state.js +101 -0
  119. package/lib/prompt-state.js.map +1 -0
  120. package/lib/prompt.d.ts +270 -0
  121. package/lib/prompt.js +408 -0
  122. package/lib/prompt.js.map +1 -0
  123. package/lib/provider.d.ts +44 -0
  124. package/lib/provider.js +66 -0
  125. package/lib/provider.js.map +1 -0
  126. package/lib/redact.d.ts +24 -0
  127. package/lib/redact.js +85 -0
  128. package/lib/redact.js.map +1 -0
  129. package/lib/registry.d.ts +187 -0
  130. package/lib/registry.js +235 -0
  131. package/lib/registry.js.map +1 -0
  132. package/lib/removal.d.ts +159 -0
  133. package/lib/removal.js +556 -0
  134. package/lib/removal.js.map +1 -0
  135. package/lib/render.d.ts +97 -0
  136. package/lib/render.js +530 -0
  137. package/lib/render.js.map +1 -0
  138. package/lib/repair-run.d.ts +76 -0
  139. package/lib/repair-run.js +506 -0
  140. package/lib/repair-run.js.map +1 -0
  141. package/lib/repair.d.ts +208 -0
  142. package/lib/repair.js +357 -0
  143. package/lib/repair.js.map +1 -0
  144. package/lib/repo.d.ts +78 -0
  145. package/lib/repo.js +184 -0
  146. package/lib/repo.js.map +1 -0
  147. package/lib/rules-commands.d.ts +46 -0
  148. package/lib/rules-commands.js +379 -0
  149. package/lib/rules-commands.js.map +1 -0
  150. package/lib/rules.d.ts +267 -0
  151. package/lib/rules.js +478 -0
  152. package/lib/rules.js.map +1 -0
  153. package/lib/save-core.d.ts +72 -0
  154. package/lib/save-core.js +220 -0
  155. package/lib/save-core.js.map +1 -0
  156. package/lib/search.d.ts +112 -0
  157. package/lib/search.js +282 -0
  158. package/lib/search.js.map +1 -0
  159. package/lib/session-rules.d.ts +222 -0
  160. package/lib/session-rules.js +454 -0
  161. package/lib/session-rules.js.map +1 -0
  162. package/lib/signature.d.ts +45 -0
  163. package/lib/signature.js +199 -0
  164. package/lib/signature.js.map +1 -0
  165. package/lib/store.d.ts +156 -0
  166. package/lib/store.js +368 -0
  167. package/lib/store.js.map +1 -0
  168. package/lib/sync.d.ts +220 -0
  169. package/lib/sync.js +810 -0
  170. package/lib/sync.js.map +1 -0
  171. package/lib/tools.d.ts +113 -0
  172. package/lib/tools.js +1090 -0
  173. package/lib/tools.js.map +1 -0
  174. package/lib/treedx/client.d.ts +57 -0
  175. package/lib/treedx/client.js +82 -0
  176. package/lib/treedx/client.js.map +1 -0
  177. package/lib/treedx/provider.d.ts +39 -0
  178. package/lib/treedx/provider.js +479 -0
  179. package/lib/treedx/provider.js.map +1 -0
  180. package/lib/treedx/state.d.ts +27 -0
  181. package/lib/treedx/state.js +65 -0
  182. package/lib/treedx/state.js.map +1 -0
  183. package/lib/types.d.ts +210 -0
  184. package/lib/types.js +31 -0
  185. package/lib/types.js.map +1 -0
  186. package/lib/version.d.ts +9 -0
  187. package/lib/version.js +10 -0
  188. package/lib/version.js.map +1 -0
  189. package/lib/vocabulary.d.ts +41 -0
  190. package/lib/vocabulary.js +118 -0
  191. package/lib/vocabulary.js.map +1 -0
  192. package/lib/warnings.d.ts +10 -0
  193. package/lib/warnings.js +18 -0
  194. package/lib/warnings.js.map +1 -0
  195. package/package.json +151 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Layer 2 of the two-layer index (knowledge-repo.md §10.2): the compressed,
3
+ * searchable, sharded index derived from chapter frontmatter + Layer-1
4
+ * curation facts. PURE + DETERMINISTIC: same inputs → same shards, and an
5
+ * empty manifest rebuilds the whole index identically (the recovery path).
6
+ *
7
+ * Shards are one file per canonical topic (alphabetical — bounded files,
8
+ * writes from different chapters usually touch different shards). Layer 1
9
+ * (`edits/<harness>/curation.jsonl`) is where humans and the plugin inject
10
+ * aliases, weights, pins, and group facts; this module applies them.
11
+ */
12
+ export interface IndexEntry {
13
+ /** Repo-relative chapter path (chapters/<key>/<session>/<file>). */
14
+ path: string;
15
+ title: string;
16
+ topics: string[];
17
+ /** `plan` comes from the file's OWN `kind:` frontmatter (plans live beside
18
+ * chapters in the store), so it is never inferred from the directory. */
19
+ kind: 'chapter' | 'rule' | 'plan';
20
+ /** P3: rule category (chapters omit). */
21
+ category?: string;
22
+ /** Milliseconds; missing → sorts first within its topic shard. */
23
+ mtime?: number;
24
+ /** S5 stitch view: additional member paths (this entry's `path` is the
25
+ * canonical first member). Single-file entries omit it. */
26
+ paths?: string[];
27
+ /** CodeGraph symbols verified against the project index at archive time.
28
+ * Absent on chapters archived before CodeGraph integration or when the
29
+ * project was not indexed. Used by search scoring. */
30
+ codegraphSymbols?: string[];
31
+ }
32
+ export declare function stitchFragments(entries: readonly IndexEntry[]): IndexEntry[];
33
+ export type CurationFact = {
34
+ type: 'topic-alias';
35
+ from: string;
36
+ to: string;
37
+ at: string;
38
+ } | {
39
+ type: 'topic-pin';
40
+ topic: string;
41
+ at: string;
42
+ } | {
43
+ type: 'topic-weight';
44
+ topic: string;
45
+ weight: number;
46
+ at: string;
47
+ } | {
48
+ type: 'group';
49
+ topics: string[];
50
+ at: string;
51
+ } | {
52
+ type: 'note';
53
+ topic: string;
54
+ text: string;
55
+ at: string;
56
+ }
57
+ /** P3 §15 amendment: per-machine rule status; index layers ignore it (only rules.ts + the scorer consume it) */
58
+ | {
59
+ type: 'rule-status';
60
+ rule: string;
61
+ status: string;
62
+ at: string;
63
+ }
64
+ /** #50 §7.4: a rule pin — per-machine, last-write-wins, never a file rewrite */
65
+ | {
66
+ type: 'rule-pin';
67
+ rule: string;
68
+ pinned: boolean;
69
+ at: string;
70
+ };
71
+ export interface IndexManifest {
72
+ [inputPath: string]: {
73
+ hash: string;
74
+ at: string;
75
+ };
76
+ }
77
+ export interface IndexBuild {
78
+ /** topic → shard file content */
79
+ shards: Map<string, string>;
80
+ manifest: IndexManifest;
81
+ /** True when any shard content changed (commit only when true). */
82
+ changed: boolean;
83
+ topics: string[];
84
+ }
85
+ export declare const hashEntry: (e: IndexEntry) => string;
86
+ /** Minimal frontmatter reader for the `key: value` lines render.ts writes. */
87
+ export declare function parseFrontmatter(text: string): Record<string, string | string[]>;
88
+ /** A chapter file's text → IndexEntry (topics from frontmatter, kind from `kind:`). */
89
+ export declare function entryFromChapter(path: string, text: string, mtime?: number): IndexEntry;
90
+ /** Layer-1 parse: one JSON fact per line; malformed lines are skipped (logged by the caller). */
91
+ export declare function parseCuration(text: string): CurationFact[];
92
+ /**
93
+ * Build the sharded index. Aliases canonicalize topics (from→to, transitive),
94
+ * pinned topics sort first inside their position, weights scale the sort
95
+ * within a topic, and the manifest tracks per-entry hashes for the
96
+ * incremental fast path (an empty manifest = full rebuild = identical output).
97
+ */
98
+ export declare function buildIndexShards(entries: readonly IndexEntry[], curation: readonly CurationFact[], manifest?: IndexManifest): IndexBuild;
@@ -0,0 +1,223 @@
1
+ /**
2
+ * Layer 2 of the two-layer index (knowledge-repo.md §10.2): the compressed,
3
+ * searchable, sharded index derived from chapter frontmatter + Layer-1
4
+ * curation facts. PURE + DETERMINISTIC: same inputs → same shards, and an
5
+ * empty manifest rebuilds the whole index identically (the recovery path).
6
+ *
7
+ * Shards are one file per canonical topic (alphabetical — bounded files,
8
+ * writes from different chapters usually touch different shards). Layer 1
9
+ * (`edits/<harness>/curation.jsonl`) is where humans and the plugin inject
10
+ * aliases, weights, pins, and group facts; this module applies them.
11
+ */
12
+ /**
13
+ * S5 (record §4.3 boundary): fragment coherence at the INDEX level only.
14
+ * Legacy compaction fragments (turn-blind slices titled 'Earlier history'/
15
+ * 'Conversation span') that sit adjacent by chapter number within one
16
+ * session tree cohere into a single search entry citing every member file.
17
+ * Nothing on disk merges, no chapter is rewritten, the split rule is
18
+ * untouched — a pure function of what is already stored, so it is idempotent
19
+ * and vanishes if any member is reverted.
20
+ */
21
+ const FRAGMENT_TITLE = /^(?:Earlier history|Conversation span)/;
22
+ function chapterNumber(path) {
23
+ const base = path.split('/').pop() ?? '';
24
+ const n = /^(\d+)-/.exec(base);
25
+ return n !== null ? Number(n[1]) : null;
26
+ }
27
+ export function stitchFragments(entries) {
28
+ // group by session directory, keep input order
29
+ const byDir = new Map();
30
+ const loose = [];
31
+ for (const e of entries) {
32
+ const dir = e.path.split('/').slice(0, -1).join('/');
33
+ const isFrag = FRAGMENT_TITLE.test(e.title);
34
+ if (!isFrag || chapterNumber(e.path) === null) {
35
+ loose.push(e);
36
+ continue;
37
+ }
38
+ const list = byDir.get(dir);
39
+ if (list === undefined)
40
+ byDir.set(dir, [e]);
41
+ else
42
+ list.push(e);
43
+ }
44
+ const out = [...loose];
45
+ for (const [dir, frags] of byDir) {
46
+ const sorted = [...frags].sort((a, b) => (chapterNumber(a.path) ?? 0) - (chapterNumber(b.path) ?? 0));
47
+ let i = 0;
48
+ while (i < sorted.length) {
49
+ let j = i;
50
+ while (j + 1 < sorted.length &&
51
+ (chapterNumber(sorted[j + 1].path) ?? -1) === (chapterNumber(sorted[j].path) ?? -1) + 1)
52
+ j++;
53
+ const run = sorted.slice(i, j + 1);
54
+ if (run.length > 1) {
55
+ const head = run[0];
56
+ out.push({
57
+ ...head,
58
+ title: `${head.title} — ${run.length} consecutive parts (stitched)`,
59
+ topics: [...new Set(run.flatMap((r) => r.topics))],
60
+ paths: run.map((r) => r.path),
61
+ });
62
+ }
63
+ else if (run.length === 1)
64
+ out.push(run[0]);
65
+ i = j + 1;
66
+ }
67
+ void dir;
68
+ }
69
+ // stable, deterministic: original entry order by path
70
+ out.sort((a, b) => a.path < b.path ? -1 : a.path > b.path ? 1 : 0);
71
+ return out;
72
+ }
73
+ const hashOf = (text) => {
74
+ // FNV-1a 32-bit — deterministic, no crypto import needed in the pure core;
75
+ // collision-resistance is not a security property here, only change-detection.
76
+ let h = 0x811c9dc5;
77
+ for (let i = 0; i < text.length; i += 1) {
78
+ h ^= text.charCodeAt(i);
79
+ h = Math.imul(h, 0x01000193) >>> 0;
80
+ }
81
+ return h.toString(16).padStart(8, '0');
82
+ };
83
+ export const hashEntry = (e) => hashOf(`${e.path}|${e.title}|${[...e.topics].sort().join(',')}|${e.kind}|${e.mtime ?? 0}`);
84
+ /** Minimal frontmatter reader for the `key: value` lines render.ts writes. */
85
+ export function parseFrontmatter(text) {
86
+ const out = {};
87
+ const m = /^---\r?\n([\s\S]*?)\r?\n---/.exec(text);
88
+ if (m === null)
89
+ return out;
90
+ const body = m[1] ?? '';
91
+ for (const line of body.split(/\r?\n/)) {
92
+ const kv = /^([A-Za-z][A-Za-z0-9]*):\s*(.*)$/.exec(line);
93
+ if (kv === null)
94
+ continue;
95
+ const key = kv[1];
96
+ let value = kv[2].trim();
97
+ if (value.startsWith('[') && value.endsWith(']')) {
98
+ out[key] = value.slice(1, -1).split(',').map((v) => v.trim().replace(/^"|"$/g, '')).filter((v) => v.length > 0);
99
+ }
100
+ else {
101
+ out[key] = value.replace(/^"|"$/g, '');
102
+ }
103
+ }
104
+ return out;
105
+ }
106
+ /** A chapter file's text → IndexEntry (topics from frontmatter, kind from `kind:`). */
107
+ export function entryFromChapter(path, text, mtime) {
108
+ const fm = parseFrontmatter(text);
109
+ const topics = fm.topics;
110
+ const codegraphSymbols = fm.codegraphSymbols;
111
+ return {
112
+ path,
113
+ title: typeof fm.title === 'string' ? fm.title : path,
114
+ topics: Array.isArray(topics) ? topics : [],
115
+ // Three document kinds share the one store: transcript chapters, curated rules,
116
+ // and plan DIRECTIVES (`kind: plan`, docs/plans-carriage.md § 11). A plan document
117
+ // is searchable AS A PLAN, which is the whole point of giving it a kind.
118
+ kind: fm.kind === 'rule' ? 'rule' : fm.kind === 'plan' ? 'plan' : 'chapter',
119
+ ...(typeof fm.category === 'string' && fm.category !== '' ? { category: fm.category } : {}),
120
+ ...(mtime !== undefined ? { mtime } : {}),
121
+ ...(Array.isArray(codegraphSymbols) && codegraphSymbols.length > 0 ? { codegraphSymbols } : {}),
122
+ };
123
+ }
124
+ /** Layer-1 parse: one JSON fact per line; malformed lines are skipped (logged by the caller). */
125
+ export function parseCuration(text) {
126
+ const facts = [];
127
+ for (const line of text.split(/\r?\n/)) {
128
+ const trimmed = line.trim();
129
+ if (trimmed === '')
130
+ continue;
131
+ try {
132
+ const fact = JSON.parse(trimmed);
133
+ if (typeof fact?.type === 'string')
134
+ facts.push(fact);
135
+ }
136
+ catch {
137
+ /* malformed line: skipped, not fatal (append-only appenders may race) */
138
+ }
139
+ }
140
+ return facts;
141
+ }
142
+ /**
143
+ * Build the sharded index. Aliases canonicalize topics (from→to, transitive),
144
+ * pinned topics sort first inside their position, weights scale the sort
145
+ * within a topic, and the manifest tracks per-entry hashes for the
146
+ * incremental fast path (an empty manifest = full rebuild = identical output).
147
+ */
148
+ export function buildIndexShards(entries, curation, manifest = {}) {
149
+ const alias = new Map();
150
+ for (const f of curation) {
151
+ if (f.type === 'topic-alias')
152
+ alias.set(f.from, f.to);
153
+ }
154
+ const canonical = (topic) => {
155
+ let t = topic;
156
+ let guard = 0;
157
+ while (alias.has(t) && guard < 16) {
158
+ t = alias.get(t);
159
+ guard += 1;
160
+ }
161
+ return t;
162
+ };
163
+ const pins = new Set(curation.filter((f) => f.type === 'topic-pin').map((f) => f.topic));
164
+ const weights = new Map();
165
+ for (const f of curation) {
166
+ if (f.type === 'topic-weight')
167
+ weights.set(canonical(f.topic), f.weight);
168
+ }
169
+ const byTopic = new Map();
170
+ const manifestNext = { ...manifest };
171
+ let changed = false;
172
+ for (const e of entries) {
173
+ const hash = hashEntry(e);
174
+ const prev = manifest[e.path];
175
+ if (prev !== undefined && prev.hash === hash) {
176
+ // unchanged entry: keep its shard content contribution by still
177
+ // including it (shards are rebuilt from entries, not diffs — the
178
+ // manifest gates the COMMIT, shard content is always whole)
179
+ }
180
+ else {
181
+ changed = true;
182
+ }
183
+ manifestNext[e.path] = { hash, at: new Date().toISOString() };
184
+ for (const rawTopic of e.topics) {
185
+ const topic = canonical(rawTopic);
186
+ if (topic === '')
187
+ continue;
188
+ const list = byTopic.get(topic) ?? [];
189
+ list.push(e);
190
+ byTopic.set(topic, list);
191
+ }
192
+ }
193
+ // entries gone from the input drop out of the shards but stay in the
194
+ // manifest? No — the index is a pure function of current entries: prune.
195
+ // And PRUNING IS A CHANGE (#255): a removed chapter leaves the surviving entries' hashes
196
+ // untouched, so the loop above never flips `changed` — a shrinking corpus must still rewrite the
197
+ // manifest and ship the sweep, or "pure function of the corpus" only holds while it grows.
198
+ let pruned = false;
199
+ for (const path of Object.keys(manifestNext)) {
200
+ if (!entries.some((e) => e.path === path)) {
201
+ delete manifestNext[path];
202
+ pruned = true;
203
+ }
204
+ }
205
+ const shards = new Map();
206
+ const topicNames = [...byTopic.keys()].sort();
207
+ for (const topic of topicNames) {
208
+ const entriesForTopic = byTopic.get(topic);
209
+ const weight = weights.get(topic) ?? 1;
210
+ entriesForTopic.sort((a, b) => (b.mtime ?? 0) - (a.mtime ?? 0));
211
+ const lines = entriesForTopic.map((e) => `${e.mtime !== undefined ? new Date(e.mtime).toISOString().slice(0, 10) : '----'} | ${e.kind} | ${e.title} | ${e.path}`);
212
+ const header = [
213
+ `# topic: ${topic}`,
214
+ pins.has(topic) ? '(pinned)' : '',
215
+ `entries: ${entriesForTopic.length} · weight ${weight}`,
216
+ '',
217
+ ].filter((l) => l !== '').join('\n');
218
+ shards.set(topic, `${header}\n${lines.join('\n')}\n`);
219
+ }
220
+ void canonical;
221
+ return { shards, manifest: manifestNext, changed: changed || pruned, topics: topicNames };
222
+ }
223
+ //# sourceMappingURL=indexing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexing.js","sourceRoot":"","sources":["../src/indexing.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * The one boundary that decides which bytes of the durable log are CONVERSATION
3
+ * and which are host-injected context (knowledge-repo.md §15 amendment,
4
+ * "host-injected context is not conversation").
5
+ *
6
+ * Why this exists: the harness injects project context — workspace instruction
7
+ * files (whatever a given project's AGENTS.md holds), the runtime-context
8
+ * snapshot, the skill catalog — and injected events arrive in the log either as
9
+ * their own `user/message` (source.kind `agent-instructions`, `plugin`, …) or
10
+ * riding INSIDE human messages as `<system-reminder>` spans. A target project's
11
+ * instruction text is that project's business: it must not be archived into the
12
+ * shared knowledge corpus, searched by other workspaces, re-quoted into
13
+ * enrichment input, or bloating a child's re-archive of its own TOC notice
14
+ * generation after generation.
15
+ *
16
+ * Precedents this rule follows, not invents:
17
+ * - `signature.ts` (r28) already excluded these events from per-turn topic
18
+ * signatures after measuring their poison: every signature gained the
19
+ * injected filenames and drowned the real topic signal.
20
+ * - `tests/e2e/model-proxy.ts` (user decision 2026-09-20, AGENTS-BLIND) already
21
+ * masks the same classes for tape matching, on the same reasoning:
22
+ * development artifacts, every real project ships its own.
23
+ *
24
+ * What is NOT touched: the durable session log (invariant: append-only, always —
25
+ * the originals live on in the parent session), and genuine conversation bytes
26
+ * (a human typing the words "AGENTS.md" in prose is conversation and stays
27
+ * verbatim; only the structural injected forms are removed).
28
+ *
29
+ * Pure module: no cordis, no fs, no network.
30
+ */
31
+ /** A user/message is human-authored when it carries no source, or source.kind
32
+ * 'user' (unlabelled keeps working for seeded fixtures — same rule the
33
+ * signature layer has used since r28). Everything else — 'agent-instructions',
34
+ * 'plugin' (the TOC notice, runtime snapshots), 'tool', 'system' — is injected
35
+ * context, not conversation. Exported so signature.ts imports the SAME
36
+ * predicate; the two layers must never drift on what counts as a turn. */
37
+ export declare function isHumanAuthored(data: Record<string, unknown>): boolean;
38
+ /**
39
+ * The ONE targeted exception to the screen (human decision 2026-10-10): the harness's
40
+ * own mode-switch narration — `source: { kind: 'plugin', plugin: 'plan-mode',
41
+ * form: 'notice' }`, "The user switched this session to plan mode." — IS conversation.
42
+ *
43
+ * The screen exists so a project's private instruction files never travel in a shared
44
+ * corpus. A mode flip the human performed is not that: it is a fact about THIS session,
45
+ * and it is the seam that answers "was this approved before or after we started
46
+ * implementing?". Named by plugin AND form, so it cannot be widened by accident into
47
+ * the general plugin-source exemption — an instruction file or a runtime snapshot
48
+ * arriving with a different form still screens.
49
+ */
50
+ export declare function isSessionStateNarration(data: Record<string, unknown>): boolean;
51
+ /**
52
+ * Does this event belong in the archive as conversation?
53
+ *
54
+ * Deliberately NARROWER than `isHumanAuthored`: the topic-signature layer keeps using
55
+ * the strict predicate, because the r28 lesson was that injected text poisons topic
56
+ * merging (every signature gained the injected filenames). A mode narration is one
57
+ * short sentence, so archiving it is worth more than the risk of letting it move a
58
+ * chapter boundary — and the two uses are separate functions on purpose.
59
+ */
60
+ export declare function isArchivableConversation(data: Record<string, unknown>): boolean;
61
+ /** Label for the omission marker: kind, plus plugin name when the source
62
+ * carries one (so `plugin:dsh-chapters` is recognizable in a chapter). */
63
+ export declare function sourceLabel(data: Record<string, unknown>): string;
64
+ export declare function isInjectedProse(text: string): boolean;
65
+ /** Strip every injected span from a message's text; deterministic, idempotent
66
+ * (the marker we emit below cannot re-trigger this rule). */
67
+ export declare function stripReminderSpans(text: string): {
68
+ text: string;
69
+ removedChars: number;
70
+ };
71
+ /** The visible, greppable, countable marker an omission leaves behind. One
72
+ * shape for every class so downstream assertions (and the sentinel integration
73
+ * test) pin a single prefix. */
74
+ export declare const omittedMarker: (what: string, chars: number) => string;
75
+ /**
76
+ * The single screen the renderer and anything else consuming conversation text
77
+ * should use: what survives as chapter text, and what was omitted (event-level
78
+ * for non-human sources, span-level inside otherwise-human messages).
79
+ */
80
+ export interface Screened {
81
+ /** Conversation text to render (human messages: span-stripped; non-human: ''). */
82
+ text: string;
83
+ /** True when the whole event is injected context (non-human source). */
84
+ omittedEvent: boolean;
85
+ /** Character count removed by this screen (event-level OR span-level). */
86
+ removedChars: number;
87
+ /** Source label for the event (for the marker + tests). */
88
+ sourceKind: string;
89
+ }
90
+ export declare function screenConversation(data: Record<string, unknown>, rawText: string, role: 'user' | 'assistant'): Screened;