@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.
- package/LICENSE +14 -0
- package/README.md +76 -2
- package/cordis.patch.yml +363 -0
- package/docs/architecture.md +692 -0
- package/docs/autorun-guide.md +248 -0
- package/docs/backlog.md +2022 -0
- package/docs/contract.md +938 -0
- package/docs/development.md +990 -0
- package/docs/host-compaction-seam.md +225 -0
- package/docs/host-protected-head-ask.md +80 -0
- package/docs/knowledge-repo.md +1332 -0
- package/docs/plans-carriage.md +571 -0
- package/docs/project-state.md +642 -0
- package/docs/provider.md +98 -0
- package/docs/superpowers/plans/2026-10-17-chapters-save.md +198 -0
- package/docs/superpowers/plans/2026-11-02-chapter-removal.md +151 -0
- package/docs/superpowers/specs/2026-11-02-chapter-removal-design.md +115 -0
- package/docs/verify.md +561 -0
- package/lib/archive.d.ts +161 -0
- package/lib/archive.js +229 -0
- package/lib/archive.js.map +1 -0
- package/lib/arrival.d.ts +23 -0
- package/lib/arrival.js +125 -0
- package/lib/arrival.js.map +1 -0
- package/lib/artifact-query.d.ts +62 -0
- package/lib/artifact-query.js +187 -0
- package/lib/artifact-query.js.map +1 -0
- package/lib/attach.d.ts +46 -0
- package/lib/attach.js +120 -0
- package/lib/attach.js.map +1 -0
- package/lib/auto-save.d.ts +145 -0
- package/lib/auto-save.js +334 -0
- package/lib/auto-save.js.map +1 -0
- package/lib/aux-message.d.ts +17 -0
- package/lib/aux-message.js +20 -0
- package/lib/aux-message.js.map +1 -0
- package/lib/client.js +1419 -0
- package/lib/client.js.map +1 -0
- package/lib/codegraph.d.ts +76 -0
- package/lib/codegraph.js +190 -0
- package/lib/codegraph.js.map +1 -0
- package/lib/commands.d.ts +52 -0
- package/lib/commands.js +946 -0
- package/lib/commands.js.map +1 -0
- package/lib/compose.d.ts +30 -0
- package/lib/compose.js +185 -0
- package/lib/compose.js.map +1 -0
- package/lib/continue-core.d.ts +245 -0
- package/lib/continue-core.js +405 -0
- package/lib/continue-core.js.map +1 -0
- package/lib/diag.d.ts +55 -0
- package/lib/diag.js +186 -0
- package/lib/diag.js.map +1 -0
- package/lib/engine-core.d.ts +301 -0
- package/lib/engine-core.js +531 -0
- package/lib/engine-core.js.map +1 -0
- package/lib/engine-note.d.ts +35 -0
- package/lib/engine-note.js +32 -0
- package/lib/engine-note.js.map +1 -0
- package/lib/engine.d.ts +329 -0
- package/lib/engine.js +1179 -0
- package/lib/engine.js.map +1 -0
- package/lib/enrich-queue.d.ts +66 -0
- package/lib/enrich-queue.js +126 -0
- package/lib/enrich-queue.js.map +1 -0
- package/lib/enrich-store.d.ts +31 -0
- package/lib/enrich-store.js +103 -0
- package/lib/enrich-store.js.map +1 -0
- package/lib/enrich-wire.d.ts +163 -0
- package/lib/enrich-wire.js +353 -0
- package/lib/enrich-wire.js.map +1 -0
- package/lib/enrich.d.ts +102 -0
- package/lib/enrich.js +267 -0
- package/lib/enrich.js.map +1 -0
- package/lib/gitops.d.ts +107 -0
- package/lib/gitops.js +539 -0
- package/lib/gitops.js.map +1 -0
- package/lib/index.d.ts +241 -0
- package/lib/index.js +1162 -0
- package/lib/index.js.map +1 -0
- package/lib/indexing.d.ts +98 -0
- package/lib/indexing.js +223 -0
- package/lib/indexing.js.map +1 -0
- package/lib/injections.d.ts +90 -0
- package/lib/injections.js +165 -0
- package/lib/injections.js.map +1 -0
- package/lib/last-resort.d.ts +24 -0
- package/lib/last-resort.js +27 -0
- package/lib/last-resort.js.map +1 -0
- package/lib/log-shape.d.ts +38 -0
- package/lib/log-shape.js +93 -0
- package/lib/log-shape.js.map +1 -0
- package/lib/models-command.d.ts +74 -0
- package/lib/models-command.js +100 -0
- package/lib/models-command.js.map +1 -0
- package/lib/notice.d.ts +74 -0
- package/lib/notice.js +92 -0
- package/lib/notice.js.map +1 -0
- package/lib/plans.d.ts +154 -0
- package/lib/plans.js +315 -0
- package/lib/plans.js.map +1 -0
- package/lib/preset.d.ts +186 -0
- package/lib/preset.js +212 -0
- package/lib/preset.js.map +1 -0
- package/lib/prompt-keys.d.ts +7 -0
- package/lib/prompt-keys.js +8 -0
- package/lib/prompt-keys.js.map +1 -0
- package/lib/prompt-loop.d.ts +73 -0
- package/lib/prompt-loop.js +147 -0
- package/lib/prompt-loop.js.map +1 -0
- package/lib/prompt-push.d.ts +47 -0
- package/lib/prompt-push.js +115 -0
- package/lib/prompt-push.js.map +1 -0
- package/lib/prompt-runner.d.ts +48 -0
- package/lib/prompt-runner.js +90 -0
- package/lib/prompt-runner.js.map +1 -0
- package/lib/prompt-state.d.ts +142 -0
- package/lib/prompt-state.js +101 -0
- package/lib/prompt-state.js.map +1 -0
- package/lib/prompt.d.ts +270 -0
- package/lib/prompt.js +408 -0
- package/lib/prompt.js.map +1 -0
- package/lib/provider.d.ts +44 -0
- package/lib/provider.js +66 -0
- package/lib/provider.js.map +1 -0
- package/lib/redact.d.ts +24 -0
- package/lib/redact.js +85 -0
- package/lib/redact.js.map +1 -0
- package/lib/registry.d.ts +187 -0
- package/lib/registry.js +235 -0
- package/lib/registry.js.map +1 -0
- package/lib/removal.d.ts +159 -0
- package/lib/removal.js +556 -0
- package/lib/removal.js.map +1 -0
- package/lib/render.d.ts +97 -0
- package/lib/render.js +530 -0
- package/lib/render.js.map +1 -0
- package/lib/repair-run.d.ts +76 -0
- package/lib/repair-run.js +506 -0
- package/lib/repair-run.js.map +1 -0
- package/lib/repair.d.ts +208 -0
- package/lib/repair.js +357 -0
- package/lib/repair.js.map +1 -0
- package/lib/repo.d.ts +78 -0
- package/lib/repo.js +184 -0
- package/lib/repo.js.map +1 -0
- package/lib/rules-commands.d.ts +46 -0
- package/lib/rules-commands.js +379 -0
- package/lib/rules-commands.js.map +1 -0
- package/lib/rules.d.ts +267 -0
- package/lib/rules.js +478 -0
- package/lib/rules.js.map +1 -0
- package/lib/save-core.d.ts +72 -0
- package/lib/save-core.js +220 -0
- package/lib/save-core.js.map +1 -0
- package/lib/search.d.ts +112 -0
- package/lib/search.js +282 -0
- package/lib/search.js.map +1 -0
- package/lib/session-rules.d.ts +222 -0
- package/lib/session-rules.js +454 -0
- package/lib/session-rules.js.map +1 -0
- package/lib/signature.d.ts +45 -0
- package/lib/signature.js +199 -0
- package/lib/signature.js.map +1 -0
- package/lib/store.d.ts +156 -0
- package/lib/store.js +368 -0
- package/lib/store.js.map +1 -0
- package/lib/sync.d.ts +220 -0
- package/lib/sync.js +810 -0
- package/lib/sync.js.map +1 -0
- package/lib/tools.d.ts +113 -0
- package/lib/tools.js +1090 -0
- package/lib/tools.js.map +1 -0
- package/lib/treedx/client.d.ts +57 -0
- package/lib/treedx/client.js +82 -0
- package/lib/treedx/client.js.map +1 -0
- package/lib/treedx/provider.d.ts +39 -0
- package/lib/treedx/provider.js +479 -0
- package/lib/treedx/provider.js.map +1 -0
- package/lib/treedx/state.d.ts +27 -0
- package/lib/treedx/state.js +65 -0
- package/lib/treedx/state.js.map +1 -0
- package/lib/types.d.ts +210 -0
- package/lib/types.js +31 -0
- package/lib/types.js.map +1 -0
- package/lib/version.d.ts +9 -0
- package/lib/version.js +10 -0
- package/lib/version.js.map +1 -0
- package/lib/vocabulary.d.ts +41 -0
- package/lib/vocabulary.js +118 -0
- package/lib/vocabulary.js.map +1 -0
- package/lib/warnings.d.ts +10 -0
- package/lib/warnings.js +18 -0
- package/lib/warnings.js.map +1 -0
- package/package.json +151 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
package/lib/compose.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { CollectionSignature } from './signature.ts';
|
|
2
|
+
import type { ChapterRange } from './types.ts';
|
|
3
|
+
import type { SessionEventLike } from './types.ts';
|
|
4
|
+
export interface ComposeConfig {
|
|
5
|
+
/** Merge threshold τ in [0,1]: collections merge while overlap score ≥ τ. */
|
|
6
|
+
mergeThreshold: number;
|
|
7
|
+
/** Estimated-token cap per chapter; overshoot forces a split. */
|
|
8
|
+
chapterLimit: number;
|
|
9
|
+
}
|
|
10
|
+
export interface ComposeResult {
|
|
11
|
+
chapters: ChapterRange[];
|
|
12
|
+
notes: string[];
|
|
13
|
+
/** Span events belonging to turns that did not complete inside the span. */
|
|
14
|
+
unarchivedSeqs: number[];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Overlap score in [0,1]: path matches weigh 2× (same file ≈ same task),
|
|
18
|
+
* command and term matches 1×; denominator is the union, so a collection
|
|
19
|
+
* with mostly NEW signal scores low against the running chapter.
|
|
20
|
+
*/
|
|
21
|
+
export declare function signatureScore(a: CollectionSignature, b: CollectionSignature): number;
|
|
22
|
+
/**
|
|
23
|
+
* Compose the span [spanStart, spanEnd] of `events` into topic-sequential
|
|
24
|
+
* chapters from `collections` (the session's stored per-turn signatures).
|
|
25
|
+
*
|
|
26
|
+
* Returns no chapters when the span holds no COMPLETED collections — the
|
|
27
|
+
* caller then falls back to its legacy size-based behavior rather than
|
|
28
|
+
* archiving nothing-and-claiming-to.
|
|
29
|
+
*/
|
|
30
|
+
export declare function composeChapters(events: readonly SessionEventLike[], spanStart: number, spanEnd: number, collections: readonly CollectionSignature[], config: ComposeConfig): ComposeResult;
|
package/lib/compose.js
ADDED
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Topic-sequential composition (knowledge-repo.md §4.2–4.4).
|
|
3
|
+
*
|
|
4
|
+
* The user requirement in the record: consecutive message collections that
|
|
5
|
+
* reference the SAME TASK merge into one chapter; a chapter splits only when
|
|
6
|
+
* the task changes (signature overlap < τ) or the chapter outgrows a limit.
|
|
7
|
+
* Greedy, sequential, deterministic — and composed from the per-turn
|
|
8
|
+
* signatures already stored at turn/end (§4.1), so archive time is O(turns).
|
|
9
|
+
*
|
|
10
|
+
* Completeness guard (§4.3): only collections whose turn COMPLETED inside the
|
|
11
|
+
* span are archived; anything cut by a span boundary stays live and is noted,
|
|
12
|
+
* never silently dropped and never silently included.
|
|
13
|
+
*
|
|
14
|
+
* Pure module: events + stored collections + config in, chapter ranges out.
|
|
15
|
+
* The titles/summaries come from deriveIdentity (engine-core) — the same
|
|
16
|
+
* deterministic derivation the rest of the plugin uses; P2 enrichment may
|
|
17
|
+
* relabel later, never re-chapter (append-only, §4.4).
|
|
18
|
+
*/
|
|
19
|
+
import { deriveIdentity } from "./engine-core.js";
|
|
20
|
+
import { detectPlans } from "./plans.js";
|
|
21
|
+
const union = (a, b) => new Set([...a, ...b]);
|
|
22
|
+
const inter = (a, b) => {
|
|
23
|
+
const set = new Set(a);
|
|
24
|
+
return b.reduce((n, v) => n + (set.has(v) ? 1 : 0), 0);
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Overlap score in [0,1]: path matches weigh 2× (same file ≈ same task),
|
|
28
|
+
* command and term matches 1×; denominator is the union, so a collection
|
|
29
|
+
* with mostly NEW signal scores low against the running chapter.
|
|
30
|
+
*/
|
|
31
|
+
export function signatureScore(a, b) {
|
|
32
|
+
const num = 2 * inter(a.paths, b.paths) + inter(a.commands, b.commands) + inter(a.terms, b.terms);
|
|
33
|
+
const den = 2 * union(a.paths, b.paths).size + union(a.commands, b.commands).size + union(a.terms, b.terms).size;
|
|
34
|
+
if (den === 0)
|
|
35
|
+
return 0;
|
|
36
|
+
return num / den;
|
|
37
|
+
}
|
|
38
|
+
const messagesOf = (events, lo, hi) => events
|
|
39
|
+
.filter((e) => e.seq >= lo && e.seq <= hi && (e.type === 'user/message' || e.type === 'assistant/message'))
|
|
40
|
+
.map((e) => {
|
|
41
|
+
const d = (e.data ?? {});
|
|
42
|
+
const message = (d.message ?? d);
|
|
43
|
+
const content = Array.isArray(message.content)
|
|
44
|
+
? message.content
|
|
45
|
+
.filter((b) => b.type === 'text')
|
|
46
|
+
.map((b) => ({ type: 'text', ...(b.text !== undefined ? { text: b.text } : {}) }))
|
|
47
|
+
: [];
|
|
48
|
+
return { role: e.type === 'assistant/message' ? 'assistant' : 'user', content };
|
|
49
|
+
});
|
|
50
|
+
/**
|
|
51
|
+
* Compose the span [spanStart, spanEnd] of `events` into topic-sequential
|
|
52
|
+
* chapters from `collections` (the session's stored per-turn signatures).
|
|
53
|
+
*
|
|
54
|
+
* Returns no chapters when the span holds no COMPLETED collections — the
|
|
55
|
+
* caller then falls back to its legacy size-based behavior rather than
|
|
56
|
+
* archiving nothing-and-claiming-to.
|
|
57
|
+
*/
|
|
58
|
+
export function composeChapters(events, spanStart, spanEnd, collections, config) {
|
|
59
|
+
const notes = [];
|
|
60
|
+
const inSpan = (c) => c.seqs.length > 0 && c.seqs[0] >= spanStart && c.seqs[c.seqs.length - 1] <= spanEnd;
|
|
61
|
+
const usable = collections.filter(inSpan).sort((a, b) => a.seqs[0] - b.seqs[0]);
|
|
62
|
+
if (usable.length === 0) {
|
|
63
|
+
const unarchived = events.filter((e) => e.seq >= spanStart && e.seq <= spanEnd).map((e) => e.seq);
|
|
64
|
+
notes.push('no completed collections in span — legacy segmentation applies');
|
|
65
|
+
return { chapters: [], notes, unarchivedSeqs: unarchived };
|
|
66
|
+
}
|
|
67
|
+
const covered = new Set(usable.flatMap((c) => c.seqs));
|
|
68
|
+
const unarchivedSeqs = events
|
|
69
|
+
.filter((e) => e.seq >= spanStart && e.seq <= spanEnd && !covered.has(e.seq))
|
|
70
|
+
.map((e) => e.seq);
|
|
71
|
+
// #59 — this set is NOT evidence of unfinished work. It is simply "no collection signed it", and
|
|
72
|
+
// a collection can be missing because the signature was lost in a registry lost-update while the
|
|
73
|
+
// TURN COMPLETED (measured: session-2edf9694, 32 turn/ends vs 31 collections → 203 events in no
|
|
74
|
+
// chapter, while the note below used to assert they were unfinished). Those seqs are ABSORBED into
|
|
75
|
+
// the neighbouring ranges by `close()` below, so nothing finished is ever dropped; the note now
|
|
76
|
+
// says which of them actually belong to an unfinished turn, derived from `turn/end`, not assumed.
|
|
77
|
+
if (unarchivedSeqs.length > 0) {
|
|
78
|
+
const lastTurnEnd = events.reduce((m, e) => (e.type === 'turn/end' && e.seq <= spanEnd && e.seq > m ? e.seq : m), -1);
|
|
79
|
+
const unsignedDone = unarchivedSeqs.filter((sq) => sq <= lastTurnEnd);
|
|
80
|
+
notes.push(unsignedDone.length > 0
|
|
81
|
+
? `${unsignedDone.length} unsigned event(s) in ${spanStart}..${lastTurnEnd} are inside COMPLETED turns — absorbed into the adjacent chapter (record §4.3, #59)`
|
|
82
|
+
: `only unfinished tail content (${unarchivedSeqs[0]}..${unarchivedSeqs[unarchivedSeqs.length - 1]}) stays live, per §4.3`);
|
|
83
|
+
}
|
|
84
|
+
const runningOf = (c) => ({
|
|
85
|
+
first: c, last: c, paths: new Set(c.paths), commands: new Set(c.commands), terms: new Set(c.terms),
|
|
86
|
+
size: c.size, startSeq: c.seqs[0], endSeq: c.seqs[c.seqs.length - 1],
|
|
87
|
+
});
|
|
88
|
+
const scoreAgainst = (c, r) => Math.max(signatureScore(c, r.first), signatureScore(c, r.last));
|
|
89
|
+
// primary match: the first path of c equals the first path of either member
|
|
90
|
+
// (with a prefix tolerance: 'src/render' vs 'src/render.ts' — the same file
|
|
91
|
+
// named from prose vs tool args).
|
|
92
|
+
const primaryOf = (sig) => sig.paths[0];
|
|
93
|
+
const primaryEq = (a, b) => {
|
|
94
|
+
if (a === undefined || b === undefined || a === '' || b === '')
|
|
95
|
+
return false;
|
|
96
|
+
return a === b || a.startsWith(b + '.') || b.startsWith(a + '.');
|
|
97
|
+
};
|
|
98
|
+
const primaryMatch = (c, r) => primaryEq(primaryOf(c), primaryOf(r.first)) || primaryEq(primaryOf(c), primaryOf(r.last));
|
|
99
|
+
// A plan submission is the strongest topic boundary a log contains: the
|
|
100
|
+
// planning work CONCLUDES with it (docs/plans-carriage.md § 6), so the
|
|
101
|
+
// collection that carries one closes its chapter and the implementation that
|
|
102
|
+
// follows opens the next. Deterministic, collection-granular, no model call.
|
|
103
|
+
const planSeqs = detectPlans(events.filter((e) => e.seq >= spanStart && e.seq <= spanEnd)).plans
|
|
104
|
+
.map((p) => p.seq);
|
|
105
|
+
const holdsPlan = (lo, hi) => planSeqs.some((sq) => sq >= lo && sq <= hi);
|
|
106
|
+
const firstPlanTitleIn = (lo, hi) => {
|
|
107
|
+
const hit = detectPlans(events.filter((e) => e.seq >= lo && e.seq <= hi)).plans[0];
|
|
108
|
+
return hit !== undefined && hit.title !== '' ? hit.title : undefined;
|
|
109
|
+
};
|
|
110
|
+
const chapters = [];
|
|
111
|
+
// Contiguity bookkeeping (#59): the first range starts at the SPAN, not at its collection, and each
|
|
112
|
+
// later range starts one past the previous end — that is what absorbs an unsigned-but-completed
|
|
113
|
+
// turn instead of dropping it. `pendingLo` is the next legal start.
|
|
114
|
+
let pendingLo = spanStart;
|
|
115
|
+
let running = runningOf(usable[0]);
|
|
116
|
+
// True after a plan closed the chapter: the NEXT collection opens the next
|
|
117
|
+
// chapter, it is never merged backwards (and never re-added — a duplicate
|
|
118
|
+
// range would archive the same text twice, which validateRanges refuses).
|
|
119
|
+
let closedAtPlan = false;
|
|
120
|
+
for (const c of usable.slice(1)) {
|
|
121
|
+
if (closedAtPlan) {
|
|
122
|
+
running = runningOf(c);
|
|
123
|
+
closedAtPlan = false;
|
|
124
|
+
if (holdsPlan(running.startSeq, running.endSeq)) {
|
|
125
|
+
close();
|
|
126
|
+
closedAtPlan = true;
|
|
127
|
+
}
|
|
128
|
+
continue;
|
|
129
|
+
}
|
|
130
|
+
// r28 (first live topic test): overlap Jaccard ALONE never reaches τ on
|
|
131
|
+
// real research turns — a same-topic pair touching 5–6 files each scores
|
|
132
|
+
// ~0.08 because one shared path dilutes in a union of ~10. The signal
|
|
133
|
+
// that actually separates is the PRIMARY path (paths[0]: the first file
|
|
134
|
+
// the turn touched): identical across the render pair, distinct at every
|
|
135
|
+
// topic change. Merge on (score ≥ τ) OR (primary match).
|
|
136
|
+
// A chapter that already holds a plan is CLOSED: the submission concludes the
|
|
137
|
+
// planning, so the next turn opens the next chapter even when the topic
|
|
138
|
+
// overlaps. (Merging into a plan-bearing chapter would bury the decision.)
|
|
139
|
+
const merge = (scoreAgainst(c, running) >= config.mergeThreshold || primaryMatch(c, running))
|
|
140
|
+
&& running.size + c.size <= config.chapterLimit
|
|
141
|
+
&& !holdsPlan(running.startSeq, running.endSeq);
|
|
142
|
+
if (merge) {
|
|
143
|
+
for (const p of c.paths)
|
|
144
|
+
running.paths.add(p);
|
|
145
|
+
for (const q of c.commands)
|
|
146
|
+
running.commands.add(q);
|
|
147
|
+
for (const t of c.terms)
|
|
148
|
+
running.terms.add(t);
|
|
149
|
+
running.size += c.size;
|
|
150
|
+
running.last = c;
|
|
151
|
+
running.endSeq = c.seqs[c.seqs.length - 1];
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
close();
|
|
155
|
+
running = runningOf(c);
|
|
156
|
+
}
|
|
157
|
+
// The chapter that carries a plan ENDS there (docs/plans-carriage.md § 6).
|
|
158
|
+
if (holdsPlan(running.startSeq, running.endSeq)) {
|
|
159
|
+
close();
|
|
160
|
+
closedAtPlan = true;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
// Half one of §4.3 still binds: never archive past the last COMPLETED turn. `spanEnd` is the
|
|
164
|
+
// caller's anchor and normally IS a turn/end, so this is the identity; when a manual `/compact`
|
|
165
|
+
// hands a span that cuts a turn, the clamp keeps the unfinished tail live instead of absorbing
|
|
166
|
+
// it. Both halves of the guard, one line: nothing unfinished in, nothing finished out.
|
|
167
|
+
const lastCompletedEnd = events.reduce((m, e) => (e.type === 'turn/end' && e.seq <= spanEnd && e.seq > m ? e.seq : m), spanStart);
|
|
168
|
+
if (!closedAtPlan)
|
|
169
|
+
close(lastCompletedEnd);
|
|
170
|
+
function close(hiOverride) {
|
|
171
|
+
const lo = pendingLo;
|
|
172
|
+
const hi = hiOverride ?? running.endSeq;
|
|
173
|
+
const identity = deriveIdentity(messagesOf(events, lo, hi), false, firstPlanTitleIn(lo, hi));
|
|
174
|
+
const pathsHint = [...running.paths].slice(0, 3).join(', ');
|
|
175
|
+
chapters.push({
|
|
176
|
+
title: identity.title,
|
|
177
|
+
summary: `${identity.summary}${pathsHint !== '' ? ` · ${pathsHint}` : ''}`,
|
|
178
|
+
startSeq: lo,
|
|
179
|
+
endSeq: hi,
|
|
180
|
+
});
|
|
181
|
+
pendingLo = hi + 1;
|
|
182
|
+
}
|
|
183
|
+
return { chapters, notes, unarchivedSeqs };
|
|
184
|
+
}
|
|
185
|
+
//# sourceMappingURL=compose.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compose.js","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* chapters_continue — pure orchestration of a citation-linked continuation,
|
|
3
|
+
* behind ports (docs/development.md § L0: this file imports no cordis and no
|
|
4
|
+
* @deepseek-ai package; `src/tools.ts` adapts it).
|
|
5
|
+
*
|
|
6
|
+
* Order is the atomicity contract (docs/architecture.md § Atomicity):
|
|
7
|
+
* validate ranges -> reserve -> write+verify files -> assemble the notice ->
|
|
8
|
+
* budget preflight -> CREATE the child -> commit registry links. A crash before
|
|
9
|
+
* creation leaves orphan files (harmless, numbers already spent); creation
|
|
10
|
+
* without the commit is retried idempotently via attemptKey + linkChild.
|
|
11
|
+
*
|
|
12
|
+
* Budget honesty: allowance is a share of the window REMAINING after the
|
|
13
|
+
* header, never of the whole window; the header is bounded by the last real
|
|
14
|
+
* request's full prompt (conservative — over-counting errs toward loud
|
|
15
|
+
* refusals, which is the designed direction). No usage yet -> the probe says
|
|
16
|
+
* `headerBoundTokens: null` and the allowance conservatively assumes a zero
|
|
17
|
+
* header only because a session with no requests cannot have a large TOC.
|
|
18
|
+
*/
|
|
19
|
+
import type { ChapterRange, NoticePlan, RenderConfig, SessionEventLike, ToolResultOverride } from './types.ts';
|
|
20
|
+
import type { ChapterRecord } from './archive.ts';
|
|
21
|
+
import type { SessionState } from './registry.ts';
|
|
22
|
+
import { type PlanIntent } from './plans.ts';
|
|
23
|
+
export interface ContinueArgs {
|
|
24
|
+
callerSessionId: string;
|
|
25
|
+
/** The caller's own preset id, resolved by the adapter from its session observation. */
|
|
26
|
+
callerPreset: string | null;
|
|
27
|
+
title: string;
|
|
28
|
+
handoffNote: string;
|
|
29
|
+
chapters: ChapterRange[];
|
|
30
|
+
toolResultOverrides: ToolResultOverride[];
|
|
31
|
+
/**
|
|
32
|
+
* The knowledge-project line for the notice (record §8): `Project: <slug> ·
|
|
33
|
+
* <key>` plus the search instruction. Set by the adapter from the linked
|
|
34
|
+
* project; absent → the notice simply omits the section.
|
|
35
|
+
*/
|
|
36
|
+
projectLine?: string;
|
|
37
|
+
/** P3 §7.3: rules block for the notice (see assembleNotice). */
|
|
38
|
+
rulesSection?: string;
|
|
39
|
+
/** Why this child exists — see PlanIntent. Absent means 'continue'. */
|
|
40
|
+
intent?: PlanIntent | undefined;
|
|
41
|
+
}
|
|
42
|
+
export interface ContinueConfig extends RenderConfig {
|
|
43
|
+
artifactStoreRoot: string;
|
|
44
|
+
continuationBudgetRatio: number;
|
|
45
|
+
fallbackPreset: string;
|
|
46
|
+
/** Topic-sequential composition (record §4.2): merge while overlap ≥ τ. */
|
|
47
|
+
mergeThreshold: number;
|
|
48
|
+
/** Estimated-token cap per composed chapter. */
|
|
49
|
+
chapterLimit: number;
|
|
50
|
+
/**
|
|
51
|
+
* Workspace cwd of the session archiving, when the caller knows it (#69). `writeArchive` normalizes
|
|
52
|
+
* stored paths to workspace-relative with it; absent, the paths keep the store root's own dialect and
|
|
53
|
+
* every comparison must go through `sameStoredPath`.
|
|
54
|
+
*/
|
|
55
|
+
workspaceCwd?: string | undefined;
|
|
56
|
+
/**
|
|
57
|
+
* Hard oversize multiple of `chapterTokenTarget` (#59): over the target warns, over
|
|
58
|
+
* `target × factor` the door refuses before reserving a number. Optional so a profile that predates
|
|
59
|
+
* the key keeps the pre-#59 behaviour of warning only — the default lives in `Config`, not here.
|
|
60
|
+
*/
|
|
61
|
+
chapterOversizeFactor?: number;
|
|
62
|
+
/**
|
|
63
|
+
* Carry the `## Plans on this path` block into the child's notice
|
|
64
|
+
* (docs/plans-carriage.md § 4). Renders ZERO bytes when the path holds no
|
|
65
|
+
* plan, so a session that never entered plan mode is bit-identical to before
|
|
66
|
+
* this existed — which is what keeps the model tapes matching.
|
|
67
|
+
*/
|
|
68
|
+
plansInNotice?: boolean | undefined;
|
|
69
|
+
/**
|
|
70
|
+
* Teach a child HOW to look things up, not only what was archived (findability
|
|
71
|
+
* audit, 2026-10-11). The index answers questions about every kind — chapters,
|
|
72
|
+
* `kind: plan` documents, curated rules — but the notice previously pointed at
|
|
73
|
+
* nothing but `read`, so a session had to guess that `chapters_search` exists.
|
|
74
|
+
*/
|
|
75
|
+
retrievalHints?: boolean | undefined;
|
|
76
|
+
/**
|
|
77
|
+
* Seed `plan/mode {active:true}` into a CONTINUATION child when the archived span
|
|
78
|
+
* ended with plan mode active, so the planning gate survives the boundary the way
|
|
79
|
+
* the plot does (decision 2026-10-10; measured: the kernel accepts a two-event
|
|
80
|
+
* seed and the host's own plan projection folds it to active). Never for a branch.
|
|
81
|
+
*/
|
|
82
|
+
planSeedMode?: boolean | undefined;
|
|
83
|
+
}
|
|
84
|
+
export interface BudgetProbe {
|
|
85
|
+
windowTokens: number | null;
|
|
86
|
+
headerBoundTokens: number | null;
|
|
87
|
+
}
|
|
88
|
+
export interface ContinuePorts {
|
|
89
|
+
/** The caller's durable events, oldest first (full log; the ceiling trims it). */
|
|
90
|
+
readCallerEvents(): Promise<SessionEventLike[]>;
|
|
91
|
+
getState(sessionId: string): Promise<SessionState>;
|
|
92
|
+
putState(sessionId: string, state: SessionState): Promise<void>;
|
|
93
|
+
/**
|
|
94
|
+
* The ONLY safe way to write an EXISTING row (#101): `fn` receives the live row and returns its
|
|
95
|
+
* replacement, so a chapter another door committed while we were rendering files cannot be overwritten.
|
|
96
|
+
* `getState`→`putState` is reserved for brand-new rows (see docs/contract.md).
|
|
97
|
+
*/
|
|
98
|
+
mutateState(sessionId: string, fn: (state: SessionState) => SessionState): Promise<void>;
|
|
99
|
+
/** ArchiveFs anchored at the caller's workspace cwd (the read tool reaches it). */
|
|
100
|
+
fs(): import('./archive.ts').ArchiveFs;
|
|
101
|
+
budgetProbe(): Promise<BudgetProbe>;
|
|
102
|
+
newId(): string;
|
|
103
|
+
/** agents.create + setup-mount + workspace attach; throws on kernel refusal.
|
|
104
|
+
* `modeEvents` are the child's OWN synthetic state events (never a parent slice):
|
|
105
|
+
* they follow the notice, so the seed stays contiguous from seq 0. */
|
|
106
|
+
createChild(input: {
|
|
107
|
+
sessionId: string;
|
|
108
|
+
noticeEvent: SessionEventLike;
|
|
109
|
+
modeEvents: SessionEventLike[];
|
|
110
|
+
presetId: string;
|
|
111
|
+
title: string;
|
|
112
|
+
}): Promise<void | {
|
|
113
|
+
warnings?: readonly string[];
|
|
114
|
+
}>;
|
|
115
|
+
now(): number;
|
|
116
|
+
/**
|
|
117
|
+
* The plane's diagnostics seam (#54). The core refuses a child creation with the kernel's
|
|
118
|
+
* own words — and on host 0.2.x those words ended the whole acceptance chain while the
|
|
119
|
+
* error sink stayed empty, because only the engine had ever written to it. The core cannot
|
|
120
|
+
* touch the filesystem (it is L0-pure, and its tests run everywhere), so each plane injects
|
|
121
|
+
* its own: `src/diag.ts` for both of them in practice, but injected so a caller can also
|
|
122
|
+
* surface it. OPTIONAL on purpose: absence must never break a door.
|
|
123
|
+
*/
|
|
124
|
+
diagnostic?(where: string, message: string, error?: unknown): void;
|
|
125
|
+
/**
|
|
126
|
+
* #255: a TOC entry failed integrity (`modified` or `missing`) is additionally structured here,
|
|
127
|
+
* with the referrer, so the plane can log the dead citation durably (removals/missing-access.log).
|
|
128
|
+
* The warning text keeps flowing as before — this is the DELIVERY channel, not a second decision:
|
|
129
|
+
* the verdict is minted once, at `verifyChapter`, and only relayed.
|
|
130
|
+
*/
|
|
131
|
+
onIntegrity?(referrerSessionId: string, citedPath: string, verdict: 'modified' | 'missing'): void;
|
|
132
|
+
}
|
|
133
|
+
export interface ContinueResult {
|
|
134
|
+
ok: boolean;
|
|
135
|
+
childSessionId?: string;
|
|
136
|
+
presetUsed?: string;
|
|
137
|
+
chapters?: Array<{
|
|
138
|
+
number: number;
|
|
139
|
+
path: string;
|
|
140
|
+
startSeq: number;
|
|
141
|
+
endSeq: number;
|
|
142
|
+
}>;
|
|
143
|
+
warnings?: string[];
|
|
144
|
+
/** Numbers behind every outcome — AGENTS: refuse WITH the numbers. */
|
|
145
|
+
budget?: {
|
|
146
|
+
usedTokens: number;
|
|
147
|
+
allowanceTokens: number;
|
|
148
|
+
windowTokens: number | null;
|
|
149
|
+
headerBoundTokens: number | null;
|
|
150
|
+
};
|
|
151
|
+
reason?: string;
|
|
152
|
+
}
|
|
153
|
+
export declare class Refusal extends Error {
|
|
154
|
+
readonly result: ContinueResult;
|
|
155
|
+
constructor(result: ContinueResult);
|
|
156
|
+
}
|
|
157
|
+
export interface NoticeEntry {
|
|
158
|
+
number: number;
|
|
159
|
+
path: string;
|
|
160
|
+
title: string;
|
|
161
|
+
summary: string;
|
|
162
|
+
status: 'ok' | 'modified' | 'missing';
|
|
163
|
+
/** user+assistant message count (record §7.3); absent for legacy records. */
|
|
164
|
+
messages?: number;
|
|
165
|
+
}
|
|
166
|
+
/** The child's whole content: honest preamble, in-flight note, flat index, back-links. */
|
|
167
|
+
export declare function assembleNotice(input: {
|
|
168
|
+
title: string;
|
|
169
|
+
handoffNote: string;
|
|
170
|
+
entries: readonly NoticeEntry[];
|
|
171
|
+
rootSession: string;
|
|
172
|
+
parentSession: string;
|
|
173
|
+
storeRoot: string;
|
|
174
|
+
projectLine?: string;
|
|
175
|
+
/** P3 §7.3: CORE RULES + category index, composed by the adapter from this
|
|
176
|
+
* machine's own approvals. Absent/empty => zero injected bytes (tape-safe). */
|
|
177
|
+
rulesSection?: string;
|
|
178
|
+
/**
|
|
179
|
+
* docs/plans-carriage.md § 4: the flat `## Plans on this path` block, in CAUSAL order
|
|
180
|
+
* block, built by buildPlansSection from the ancestor path's chapter records
|
|
181
|
+
* plus whatever plans the caller's live tail still holds. Placed ABOVE the
|
|
182
|
+
* fold because the operative plan is the one fact a continuation must not
|
|
183
|
+
* re-derive — a child that cannot see it either implements something nobody
|
|
184
|
+
* approved or re-plans from recall. Absent/empty => zero injected bytes.
|
|
185
|
+
*/
|
|
186
|
+
plansSection?: string;
|
|
187
|
+
retrievalHints?: boolean | undefined;
|
|
188
|
+
}): string;
|
|
189
|
+
/** The budget formula with its refusal numbers, kept apart for direct testing. */
|
|
190
|
+
export declare function preflight(input: {
|
|
191
|
+
noticeTokens: number;
|
|
192
|
+
budget: BudgetProbe;
|
|
193
|
+
ratio: number;
|
|
194
|
+
}): {
|
|
195
|
+
ok: true;
|
|
196
|
+
budget: NonNullable<ContinueResult['budget']>;
|
|
197
|
+
} | {
|
|
198
|
+
ok: false;
|
|
199
|
+
budget: NonNullable<ContinueResult['budget']>;
|
|
200
|
+
};
|
|
201
|
+
export declare function runContinue(ports: ContinuePorts, args: ContinueArgs, config: ContinueConfig): Promise<ContinueResult>;
|
|
202
|
+
/**
|
|
203
|
+
* The notice's plan rows: every plan the ARCHIVE carries, cited to the chapter
|
|
204
|
+
* that holds it, in the same display numbering as the chapter list (docs/
|
|
205
|
+
* plans-carriage.md § 4 — flat, in causal order, because the model never
|
|
206
|
+
* traverses; sessions have independent seq spaces, so the caller's order IS the
|
|
207
|
+
* chronology). Artifact paths come from the record (fully workspace-qualified),
|
|
208
|
+
* not from the fact (store-relative), so the child's `read` hits the file.
|
|
209
|
+
*/
|
|
210
|
+
export declare function archivedPlanRows(records: readonly ChapterRecord[], entries: readonly NoticeEntry[]): NoticePlan[];
|
|
211
|
+
/**
|
|
212
|
+
* Plans the caller still holds UNARCHIVED — a plan whose review is open sits in an
|
|
213
|
+
* unfinished turn, and the archive ceiling is completed turns only, so it is in no
|
|
214
|
+
* chapter and no artifact (docs/plans-carriage.md § 5). The child must still be
|
|
215
|
+
* told it exists, and told plainly that it was never approved.
|
|
216
|
+
*/
|
|
217
|
+
export declare function livePlanRows(events: readonly SessionEventLike[], watermark: number): NoticePlan[];
|
|
218
|
+
/** The highest seq any cited chapter covers — the boundary between stored and live. */
|
|
219
|
+
export declare const archiveWatermark: (records: readonly ChapterRecord[]) => number;
|
|
220
|
+
/** Fields both continue and fork need to create the child. */
|
|
221
|
+
export type FinishArgs = Pick<ContinueArgs, 'callerSessionId' | 'callerPreset' | 'title' | 'handoffNote' | 'projectLine' | 'rulesSection' | 'intent'>;
|
|
222
|
+
/**
|
|
223
|
+
* chapters_fork: open a sibling line citing the SAME archive, archiving nothing
|
|
224
|
+
* new. The point is branching (AGENTS "branchable — history can fork, not
|
|
225
|
+
* just truncate"): parent and child keep working independently; no files are
|
|
226
|
+
* written and no numbers reserved, so a fork is cheap and cannot orphan a
|
|
227
|
+
* citation it did not already exist.
|
|
228
|
+
*/
|
|
229
|
+
export interface ForkArgs extends FinishArgs {
|
|
230
|
+
}
|
|
231
|
+
export declare function runFork(ports: ContinuePorts, args: ForkArgs, config: ContinueConfig): Promise<ContinueResult>;
|
|
232
|
+
/**
|
|
233
|
+
* Deterministic segmentation: split [0..anchorSeq] into chapter ranges WITHOUT
|
|
234
|
+
* any model call — the fork-button backend (a button cannot wait for proposed
|
|
235
|
+
* ranges, and auto mode must never paraphrase: invariant 4 holds, only
|
|
236
|
+
* positions are computed here; titles/summaries derive from content lines).
|
|
237
|
+
* Cuts land ONLY on `turn/end` boundaries; a segment closes at the first
|
|
238
|
+
* boundary reaching ~90% of chapterTokenTarget, so overshoot is bounded.
|
|
239
|
+
*/
|
|
240
|
+
export declare function deriveRanges(events: readonly SessionEventLike[], anchorSeq: number, chapterTokenTarget: number, fromSeq?: number): {
|
|
241
|
+
chapters: ChapterRange[];
|
|
242
|
+
notes: string[];
|
|
243
|
+
};
|
|
244
|
+
/** The adapter surfaces refusals as tool output, never as crashes. */
|
|
245
|
+
export declare function refusalResult(error: unknown): ContinueResult | null;
|