@treeseed/dsh-chapters 0.1.7 → 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/docs/knowledge-repo.md +33 -0
- package/docs/plans-carriage.md +137 -8
- package/docs/verify.md +8 -2
- package/lib/archive.d.ts +12 -0
- package/lib/archive.js +56 -0
- package/lib/archive.js.map +1 -1
- package/lib/continue-core.d.ts +15 -2
- package/lib/continue-core.js +29 -6
- package/lib/continue-core.js.map +1 -1
- package/lib/engine-core.d.ts +19 -1
- package/lib/engine-core.js +18 -3
- package/lib/engine-core.js.map +1 -1
- package/lib/engine.d.ts +3 -0
- package/lib/engine.js +18 -2
- package/lib/engine.js.map +1 -1
- package/lib/enrich-wire.js +6 -0
- package/lib/enrich-wire.js.map +1 -1
- package/lib/index.d.ts +5 -0
- package/lib/index.js +7 -0
- package/lib/index.js.map +1 -1
- package/lib/indexing.d.ts +3 -1
- package/lib/indexing.js +4 -1
- package/lib/indexing.js.map +1 -1
- package/lib/injections.d.ts +23 -0
- package/lib/injections.js +29 -1
- package/lib/injections.js.map +1 -1
- package/lib/plans.d.ts +51 -2
- package/lib/plans.js +113 -15
- package/lib/plans.js.map +1 -1
- package/lib/registry.d.ts +12 -0
- package/lib/registry.js +24 -0
- package/lib/registry.js.map +1 -1
- package/lib/render.js +17 -1
- package/lib/render.js.map +1 -1
- package/lib/search.d.ts +1 -1
- package/lib/search.js +4 -1
- package/lib/search.js.map +1 -1
- package/lib/store.js +16 -1
- package/lib/store.js.map +1 -1
- package/lib/tools.js +14 -2
- package/lib/tools.js.map +1 -1
- package/lib/types.d.ts +24 -0
- package/lib/types.js.map +1 -1
- package/package.json +1 -1
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' && !
|
|
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
|
package/lib/injections.js.map
CHANGED
|
@@ -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,
|
|
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). */
|
|
@@ -66,12 +75,27 @@ export interface PlanScan {
|
|
|
66
75
|
/** Last logged value wins (the host projection rule). Null when no event exists. */
|
|
67
76
|
modeActive: boolean | null;
|
|
68
77
|
}
|
|
69
|
-
/**
|
|
78
|
+
/**
|
|
79
|
+
* The first markdown heading at any level, or '' when the payload has none. The
|
|
80
|
+
* DISPLAY title is bounded: a plan whose H1 is a 4KB paragraph would otherwise be
|
|
81
|
+
* printed in full in every chapter that carries it and again in every child notice
|
|
82
|
+
* built from that path. Bounded here, not at the call sites — and the artifact keeps
|
|
83
|
+
* the untouched heading, because the artifact keeps every byte.
|
|
84
|
+
*/
|
|
85
|
+
export declare const PLAN_TITLE_MAX = 120;
|
|
70
86
|
export declare function planTitleOf(text: string): string;
|
|
87
|
+
/** Outline budget: entries × chars. An outline is an INDEX, not the document — the
|
|
88
|
+
* full heading map with line numbers is one `chapters_artifact toc` call away, so
|
|
89
|
+
* printing 24 unbounded headings per plan (a 4 KB H2 is a real thing people write)
|
|
90
|
+
* would repeat the 0.1.8 mistake at a smaller scale. */
|
|
91
|
+
export declare const PLAN_OUTLINE_MAX_ENTRIES = 12;
|
|
92
|
+
export declare const PLAN_OUTLINE_TITLE_MAX = 60;
|
|
71
93
|
/**
|
|
72
94
|
* The plan's own table of contents: H2/H3 headings in document order, with fenced
|
|
73
95
|
* blocks excluded so a `# comment` inside a code sample never poses as a heading
|
|
74
|
-
* (the same discipline `artifact-query.buildToc` applies to stored blobs).
|
|
96
|
+
* (the same discipline `artifact-query.buildToc` applies to stored blobs). Each
|
|
97
|
+
* entry is bounded; when entries are dropped a trailing `+N more` says so — a
|
|
98
|
+
* silently shortened index is the lie this codebase exists to avoid.
|
|
75
99
|
*/
|
|
76
100
|
export declare function planOutlineOf(text: string, maxEntries?: number): {
|
|
77
101
|
outline: string[];
|
|
@@ -102,4 +126,29 @@ export declare function planCallSeqs(events: readonly SessionEventLike[]): numbe
|
|
|
102
126
|
*/
|
|
103
127
|
export declare function buildPlansSection(plans: readonly NoticePlan[], opts?: {
|
|
104
128
|
modeActive?: boolean | null;
|
|
129
|
+
intent?: PlanIntent;
|
|
130
|
+
seeded?: boolean;
|
|
105
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
|
@@ -5,23 +5,41 @@ export const PLAN_MODE_EVENT = 'plan/mode';
|
|
|
5
5
|
const RE_APPROVED = /(?:\{\s*"?approved"?\s*:\s*true)|(?:plan approved\b)/i;
|
|
6
6
|
const RE_DISMISSED = /dismissed the plan review|to speak instead/i;
|
|
7
7
|
const RE_KEEP_PLANNING = /keep planning/i;
|
|
8
|
-
/**
|
|
8
|
+
/**
|
|
9
|
+
* The first markdown heading at any level, or '' when the payload has none. The
|
|
10
|
+
* DISPLAY title is bounded: a plan whose H1 is a 4KB paragraph would otherwise be
|
|
11
|
+
* printed in full in every chapter that carries it and again in every child notice
|
|
12
|
+
* built from that path. Bounded here, not at the call sites — and the artifact keeps
|
|
13
|
+
* the untouched heading, because the artifact keeps every byte.
|
|
14
|
+
*/
|
|
15
|
+
export const PLAN_TITLE_MAX = 120;
|
|
9
16
|
export function planTitleOf(text) {
|
|
10
17
|
for (const line of text.split('\n')) {
|
|
11
18
|
const m = /^#{1,6}\s+(.+?)\s*$/.exec(line);
|
|
12
|
-
if (m
|
|
13
|
-
|
|
19
|
+
if (m === null)
|
|
20
|
+
continue;
|
|
21
|
+
const title = m[1].replace(/\s+#+\s*$/, ''); // closed ATX heading: "# Title #"
|
|
22
|
+
return title.length > PLAN_TITLE_MAX ? `${title.slice(0, PLAN_TITLE_MAX - 1).trimEnd()}…` : title;
|
|
14
23
|
}
|
|
15
24
|
return '';
|
|
16
25
|
}
|
|
26
|
+
/** Outline budget: entries × chars. An outline is an INDEX, not the document — the
|
|
27
|
+
* full heading map with line numbers is one `chapters_artifact toc` call away, so
|
|
28
|
+
* printing 24 unbounded headings per plan (a 4 KB H2 is a real thing people write)
|
|
29
|
+
* would repeat the 0.1.8 mistake at a smaller scale. */
|
|
30
|
+
export const PLAN_OUTLINE_MAX_ENTRIES = 12;
|
|
31
|
+
export const PLAN_OUTLINE_TITLE_MAX = 60;
|
|
17
32
|
/**
|
|
18
33
|
* The plan's own table of contents: H2/H3 headings in document order, with fenced
|
|
19
34
|
* blocks excluded so a `# comment` inside a code sample never poses as a heading
|
|
20
|
-
* (the same discipline `artifact-query.buildToc` applies to stored blobs).
|
|
35
|
+
* (the same discipline `artifact-query.buildToc` applies to stored blobs). Each
|
|
36
|
+
* entry is bounded; when entries are dropped a trailing `+N more` says so — a
|
|
37
|
+
* silently shortened index is the lie this codebase exists to avoid.
|
|
21
38
|
*/
|
|
22
|
-
export function planOutlineOf(text, maxEntries =
|
|
39
|
+
export function planOutlineOf(text, maxEntries = PLAN_OUTLINE_MAX_ENTRIES) {
|
|
23
40
|
const outline = [];
|
|
24
41
|
const levels = [];
|
|
42
|
+
let truncated = false;
|
|
25
43
|
let inFence = false;
|
|
26
44
|
let fenceChar = '';
|
|
27
45
|
for (const line of text.split('\n')) {
|
|
@@ -41,11 +59,16 @@ export function planOutlineOf(text, maxEntries = 24) {
|
|
|
41
59
|
const m = /^(#{2,3})\s+(.+?)\s*$/.exec(line);
|
|
42
60
|
if (m === null)
|
|
43
61
|
continue;
|
|
44
|
-
if (outline.length >= maxEntries)
|
|
62
|
+
if (outline.length >= maxEntries) {
|
|
63
|
+
truncated = true;
|
|
45
64
|
break;
|
|
46
|
-
|
|
65
|
+
}
|
|
66
|
+
const heading = m[2].replace(/\s+#+\s*$/, '');
|
|
67
|
+
outline.push(heading.length > PLAN_OUTLINE_TITLE_MAX ? `${heading.slice(0, PLAN_OUTLINE_TITLE_MAX - 1).trimEnd()}…` : heading);
|
|
47
68
|
levels.push(m[1].length);
|
|
48
69
|
}
|
|
70
|
+
if (truncated)
|
|
71
|
+
outline.push(`+more (chapters_artifact 'toc' lists every heading)`);
|
|
49
72
|
return { outline, levels };
|
|
50
73
|
}
|
|
51
74
|
/**
|
|
@@ -165,6 +188,11 @@ const shorterSha = (sha) => sha.slice(0, 7);
|
|
|
165
188
|
export function buildPlansSection(plans, opts = {}) {
|
|
166
189
|
if (plans.length === 0)
|
|
167
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 '';
|
|
168
196
|
// CAUSAL order is the caller's, not something this function can reconstruct: an
|
|
169
197
|
// ancestor path's rows come from DIFFERENT sessions, each with its own seq space
|
|
170
198
|
// (a child's seq 3 is not "before" a root's seq 40). The notice builder therefore
|
|
@@ -178,7 +206,12 @@ export function buildPlansSection(plans, opts = {}) {
|
|
|
178
206
|
for (const p of sorted)
|
|
179
207
|
counts.set(p.status, (counts.get(p.status) ?? 0) + 1);
|
|
180
208
|
const tally = [...counts.entries()].map(([s, n]) => `${n} ${s}`).join(', ');
|
|
181
|
-
const
|
|
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
|
+
];
|
|
182
215
|
const ref = (p) => {
|
|
183
216
|
const bits = [];
|
|
184
217
|
if (p.chapterPath !== undefined) {
|
|
@@ -189,6 +222,8 @@ export function buildPlansSection(plans, opts = {}) {
|
|
|
189
222
|
}
|
|
190
223
|
if (p.artifactPath !== undefined)
|
|
191
224
|
bits.push(`full text: ${p.artifactPath}`);
|
|
225
|
+
if (p.docPath !== undefined)
|
|
226
|
+
bits.push(`plan document: ${p.docPath}`);
|
|
192
227
|
if (p.sha256 !== undefined)
|
|
193
228
|
bits.push(`sha ${shorterSha(p.sha256)}…`);
|
|
194
229
|
if (p.estTokens !== undefined)
|
|
@@ -203,15 +238,78 @@ export function buildPlansSection(plans, opts = {}) {
|
|
|
203
238
|
lines.push(' Read the full text with chapters_artifact (toc | search | read) before implementing.');
|
|
204
239
|
lines.push(' Do NOT re-plan from recall: the bytes are in the store.');
|
|
205
240
|
}
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
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
|
+
}
|
|
210
248
|
}
|
|
211
|
-
if (opts.
|
|
212
|
-
lines.push('', 'Plan mode
|
|
213
|
-
lines.push('
|
|
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.');
|
|
252
|
+
}
|
|
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.');
|
|
214
256
|
}
|
|
215
257
|
return lines.join('\n');
|
|
216
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
|
+
}
|
|
217
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));
|
package/lib/registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"
|
|
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":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AACvF,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC7G,OAAO,EAAE,WAAW,EAAE,SAAS,EAAiB,MAAM,YAAY,CAAA;AAMlE,0FAA0F;AAC1F,MAAM,eAAe,GAAG,GAAG,CAAA;AAC3B,4FAA4F;AAC5F,MAAM,wBAAwB,GAAG,GAAG,CAAA;AAEpC,kGAAkG;AAClG,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAElF;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,IAAI,GAAG,GAAG,CAAC,CAAA;IACX,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAC9E,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;AACzC,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,MAAM,CAAC,OAAe,EAAE,IAAI,GAAG,EAAE;IAC/C,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAA;IAClC,OAAO,GAAG,KAAK,GAAG,IAAI,KAAK,OAAO,KAAK,KAAK,EAAE,CAAA;AAChD,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAEvG,6FAA6F;AAC7F,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,aAAa,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,MAAM,CAAA;AAEjG,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,IAA+D;IAE/D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IACzB,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC;QACxB,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;QACtC,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,MAAM,GAAG,YAAY,CAAA;AAE3B;;;GAGG;AACH,MAAM,UAAU,cAAc,CAC5B,QAAwB,EACxB,cAAsB;IAEtB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;IAClE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACxB,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,mBAAmB,CAAC,CAAC,QAAQ,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;QACpG,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,kBAAkB,CAAC,CAAC,MAAM,8BAA8B,cAAc,EAAE,CAClG,CAAA;QACH,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACV,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAE,CAAA;YAC7B,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,uBAAuB,CAAC,CAAC,QAAQ,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;YACtG,CAAC;YACD,IAAI,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CACb,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,gBAAgB,IAAI,CAAC,KAAK,MAAM,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,UAAU,CAC7F,CAAA;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;IACF,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,oBAAoB,CAClC,MAA0B,EAC1B,KAAmB;IAEnB,MAAM,GAAG,GAA0B,EAAE,CAAA;IACrC,KAAK,MAAM,EAAE,IAAI,MAAM,EAAE,CAAC;QACxB,IAAI,EAAE,CAAC,IAAI,KAAK,aAAa,IAAI,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM;YAAE,SAAQ;QAC3F,CAAC;YACC,MAAM,GAAG,GAAI,EAAE,CAAC,IAA4C,EAAE,OAA8C,CAAA;YAC5G,MAAM,GAAG,GAAI,GAAG,EAAE,MAA8C,EAAE,MAAM,CAAA;YACxE,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,IAAI,IAAI,GAAG,CAAC,CAAC,CAAA;gBACb,KAAK,MAAM,CAAC,IAAI,MAAM;oBAAE,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;wBACzG,MAAM,EAAE,GAAI,CAAC,CAAC,IAA4C,EAAE,OAA8C,CAAA;wBAC1G,IAAK,EAAE,EAAE,MAA8C,EAAE,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,GAAG,IAAI;4BAAE,IAAI,GAAG,CAAC,CAAC,GAAG,CAAA;oBACvG,CAAC;gBACD,IAAI,EAAE,CAAC,GAAG,KAAK,IAAI;oBAAE,SAAQ,CAAC,iCAAiC;YACjE,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAG,cAAc,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;QAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QAC5F,GAAG,CAAC,IAAI,CAAC;YACP,GAAG,EAAE,EAAE,CAAC,GAAG;YACX,QAAQ,EAAE,MAAM,CAAE,IAAI,EAAE,IAA4C,EAAE,IAAI,IAAK,EAAE,CAAC,IAA4C,EAAE,QAAQ,IAAI,MAAM,CAAC;YACnJ,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;YACtC,eAAe,EAAE,cAAc,CAAC,IAAI,CAAC;YACrC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;SAC5B,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAC3B,MAA0B,EAC1B,KAAmB,EACnB,MAAoB,EACpB,YAA2C,EAAE,EAC7C,SAA4B,EAAE;IAE9B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAC/D,sEAAsE;IACtE,mEAAmE;IACnE,2DAA2D;IAC3D,MAAM,MAAM,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,UAAU,IAAI,kBAAkB,CAAC,CAAC,IAAI,CAAA;IACjG,MAAM,OAAO,GAAG,MAAM;SACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC;SAC/D,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;IAEhC,2EAA2E;IAC3E,sEAAsE;IACtE,yEAAyE;IACzE,4DAA4D;IAC5D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC/C,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,IAAI,EAAE,CAAC,IAAI,KAAK,aAAa;YAAE,SAAQ;QACvC,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,CAAC,CAAA;QAC5B,IAAI,GAAG,KAAK,SAAS;YAAE,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;IACvD,CAAC;IACD,8EAA8E;IAC9E,4EAA4E;IAC5E,mEAAmE;IACnE,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;IAC3D,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/F,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/D,MAAM,SAAS,GACb,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAA;IAChG,MAAM,IAAI,GAAa,CAAC,KAAK,KAAK,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,KAAK,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAA;IACzE,MAAM,SAAS,GAAkB,EAAE,CAAA;IACnC,MAAM,cAAc,GAAa,EAAE,CAAA;IACnC,IAAI,SAAS,GAAG,CAAC,CAAA;IACjB,IAAI,YAAY,GAAG,CAAC,CAAA;IACpB,IAAI,aAAa,GAAG,CAAC,CAAA;IACrB,IAAI,oBAAoB,GAAG,CAAC,CAAA;IAC5B,IAAI,mBAAmB,GAAG,CAAC,CAAA;IAE3B,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAA;QACvD,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;YAChB,KAAK,cAAc,CAAC,CAAC,CAAC;gBACpB,kEAAkE;gBAClE,sEAAsE;gBACtE,sEAAsE;gBACtE,mEAAmE;gBACnE,wEAAwE;gBACxE,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAA;gBACrE,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;oBACxB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAA;oBACpE,MAAK;gBACP,CAAC;gBACD,IAAI,MAAM,CAAC,YAAY,GAAG,CAAC;oBAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,2BAA2B,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC3G,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBAChC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtB,IAAI,MAAM,CAAC,YAAY,KAAK,CAAC;wBAAE,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA,CAAC,6BAA6B;oBACxF,MAAK;gBACP,CAAC;gBACD,oBAAoB,IAAI,CAAC,CAAA;gBACzB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC5C,MAAK;YACP,CAAC;YACD,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAA4B,CAAA;gBACjE,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAA;gBAC7D,IAAI,SAAS,CAAC,YAAY,GAAG,CAAC;oBAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,2BAA2B,EAAE,SAAS,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAA;gBACjH,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;gBACnC,MAAM,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;qBAClE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC;qBACrC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAuB,CAAC,IAAI,IAAI,EAAE,CAAC;qBAC/C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;gBACpB,IAAI,QAAQ,GAAG,KAAK,CAAA;gBACpB,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;oBAAC,QAAQ,GAAG,IAAI,CAAA;gBAAC,CAAC;gBAC9G,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;oBAAC,QAAQ,GAAG,IAAI,CAAA;gBAAC,CAAC;gBAC3F,IAAI,QAAQ;oBAAE,oBAAoB,IAAI,CAAC,CAAA;qBAClC,IAAI,SAAS,CAAC,YAAY,KAAK,CAAC;oBAAE,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;gBAClE,MAAK;YACP,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,SAAS,IAAI,CAAC,CAAA;gBACd,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAA;gBAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAA;gBACvC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,uEAAuE;oBACvE,uEAAuE;oBACvE,kDAAkD;oBAClD,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,CAAC,CAAA;oBACtD,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,YAAY,GAAG,EAAE,KAAK,IAAI,YAAY,4EAA4E,EAAE,CAAC,GAAG,GAAG,CAAC,CAAA;oBACnJ,MAAK;gBACP,CAAC;gBACD,MAAM,KAAK,GAAG,MAAM,CAAC,qBAAqB,IAAI,CAAC,CAAA;gBAC/C,IAAI,KAAK,GAAG,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC;oBAC9C,sEAAsE;oBACtE,0DAA0D;oBAC1D,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;oBACpF,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBACnB,mBAAmB,IAAI,CAAC,CAAA;oBACxB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,GAAG;0BACzH,sBAAsB,GAAG,CAAC,KAAK,QAAQ,cAAc,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,CAAA;oBACxH,MAAK;gBACP,CAAC;gBACD,mEAAmE;gBACnE,4EAA4E;gBAC5E,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,QAAQ,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,KAAK,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,GAAG,GAAG,CAAC,CAAA;gBAC9H,MAAK;YACP,CAAC;YACD,KAAK,WAAW;gBACd,wEAAwE;gBACxE,0EAA0E;gBAC1E,uEAAuE;gBACvE,oDAAoD;gBACpD,MAAK;YACP,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,CAAC;oBACC,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,CAAC,CAAA;oBAC5B,IAAI,GAAG,KAAK,SAAS,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG;wBAAE,MAAK,CAAC,+BAA+B;gBACnG,CAAC;gBACD,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAA;gBACzC,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;gBACnC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,MAAM,IAAI,MAAM,CAAC,0BAA0B,CAAA;gBACrF,MAAM,SAAS,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAA;gBAC9F,MAAM,QAAQ,GAAG,MAAM,CAAE,SAAS,EAAE,IAA4C,EAAE,IAAI,IAAI,MAAM,CAAC,CAAA;gBACjG,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAA;gBACpF,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACnB,IAAI,WAAW,EAAE,CAAC;oBAChB,YAAY,IAAI,CAAC,CAAA;oBACjB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,iBAAiB,GAAG,CAAC,IAAI,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;gBACzG,CAAC;qBAAM,CAAC;oBACN,aAAa,IAAI,CAAC,CAAA;oBAClB,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,KAAK,QAAQ,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,CAAA;gBAC3G,CAAC;gBACD,MAAK;YACP,CAAC;YACD,KAAK,YAAY,CAAC;YAClB,KAAK,UAAU,CAAC;YAChB,KAAK,YAAY,CAAC;YAClB,KAAK,UAAU;gBACb,MAAK,CAAC,4FAA4F;YACpG;gBACE,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,8EAA8E;IAC9E,+EAA+E;IAC/E,6CAA6C;IAC7C,MAAM,SAAS,GAAe,EAAE,CAAA;IAChC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAA;IAC/F,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,0BAA0B,EAAE,EAAE,CAAC,CAAA;QACxD,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;YAC5F,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACnB,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;YACvC,SAAS,CAAC,IAAI,CAAC;gBACb,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,YAAY,EAAE,GAAG,CAAC,IAAI;gBACtB,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,SAAS,EAAE,MAAM;gBACjB,SAAS,EAAE,CAAC,CAAC,SAAS;aACvB,CAAC,CAAA;YACF,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;YACtF,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;YACpE,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,GAAG,EAAE;kBACzC,CAAC,CAAC,CAAC,SAAS,KAAK,IAAI;oBACrB,CAAC,CAAC,mBAAmB,CAAC,CAAC,SAAS,OAAO,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI;oBAC9F,CAAC,CAAC,sFAAsF,CAAC,CAAC,CAAA;YAC9F,IAAI,CAAC,IAAI,CAAC,kBAAkB,GAAG,CAAC,IAAI,OAAO,EAAE,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,wFAAwF,CAAC,CAAA;YACnL,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;gBAAE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC1E,MAAM,SAAS,GAAG,MAAM,CAAC,eAAe,IAAI,wBAAwB,CAAA;YACpE,IAAI,SAAS,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzC,IAAI,CAAC,IAAI,CAAC,iBAAiB,SAAS,oBAAoB,EAAE,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACzG,CAAC;YACD,IAAI,CAAC,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;gBAC9B,IAAI,CAAC,IAAI,CAAC,4FAA4F,CAAC,CAAA;YACzG,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACf,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,aAAa,CAAC,CAAC,GAAG,wBAAwB,CAAC,CAAA;QACtG,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,+BAA+B,SAAS,EAAE,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChC,MAAM,eAAe,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IAChD,MAAM,WAAW,GAAG;QAClB,KAAK;QACL,UAAU,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;QACvC,cAAc,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,MAAM,GAAG;QAChD,WAAW,OAAO,CAAC,MAAM,EAAE;QAC3B,WAAW,eAAe,sBAAsB;QAChD,yEAAyE;QACzE,2EAA2E;QAC3E,wEAAwE;QACxE,uEAAuE;QACvE,yDAAyD;QACzD,WAAW,MAAM,CAAC,GAAG,QAAQ,IAAI,CAAC,EAAE;QACpC,YAAY,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAC5E,cAAc,SAAS,CAAC,MAAM,EAAE;QAChC,8EAA8E;QAC9E,6EAA6E;QAC7E,8EAA8E;QAC9E,6EAA6E;QAC7E,yEAAyE;QACzE,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YACtB,CAAC,CAAC,CAAC,WAAW,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;YACjG,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,oBAAoB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAChD,KAAK;QACL,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEZ,OAAO;QACL,KAAK;QACL,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5B,QAAQ,EAAE,WAAW,GAAG,QAAQ,GAAG,IAAI;QACvC,SAAS;QACT,KAAK,EAAE;YACL,eAAe;YACf,cAAc,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC;YACnD,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,oBAAoB;YAC9B,SAAS;YACT,kBAAkB,EAAE,YAAY;YAChC,mBAAmB,EAAE,aAAa;YAClC,UAAU,EAAE,eAAe,GAAG,MAAM,CAAC,kBAAkB;YACvD,cAAc;YACd,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,SAAS;YACnB,mBAAmB;SACpB;KACF,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,OAAoE;IAC9F,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;SACjE,IAAI,CAAC,IAAI,CAAC,CAAA;AACf,CAAC"}
|
|
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
|
-
|
|
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, ''));
|