@treeseed/dsh-chapters 0.1.8 → 0.1.9

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/lib/injections.js CHANGED
@@ -38,6 +38,34 @@ export function isHumanAuthored(data) {
38
38
  const source = data.source;
39
39
  return source?.kind === undefined || source.kind === 'user';
40
40
  }
41
+ /**
42
+ * The ONE targeted exception to the screen (human decision 2026-10-10): the harness's
43
+ * own mode-switch narration — `source: { kind: 'plugin', plugin: 'plan-mode',
44
+ * form: 'notice' }`, "The user switched this session to plan mode." — IS conversation.
45
+ *
46
+ * The screen exists so a project's private instruction files never travel in a shared
47
+ * corpus. A mode flip the human performed is not that: it is a fact about THIS session,
48
+ * and it is the seam that answers "was this approved before or after we started
49
+ * implementing?". Named by plugin AND form, so it cannot be widened by accident into
50
+ * the general plugin-source exemption — an instruction file or a runtime snapshot
51
+ * arriving with a different form still screens.
52
+ */
53
+ export function isSessionStateNarration(data) {
54
+ const source = data.source;
55
+ return source?.kind === 'plugin' && source.plugin === 'plan-mode' && source.form === 'notice';
56
+ }
57
+ /**
58
+ * Does this event belong in the archive as conversation?
59
+ *
60
+ * Deliberately NARROWER than `isHumanAuthored`: the topic-signature layer keeps using
61
+ * the strict predicate, because the r28 lesson was that injected text poisons topic
62
+ * merging (every signature gained the injected filenames). A mode narration is one
63
+ * short sentence, so archiving it is worth more than the risk of letting it move a
64
+ * chapter boundary — and the two uses are separate functions on purpose.
65
+ */
66
+ export function isArchivableConversation(data) {
67
+ return isHumanAuthored(data) || isSessionStateNarration(data);
68
+ }
41
69
  /** Label for the omission marker: kind, plus plugin name when the source
42
70
  * carries one (so `plugin:dsh-chapters` is recognizable in a chapter). */
43
71
  export function sourceLabel(data) {
@@ -71,7 +99,7 @@ export function stripReminderSpans(text) {
71
99
  * test) pin a single prefix. */
72
100
  export const omittedMarker = (what, chars) => `⟦omitted:host-injected ${what}, ${chars} chars — project state, not conversation⟧`;
73
101
  export function screenConversation(data, rawText, role) {
74
- if (role === 'user' && !isHumanAuthored(data)) {
102
+ if (role === 'user' && !isArchivableConversation(data)) {
75
103
  return { text: '', omittedEvent: true, removedChars: rawText.length, sourceKind: sourceLabel(data) };
76
104
  }
77
105
  // Assistant text is model output, but a runtime snapshot has been observed
@@ -1 +1 @@
1
- {"version":3,"file":"injections.js","sourceRoot":"","sources":["../src/injections.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH;;;;;0EAK0E;AAC1E,MAAM,UAAU,eAAe,CAAC,IAA6B;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAuC,CAAA;IAC3D,OAAO,MAAM,EAAE,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,CAAA;AAC7D,CAAC;AAED;0EAC0E;AAC1E,MAAM,UAAU,WAAW,CAAC,IAA6B;IACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAwD,CAAA;IAC5E,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,YAAY,CAAA;IAC7C,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;QAClE,CAAC,CAAC,UAAU,MAAM,CAAC,MAAM,EAAE;QAC3B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,SAAS,CAAC,CAAA;AACtC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,aAAa,GAAG,qDAAqD,CAAA;AAE3E;6DAC6D;AAC7D,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAA;IAC/D,IAAI,OAAO,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,CAAA;IACnD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAA;AAChF,CAAC;AAED;;gCAEgC;AAChC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,KAAa,EAAU,EAAE,CACnE,0BAA0B,IAAI,KAAK,KAAK,2CAA2C,CAAA;AAkBrF,MAAM,UAAU,kBAAkB,CAAC,IAA6B,EAAE,OAAe,EAAE,IAA0B;IAC3G,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,CAAA;IACtG,CAAC;IACD,2EAA2E;IAC3E,0EAA0E;IAC1E,kEAAkE;IAClE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC1D,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;AACxE,CAAC"}
1
+ {"version":3,"file":"injections.js","sourceRoot":"","sources":["../src/injections.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH;;;;;0EAK0E;AAC1E,MAAM,UAAU,eAAe,CAAC,IAA6B;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAuC,CAAA;IAC3D,OAAO,MAAM,EAAE,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,CAAA;AAC7D,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAA6B;IACnE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAuE,CAAA;IAC3F,OAAO,MAAM,EAAE,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAA;AAC/F,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAA6B;IACpE,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAA;AAC/D,CAAC;AAED;0EAC0E;AAC1E,MAAM,UAAU,WAAW,CAAC,IAA6B;IACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAwD,CAAA;IAC5E,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,YAAY,CAAA;IAC7C,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;QAClE,CAAC,CAAC,UAAU,MAAM,CAAC,MAAM,EAAE;QAC3B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,SAAS,CAAC,CAAA;AACtC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,aAAa,GAAG,qDAAqD,CAAA;AAE3E;6DAC6D;AAC7D,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAA;IAC/D,IAAI,OAAO,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,CAAA;IACnD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,CAAA;AAChF,CAAC;AAED;;gCAEgC;AAChC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,KAAa,EAAU,EAAE,CACnE,0BAA0B,IAAI,KAAK,KAAK,2CAA2C,CAAA;AAkBrF,MAAM,UAAU,kBAAkB,CAAC,IAA6B,EAAE,OAAe,EAAE,IAA0B;IAC3G,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC;QACvD,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,CAAA;IACtG,CAAC;IACD,2EAA2E;IAC3E,0EAA0E;IAC1E,kEAAkE;IAClE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC1D,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,CAAA;AACxE,CAAC"}
package/lib/plans.d.ts CHANGED
@@ -33,6 +33,15 @@
33
33
  */
34
34
  import type { NoticePlan, PlanFact, PlanStatus, SessionEventLike } from './types.ts';
35
35
  export declare const PLAN_TOOL = "exit_plan_mode";
36
+ /**
37
+ * Why a child exists. `continue` extends the SAME stream of work (the tool
38
+ * `chapters_continue`), so the operative plan stays a live directive — and plan mode
39
+ * can be seeded so the gate survives the boundary, which is what keeps the agent
40
+ * anchored to the task across compactions (decision 2026-10-10). `branch` splits a
41
+ * NEW direction off the history (`chapters_fork`, `/chapters-fork`), so plans are
42
+ * history: cited, never re-asserted, never seeded.
43
+ */
44
+ export type PlanIntent = 'continue' | 'branch';
36
45
  export declare const PLAN_MODE_EVENT = "plan/mode";
37
46
  export type { NoticePlan, PlanFact, PlanStatus };
38
47
  /** A plan as the log states it. Never model-authored (invariant 4). */
@@ -117,4 +126,29 @@ export declare function planCallSeqs(events: readonly SessionEventLike[]): numbe
117
126
  */
118
127
  export declare function buildPlansSection(plans: readonly NoticePlan[], opts?: {
119
128
  modeActive?: boolean | null;
129
+ intent?: PlanIntent;
130
+ seeded?: boolean;
120
131
  }): string;
132
+ /**
133
+ * The in-place checkpoint's plan carriage (the PLOT mechanism, applied to plans —
134
+ * docs/plans-carriage.md § 9). Shadowing a region can hide the chapter that carries a
135
+ * plan, and a directive that only survives in a file the child may never open is a
136
+ * directive the agent drifts from. So the OPERATIVE plan travels in the checkpoint
137
+ * text itself, bounded, with its citation and the sha that still resolves the whole.
138
+ *
139
+ * "Operative" is session-level, not region-level — the newest submission on the log,
140
+ * whatever region it happened to fall in — because that is what "the current task"
141
+ * means to the agent reading the checkpoint.
142
+ */
143
+ export declare function carryActivePlan(plans: readonly PlanDoc[], opts: {
144
+ maxChars: number;
145
+ }): string | null;
146
+ /**
147
+ * Topics for a plan DOCUMENT: the file paths the plan names, plus its most
148
+ * characteristic terms. Same vocabulary as the transcript's index floor
149
+ * (`signature.chapterTopics`), deliberately re-derived here rather than imported —
150
+ * a plan is prose the agent wrote on purpose, so its own path mentions are the
151
+ * strongest signal about what it changes, and they must land in the same topic
152
+ * namespace the chapter index already uses.
153
+ */
154
+ export declare function planTopicsOf(planText: string, maxTerms?: number): string[];
package/lib/plans.js CHANGED
@@ -188,6 +188,11 @@ const shorterSha = (sha) => sha.slice(0, 7);
188
188
  export function buildPlansSection(plans, opts = {}) {
189
189
  if (plans.length === 0)
190
190
  return '';
191
+ // A BRANCH splits off a new direction, so its plans are history: they already sit
192
+ // in the chapters the TOC cites, and a call-out would tell the child to keep
193
+ // working a directive it just chose to leave behind (decision, 2026-10-10).
194
+ if (opts.intent === 'branch')
195
+ return '';
191
196
  // CAUSAL order is the caller's, not something this function can reconstruct: an
192
197
  // ancestor path's rows come from DIFFERENT sessions, each with its own seq space
193
198
  // (a child's seq 3 is not "before" a root's seq 40). The notice builder therefore
@@ -201,7 +206,12 @@ export function buildPlansSection(plans, opts = {}) {
201
206
  for (const p of sorted)
202
207
  counts.set(p.status, (counts.get(p.status) ?? 0) + 1);
203
208
  const tally = [...counts.entries()].map(([s, n]) => `${n} ${s}`).join(', ');
204
- const lines = ['## Plans on this path', `(${sorted.length} submitted: ${tally})`, ''];
209
+ const previous = sorted.slice(0, -1);
210
+ const lines = [
211
+ `## Active plan`,
212
+ `(this continuation keeps the same stream of work: ${sorted.length} plan(s) submitted on the path — ${tally})`,
213
+ '',
214
+ ];
205
215
  const ref = (p) => {
206
216
  const bits = [];
207
217
  if (p.chapterPath !== undefined) {
@@ -212,6 +222,8 @@ export function buildPlansSection(plans, opts = {}) {
212
222
  }
213
223
  if (p.artifactPath !== undefined)
214
224
  bits.push(`full text: ${p.artifactPath}`);
225
+ if (p.docPath !== undefined)
226
+ bits.push(`plan document: ${p.docPath}`);
215
227
  if (p.sha256 !== undefined)
216
228
  bits.push(`sha ${shorterSha(p.sha256)}…`);
217
229
  if (p.estTokens !== undefined)
@@ -226,15 +238,78 @@ export function buildPlansSection(plans, opts = {}) {
226
238
  lines.push(' Read the full text with chapters_artifact (toc | search | read) before implementing.');
227
239
  lines.push(' Do NOT re-plan from recall: the bytes are in the store.');
228
240
  }
229
- for (const p of sorted.slice(0, -1)) {
230
- if (p.status === 'superseded' && p.title === operative.title)
231
- continue;
232
- lines.push(`- "${p.title}" — ${STATUS_WORD[p.status]} (${ref(p)})`);
241
+ if (previous.length > 0) {
242
+ lines.push('', '## Previous plans on this path', '(history — cited for evolution and status, not directives)');
243
+ for (const p of previous) {
244
+ if (p.status === 'superseded' && p.title === operative.title)
245
+ continue;
246
+ lines.push(`- "${p.title}" — ${STATUS_WORD[p.status]} (${ref(p)})`);
247
+ }
248
+ }
249
+ if (opts.seeded === true) {
250
+ lines.push('', 'Plan mode is ACTIVE in this session — the directive above is live, not history. Keep');
251
+ lines.push('planning until a plan is approved; implementation begins only after that approval.');
233
252
  }
234
- if (opts.modeActive === true) {
235
- lines.push('', 'Plan mode was ACTIVE at the end of the archived span: this child starts OUTSIDE it');
236
- lines.push('(a created session never inherits mode). Ask the user whether to keep planning or act.');
253
+ else if (opts.modeActive === true) {
254
+ lines.push('', 'Plan mode was ACTIVE at the end of the archived span, and a created session does not');
255
+ lines.push('inherit it: this child starts OUTSIDE plan mode. Ask the user whether to keep planning or act.');
237
256
  }
238
257
  return lines.join('\n');
239
258
  }
259
+ /**
260
+ * The in-place checkpoint's plan carriage (the PLOT mechanism, applied to plans —
261
+ * docs/plans-carriage.md § 9). Shadowing a region can hide the chapter that carries a
262
+ * plan, and a directive that only survives in a file the child may never open is a
263
+ * directive the agent drifts from. So the OPERATIVE plan travels in the checkpoint
264
+ * text itself, bounded, with its citation and the sha that still resolves the whole.
265
+ *
266
+ * "Operative" is session-level, not region-level — the newest submission on the log,
267
+ * whatever region it happened to fall in — because that is what "the current task"
268
+ * means to the agent reading the checkpoint.
269
+ */
270
+ export function carryActivePlan(plans, opts) {
271
+ const operative = plans[plans.length - 1];
272
+ if (operative === undefined)
273
+ return null;
274
+ const title = operative.title === '' ? '(untitled plan)' : operative.title;
275
+ const body = operative.text.replace(/^#{1,6}\s+.+\n/, '').trim();
276
+ const clipped = body.length > opts.maxChars ? `${body.slice(0, opts.maxChars).trimEnd()}…` : body;
277
+ return [
278
+ `ACTIVE PLAN: "${title}" — ${STATUS_WORD[operative.status]} (submitted seq ${operative.seq}`
279
+ + (operative.resultSeq !== null ? `, answered seq ${operative.resultSeq}` : ', no verdict yet') + ')',
280
+ '',
281
+ clipped,
282
+ ...(body.length > opts.maxChars
283
+ // No hash claimed: at summarize time the chapter does not exist yet, and a
284
+ // sha we cannot verify would be a citation to nothing.
285
+ ? ['', '(carried truncated — the archive chapter holding this plan cites its complete text)']
286
+ : []),
287
+ ].join('\n');
288
+ }
289
+ /**
290
+ * Topics for a plan DOCUMENT: the file paths the plan names, plus its most
291
+ * characteristic terms. Same vocabulary as the transcript's index floor
292
+ * (`signature.chapterTopics`), deliberately re-derived here rather than imported —
293
+ * a plan is prose the agent wrote on purpose, so its own path mentions are the
294
+ * strongest signal about what it changes, and they must land in the same topic
295
+ * namespace the chapter index already uses.
296
+ */
297
+ export function planTopicsOf(planText, maxTerms = 8) {
298
+ const paths = new Set();
299
+ for (const m of planText.matchAll(/([\w@.\-/]+\.[A-Za-z]{1,6})\b/g)) {
300
+ const p = m[1];
301
+ if (p.length > 3 && !p.startsWith('http'))
302
+ paths.add(p);
303
+ }
304
+ const stop = new Set(['plan', 'goal', 'tests', 'criteria', 'changes', 'subsystem', 'steps', 'summary', 'overview', 'context', 'assumptions', 'risks', 'rollback', 'acceptance', 'success', 'approach', 'implementation']);
305
+ const terms = new Map();
306
+ for (const raw of planText.toLowerCase().split(/[^a-z0-9_+.\-/]+/)) {
307
+ const t = raw.replace(/^[.+\-/]+|[.+\-/]+$/g, '');
308
+ if (t.length < 4 || t.length > 28 || stop.has(t) || /^\d+$/.test(t))
309
+ continue;
310
+ terms.set(t, (terms.get(t) ?? 0) + 1);
311
+ }
312
+ const top = [...terms.entries()].sort((a, b) => b[1] - a[1] || (a[0] < b[0] ? -1 : 1)).slice(0, maxTerms).map(([t]) => t);
313
+ return [...paths, ...top];
314
+ }
240
315
  //# sourceMappingURL=plans.js.map
package/lib/plans.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"plans.js","sourceRoot":"","sources":["../src/plans.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plans.js","sourceRoot":"","sources":["../src/plans.ts"],"names":[],"mappings":"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"}
package/lib/registry.d.ts CHANGED
@@ -23,6 +23,13 @@ export interface SessionState {
23
23
  rootSession: string;
24
24
  /** Next unallocated chapter number for THIS author session. */
25
25
  nextChapterNumber: number;
26
+ /**
27
+ * Next unallocated PLAN-DOCUMENT number for this author session. Its own counter so
28
+ * plan documents never consume a chapter number or reorder the chapter list, while
29
+ * still being allocated through the registry (never by scanning a directory — a
30
+ * concurrent sibling must not be able to pick the same name).
31
+ */
32
+ nextPlanNumber: number;
26
33
  chapters: ChapterRecord[];
27
34
  /** attemptKey -> numbers, so an idempotent retry reuses rather than duplicates. */
28
35
  reservations: Record<string, number[]>;
@@ -83,6 +90,11 @@ export declare function reserve(state: SessionState, attemptId: string, count: n
83
90
  state: SessionState;
84
91
  numbers: number[];
85
92
  };
93
+ /** The same allocation rule for plan documents, on its own counter. */
94
+ export declare function reservePlan(state: SessionState, attemptId: string, count: number): {
95
+ state: SessionState;
96
+ numbers: number[];
97
+ };
86
98
  /** Append verified chapter records. A record with an existing (number) identity is a no-op — retries are safe. */
87
99
  export declare function appendChapters(state: SessionState, records: readonly ChapterRecord[]): SessionState;
88
100
  /**
package/lib/registry.js CHANGED
@@ -2,6 +2,7 @@ export const freshSession = (sessionId) => ({
2
2
  parentSession: null,
3
3
  rootSession: sessionId,
4
4
  nextChapterNumber: 1,
5
+ nextPlanNumber: 1,
5
6
  collections: [],
6
7
  chapters: [],
7
8
  reservations: {},
@@ -45,6 +46,29 @@ export function reserve(state, attemptId, count) {
45
46
  numbers,
46
47
  };
47
48
  }
49
+ /** The same allocation rule for plan documents, on its own counter. */
50
+ export function reservePlan(state, attemptId, count) {
51
+ if (count <= 0 || !Number.isInteger(count)) {
52
+ throw new Error(`reservePlan: count must be a positive integer, got ${count}`);
53
+ }
54
+ const key = `plan:${attemptId}`;
55
+ const existing = state.reservations[key];
56
+ if (existing !== undefined) {
57
+ if (existing.length !== count) {
58
+ throw new Error(`reservePlan: attempt "${key}" already holds ${existing.length} numbers, requested ${count}`);
59
+ }
60
+ return { state, numbers: [...existing] };
61
+ }
62
+ const numbers = Array.from({ length: count }, (_, i) => state.nextPlanNumber + i);
63
+ return {
64
+ state: {
65
+ ...state,
66
+ nextPlanNumber: state.nextPlanNumber + count,
67
+ reservations: { ...state.reservations, [key]: numbers },
68
+ },
69
+ numbers,
70
+ };
71
+ }
48
72
  /** Append verified chapter records. A record with an existing (number) identity is a no-op — retries are safe. */
49
73
  export function appendChapters(state, records) {
50
74
  const known = new Set(state.chapters.map((c) => c.number));
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
package/lib/render.js CHANGED
@@ -21,7 +21,7 @@ import { createHash } from 'node:crypto';
21
21
  import { DEFAULT_REDACTIONS, redactText } from "./redact.js";
22
22
  import { omittedMarker, screenConversation, stripReminderSpans } from "./injections.js";
23
23
  import { blocksOf, callArgsText, resultCallId, sameCall, textOfBlocks, toolResultText } from "./log-shape.js";
24
- import { detectPlans, PLAN_TOOL } from "./plans.js";
24
+ import { detectPlans, planTopicsOf, PLAN_TOOL } from "./plans.js";
25
25
  /** The invocation-argument head printed in the transcript when no artifact is written. */
26
26
  const CALL_HEAD_CHARS = 400;
27
27
  /** The plan head printed inline under the Plans block when the full text is a reference. */
@@ -291,6 +291,7 @@ export function renderChapter(events, range, config, overrides = [], topics = []
291
291
  // that never entered plan mode gains ZERO extra bytes, which is what keeps the
292
292
  // model tapes byte-identical (verify.md P8).
293
293
  const planFacts = [];
294
+ const planDocs = [];
294
295
  const flipsInRange = scan.flips.filter((f) => f.seq >= range.startSeq && f.seq <= range.endSeq);
295
296
  if (chapterPlans.length > 0 || flipsInRange.length > 0) {
296
297
  body.push('', '---', '', '## Plans in this chapter', '');
@@ -325,6 +326,20 @@ export function renderChapter(events, range, config, overrides = [], topics = []
325
326
  if (p.status === 'superseded') {
326
327
  body.push('- this submission was superseded by a later one of the same plan — the newest is operative');
327
328
  }
329
+ // The plan ALSO becomes a document of its own (docs/plans-carriage.md § 11):
330
+ // indexed by topic, searchable as a plan, and addressable across sessions —
331
+ // which is what "how did this plan evolve, and what happened to it" needs.
332
+ // The artifact stays the content-addressed retrieval handle; the document is
333
+ // the queryable record. Same bytes, two addressing roles, one write each.
334
+ planDocs.push({
335
+ seq: p.seq,
336
+ title: p.title,
337
+ status: p.status,
338
+ body: planBody,
339
+ sha256: ref.sha256,
340
+ topics: [...new Set(planTopicsOf(planBody))],
341
+ estTokens: tokens,
342
+ });
328
343
  body.push('');
329
344
  }
330
345
  for (const f of flipsInRange) {
@@ -377,6 +392,7 @@ export function renderChapter(events, range, config, overrides = [], topics = []
377
392
  overTarget: estimatedTokens > config.chapterTokenTarget,
378
393
  unrenderedSeqs,
379
394
  plans: planFacts,
395
+ planDocs,
380
396
  planMode: modeAtEnd,
381
397
  invocationArtifacts,
382
398
  },
package/lib/render.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
package/lib/search.d.ts CHANGED
@@ -2,7 +2,7 @@ import { type IndexEntry } from './indexing.ts';
2
2
  export interface SearchResult {
3
3
  score: number;
4
4
  date: string;
5
- kind: 'chapter' | 'rule';
5
+ kind: 'chapter' | 'rule' | 'plan';
6
6
  title: string;
7
7
  path: string;
8
8
  /** S5 stitch view: every member file behind a coherented entry. */
package/lib/search.js CHANGED
@@ -73,7 +73,10 @@ export function loadCorpus(cloneDir) {
73
73
  const relPath = rel === '' ? e.name : path.join(rel, e.name);
74
74
  const text = fs.readFileSync(p, 'utf8');
75
75
  const entry = entryFromChapter(path.join(top, relPath), text, fs.statSync(p).mtimeMs);
76
- entries.push({ ...entry, kind });
76
+ // A plan document declares its own kind in frontmatter and lives in the
77
+ // chapters/ tree — the directory must not flatten it back to 'chapter',
78
+ // or "search the plans" would be impossible (plans-carriage § 11).
79
+ entries.push({ ...entry, kind: entry.kind === 'plan' ? 'plan' : kind });
77
80
  const fm = /^---[\s\S]*?summary:\s*(.*)$/m.exec(text);
78
81
  if (fm !== null)
79
82
  summaries.set(entry.path, fm[1].trim().replace(/^"|"$/g, ''));
package/lib/search.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
package/lib/store.js CHANGED
@@ -20,7 +20,7 @@ import { ruleRecordSchema } from "./rules.js";
20
20
  import { defineDomain, domainTable } from '@deepseek-ai/dsh-storage-domain';
21
21
  import { mkdir, readFile, writeFile } from 'node:fs/promises';
22
22
  import { dirname } from 'node:path';
23
- import { appendChapters, freshSession, reserve } from "./registry.js";
23
+ import { appendChapters, freshSession, reserve, reservePlan as reservePlanNumber } from "./registry.js";
24
24
  // ---------------------------------------------------------------- schemas + spec
25
25
  const chapterRecordSchema = z.object({
26
26
  number: z.number().int().positive(),
@@ -57,6 +57,12 @@ const chapterRecordSchema = z.object({
57
57
  resultSeq: z.number().int().nonnegative().nullable(),
58
58
  })).optional(),
59
59
  planMode: z.enum(['active', 'inactive', 'unknown']).optional(),
60
+ // Where each plan's own `kind: plan` document landed.
61
+ planDocs: z.array(z.object({
62
+ seq: z.number().int().nonnegative(),
63
+ path: z.string().min(1),
64
+ sha256: z.string().min(16),
65
+ })).optional(),
60
66
  });
61
67
  const collectionSchema = z.object({
62
68
  seqs: z.array(z.number().int().nonnegative()).min(1),
@@ -70,6 +76,9 @@ const sessionStateSchema = z.object({
70
76
  parentSession: z.string().nullable(),
71
77
  rootSession: z.string().min(1),
72
78
  nextChapterNumber: z.number().int().positive(),
79
+ // Plan-document numbering (plans-carriage § 11). Optional with a default so a
80
+ // stored row from before the feature parses unchanged.
81
+ nextPlanNumber: z.number().int().positive().default(1),
73
82
  chapters: z.array(chapterRecordSchema),
74
83
  reservations: z.record(z.string(), z.array(z.number().int().positive())).default({}),
75
84
  plans: z.record(z.string(), z.object({
@@ -174,6 +183,12 @@ export function makeAllocator(store, sessionId) {
174
183
  await store.put(sessionId, next.state);
175
184
  return next.numbers;
176
185
  },
186
+ async reservePlan(attemptId, count) {
187
+ const state = await store.get(sessionId);
188
+ const next = reservePlanNumber(state, attemptId, count);
189
+ await store.put(sessionId, next.state);
190
+ return next.numbers;
191
+ },
177
192
  };
178
193
  }
179
194
  /** The commit-point write: verified chapter records into the session state. */