@isaacriehm/cairn-core 0.10.0 → 0.10.1
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/dist/.tsbuildinfo +1 -1
- package/dist/hooks/runners/context-threshold.d.ts +33 -4
- package/dist/hooks/runners/context-threshold.js +90 -25
- package/dist/hooks/runners/context-threshold.js.map +1 -1
- package/dist/hooks/runners/index.d.ts +1 -0
- package/dist/hooks/runners/index.js +1 -0
- package/dist/hooks/runners/index.js.map +1 -1
- package/dist/hooks/runners/session-start.js +36 -2
- package/dist/hooks/runners/session-start.js.map +1 -1
- package/dist/mcp/tools/resume.js +40 -4
- package/dist/mcp/tools/resume.js.map +1 -1
- package/package.json +2 -2
|
@@ -47,6 +47,32 @@ export interface ContextThresholdMiss {
|
|
|
47
47
|
hit: false;
|
|
48
48
|
}
|
|
49
49
|
export type ContextThresholdResult = ContextThresholdHit | ContextThresholdMiss;
|
|
50
|
+
export declare function modelWindow(model: string): number;
|
|
51
|
+
/**
|
|
52
|
+
* Walk the last ~64 KB of the transcript looking for the most recent
|
|
53
|
+
* `model` field. Claude Code transcript lines are JSON; each assistant
|
|
54
|
+
* turn carries a `message.model` string. Skipping the full file keeps
|
|
55
|
+
* the hook fast on long sessions.
|
|
56
|
+
*/
|
|
57
|
+
export declare function readModelFromTranscript(path: string): string | null;
|
|
58
|
+
/**
|
|
59
|
+
* Fallback estimator when no persisted ctx snapshot is available.
|
|
60
|
+
*
|
|
61
|
+
* Walks the last ~256 KB of the transcript backward looking for the
|
|
62
|
+
* most recent `message.usage` block from an assistant turn. Claude
|
|
63
|
+
* Code transcript lines are JSON; assistant turns carry an exact token
|
|
64
|
+
* count under `message.usage.{input_tokens, cache_creation_input_tokens,
|
|
65
|
+
* cache_read_input_tokens}` — summing those three gives the actual
|
|
66
|
+
* prompt size at that turn (output_tokens are produced, not consumed
|
|
67
|
+
* by context).
|
|
68
|
+
*
|
|
69
|
+
* Returns null when no usage block is found (e.g. fresh session, no
|
|
70
|
+
* assistant turn yet). Caller can choose to skip threshold check or
|
|
71
|
+
* fall back to bytes/4. We never fall back here — bytes/4 over-counts
|
|
72
|
+
* 1.5–2x because the transcript JSONL accumulates every tool I/O blob
|
|
73
|
+
* since session start, which is what produced the 113%-of-window bug.
|
|
74
|
+
*/
|
|
75
|
+
export declare function estimateTokensFromTranscript(transcriptPath: string): number | null;
|
|
50
76
|
/**
|
|
51
77
|
* Returns the current threshold result. Stamps the warned-state file
|
|
52
78
|
* on a hit so re-fires within the same session are suppressed until
|
|
@@ -55,9 +81,12 @@ export type ContextThresholdResult = ContextThresholdHit | ContextThresholdMiss;
|
|
|
55
81
|
export declare function checkContextThreshold(input: ContextThresholdInput): ContextThresholdResult;
|
|
56
82
|
/**
|
|
57
83
|
* Render the inline prompt that the Stop hook injects via
|
|
58
|
-
* `decision: block`.
|
|
59
|
-
* three
|
|
60
|
-
*
|
|
61
|
-
*
|
|
84
|
+
* `decision: block`. When an active task is in flight, the prompt
|
|
85
|
+
* surfaces three options (keep going / clear+resume / mark done) and
|
|
86
|
+
* emits the literal `/cairn-resume <task_id>` token for the `[b]`
|
|
87
|
+
* branch. When no active task is in flight (e.g. the auto-graduator
|
|
88
|
+
* just moved the only active task to `done/` this same Stop tick),
|
|
89
|
+
* the resume + mark-done options are dropped to avoid offering a
|
|
90
|
+
* resume that `cairn_resume` would error on.
|
|
62
91
|
*/
|
|
63
92
|
export declare function renderContextThresholdHint(hit: ContextThresholdHit, taskId: string | null): string;
|
|
@@ -27,7 +27,13 @@
|
|
|
27
27
|
import { existsSync, readFileSync, statSync, writeFileSync } from "node:fs";
|
|
28
28
|
import { join } from "node:path";
|
|
29
29
|
const MODEL_WINDOW_FALLBACK = 1_000_000;
|
|
30
|
-
function modelWindow(model) {
|
|
30
|
+
export function modelWindow(model) {
|
|
31
|
+
// Opus 4.7 ships with a 1M-token window when the `[1m]` variant is
|
|
32
|
+
// selected; the base alias still resolves to 200k. Treat any model
|
|
33
|
+
// string that contains `1m` (the variant suffix Claude Code prints)
|
|
34
|
+
// as the 1M tier so the statusline percentage reads correctly.
|
|
35
|
+
if (/1m/i.test(model))
|
|
36
|
+
return 1_000_000;
|
|
31
37
|
if (/opus/i.test(model))
|
|
32
38
|
return 1_000_000;
|
|
33
39
|
if (/sonnet/i.test(model))
|
|
@@ -42,7 +48,7 @@ function modelWindow(model) {
|
|
|
42
48
|
* turn carries a `message.model` string. Skipping the full file keeps
|
|
43
49
|
* the hook fast on long sessions.
|
|
44
50
|
*/
|
|
45
|
-
function readModelFromTranscript(path) {
|
|
51
|
+
export function readModelFromTranscript(path) {
|
|
46
52
|
try {
|
|
47
53
|
const stat = statSync(path);
|
|
48
54
|
const tail = Math.min(stat.size, 65_536);
|
|
@@ -98,19 +104,58 @@ function readPersistedCtx(repoRoot, sessionId) {
|
|
|
98
104
|
return null;
|
|
99
105
|
}
|
|
100
106
|
/**
|
|
101
|
-
* Fallback estimator when no persisted snapshot is available.
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
*
|
|
107
|
+
* Fallback estimator when no persisted ctx snapshot is available.
|
|
108
|
+
*
|
|
109
|
+
* Walks the last ~256 KB of the transcript backward looking for the
|
|
110
|
+
* most recent `message.usage` block from an assistant turn. Claude
|
|
111
|
+
* Code transcript lines are JSON; assistant turns carry an exact token
|
|
112
|
+
* count under `message.usage.{input_tokens, cache_creation_input_tokens,
|
|
113
|
+
* cache_read_input_tokens}` — summing those three gives the actual
|
|
114
|
+
* prompt size at that turn (output_tokens are produced, not consumed
|
|
115
|
+
* by context).
|
|
116
|
+
*
|
|
117
|
+
* Returns null when no usage block is found (e.g. fresh session, no
|
|
118
|
+
* assistant turn yet). Caller can choose to skip threshold check or
|
|
119
|
+
* fall back to bytes/4. We never fall back here — bytes/4 over-counts
|
|
120
|
+
* 1.5–2x because the transcript JSONL accumulates every tool I/O blob
|
|
121
|
+
* since session start, which is what produced the 113%-of-window bug.
|
|
106
122
|
*/
|
|
107
|
-
function
|
|
123
|
+
export function estimateTokensFromTranscript(transcriptPath) {
|
|
108
124
|
try {
|
|
109
|
-
|
|
125
|
+
const stat = statSync(transcriptPath);
|
|
126
|
+
const tail = Math.min(stat.size, 262_144);
|
|
127
|
+
const fd = readFileSync(transcriptPath, "utf8");
|
|
128
|
+
const slice = fd.slice(Math.max(0, fd.length - tail));
|
|
129
|
+
const lines = slice.split(/\r?\n/);
|
|
130
|
+
for (let i = lines.length - 1; i >= 0; i--) {
|
|
131
|
+
const line = lines[i];
|
|
132
|
+
if (line === undefined || line.length === 0)
|
|
133
|
+
continue;
|
|
134
|
+
try {
|
|
135
|
+
const obj = JSON.parse(line);
|
|
136
|
+
const u = obj.message?.usage;
|
|
137
|
+
if (u === undefined)
|
|
138
|
+
continue;
|
|
139
|
+
const i_t = typeof u.input_tokens === "number" ? u.input_tokens : 0;
|
|
140
|
+
const cc = typeof u.cache_creation_input_tokens === "number"
|
|
141
|
+
? u.cache_creation_input_tokens
|
|
142
|
+
: 0;
|
|
143
|
+
const cr = typeof u.cache_read_input_tokens === "number"
|
|
144
|
+
? u.cache_read_input_tokens
|
|
145
|
+
: 0;
|
|
146
|
+
const total = i_t + cc + cr;
|
|
147
|
+
if (total > 0)
|
|
148
|
+
return total;
|
|
149
|
+
}
|
|
150
|
+
catch {
|
|
151
|
+
// skip malformed lines
|
|
152
|
+
}
|
|
153
|
+
}
|
|
110
154
|
}
|
|
111
155
|
catch {
|
|
112
|
-
return
|
|
156
|
+
return null;
|
|
113
157
|
}
|
|
158
|
+
return null;
|
|
114
159
|
}
|
|
115
160
|
function warnedStatePath(repoRoot, sessionId) {
|
|
116
161
|
return join(repoRoot, ".cairn", "sessions", sessionId, "ctx-threshold-warned.json");
|
|
@@ -157,7 +202,12 @@ export function checkContextThreshold(input) {
|
|
|
157
202
|
const fraction = input.thresholdFraction ?? 0.5;
|
|
158
203
|
const thresholdTokens = Math.floor(windowTokens * fraction);
|
|
159
204
|
const snapshot = readPersistedCtx(input.repoRoot, input.sessionId);
|
|
160
|
-
const
|
|
205
|
+
const fallback = estimateTokensFromTranscript(input.transcriptPath);
|
|
206
|
+
// Skip the check when neither source is available — better to stay
|
|
207
|
+
// silent than fire on bytes/4 garbage like we used to.
|
|
208
|
+
if (snapshot === null && fallback === null)
|
|
209
|
+
return { hit: false };
|
|
210
|
+
const estimated = snapshot !== null ? snapshot.usedTokens : (fallback ?? 0);
|
|
161
211
|
if (estimated < thresholdTokens)
|
|
162
212
|
return { hit: false };
|
|
163
213
|
const warned = readWarned(input.repoRoot, input.sessionId);
|
|
@@ -173,31 +223,46 @@ export function checkContextThreshold(input) {
|
|
|
173
223
|
hit: true,
|
|
174
224
|
estimatedTokens: estimated,
|
|
175
225
|
windowTokens,
|
|
176
|
-
pct: Math.round((estimated / windowTokens) * 100),
|
|
226
|
+
pct: Math.min(100, Math.round((estimated / windowTokens) * 100)),
|
|
177
227
|
model,
|
|
178
228
|
taskId: null,
|
|
179
229
|
};
|
|
180
230
|
}
|
|
181
231
|
/**
|
|
182
232
|
* Render the inline prompt that the Stop hook injects via
|
|
183
|
-
* `decision: block`.
|
|
184
|
-
* three
|
|
185
|
-
*
|
|
186
|
-
*
|
|
233
|
+
* `decision: block`. When an active task is in flight, the prompt
|
|
234
|
+
* surfaces three options (keep going / clear+resume / mark done) and
|
|
235
|
+
* emits the literal `/cairn-resume <task_id>` token for the `[b]`
|
|
236
|
+
* branch. When no active task is in flight (e.g. the auto-graduator
|
|
237
|
+
* just moved the only active task to `done/` this same Stop tick),
|
|
238
|
+
* the resume + mark-done options are dropped to avoid offering a
|
|
239
|
+
* resume that `cairn_resume` would error on.
|
|
187
240
|
*/
|
|
188
241
|
export function renderContextThresholdHint(hit, taskId) {
|
|
189
|
-
const
|
|
190
|
-
? `Active task: \`${taskId}\`.`
|
|
191
|
-
: "No active task — context still climbing through general work.";
|
|
192
|
-
const resumeLine = taskId !== null
|
|
193
|
-
? `If the operator picks **\`b\`**, emit a code block containing exactly:\n\n\`\`\`\n/cairn-resume ${taskId}\n\`\`\`\n\nThe operator copies that, runs \`/clear\`, then pastes it into the fresh chat — Cairn rebuilds context from \`.cairn/tasks/active/${taskId}/journal.jsonl\`.`
|
|
194
|
-
: "If the operator picks **`b`**, instruct them to `/clear` and re-ask. There's no task journal to resume from yet.";
|
|
195
|
-
return [
|
|
242
|
+
const header = [
|
|
196
243
|
`## Cairn — context threshold reached`,
|
|
197
244
|
"",
|
|
198
245
|
`Estimated **${hit.estimatedTokens.toLocaleString()} / ${hit.windowTokens.toLocaleString()} tokens (${hit.pct}%)** for \`${hit.model}\`. Trust degrades as context climbs — best to compact now.`,
|
|
199
246
|
"",
|
|
200
|
-
|
|
247
|
+
];
|
|
248
|
+
if (taskId === null) {
|
|
249
|
+
return [
|
|
250
|
+
...header,
|
|
251
|
+
"No active task — context climbed through general work, or the active task just graduated this tick. Nothing to resume from.",
|
|
252
|
+
"",
|
|
253
|
+
"Render this question via the `AskUserQuestion` tool — do not skip:",
|
|
254
|
+
"",
|
|
255
|
+
"> Context at " + hit.pct + "% of " + hit.model + " window. Pick:",
|
|
256
|
+
"> ",
|
|
257
|
+
"> - `[a]` keep going (warn re-fires every +10 %)",
|
|
258
|
+
"> - `[b]` `/clear` and start fresh (no task to resume)",
|
|
259
|
+
"",
|
|
260
|
+
"On `[b]`, instruct the operator to run `/clear`. On `[a]`, just continue.",
|
|
261
|
+
].join("\n");
|
|
262
|
+
}
|
|
263
|
+
return [
|
|
264
|
+
...header,
|
|
265
|
+
`Active task: \`${taskId}\`.`,
|
|
201
266
|
"",
|
|
202
267
|
"Render this question via the `AskUserQuestion` tool — do not skip:",
|
|
203
268
|
"",
|
|
@@ -207,7 +272,7 @@ export function renderContextThresholdHint(hit, taskId) {
|
|
|
207
272
|
"> - `[b]` `/clear` and resume now (Cairn writes the resume prompt)",
|
|
208
273
|
"> - `[c]` mark task done (graduate the active TSK and start fresh)",
|
|
209
274
|
"",
|
|
210
|
-
|
|
275
|
+
`If the operator picks **\`b\`**, emit a code block containing exactly:\n\n\`\`\`\n/cairn-resume ${taskId}\n\`\`\`\n\nThe operator copies that, runs \`/clear\`, then pastes it into the fresh chat — Cairn rebuilds context from \`.cairn/tasks/active/${taskId}/journal.jsonl\`.`,
|
|
211
276
|
"",
|
|
212
277
|
"On `[c]`, call `cairn_task_complete({task_id, outcome: \"succeeded\"})` for the active task before ending the turn. On `[a]`, just continue.",
|
|
213
278
|
].join("\n");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-threshold.js","sourceRoot":"","sources":["../../../src/hooks/runners/context-threshold.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AA6BjC,MAAM,qBAAqB,GAAG,SAAS,CAAC;AAExC,
|
|
1
|
+
{"version":3,"file":"context-threshold.js","sourceRoot":"","sources":["../../../src/hooks/runners/context-threshold.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
export { runSessionStartHook } from "./session-start.js";
|
|
7
7
|
export { runSessionEndHook } from "./session-end.js";
|
|
8
8
|
export { runStopHook } from "./stop.js";
|
|
9
|
+
export { estimateTokensFromTranscript, modelWindow, readModelFromTranscript, } from "./context-threshold.js";
|
|
9
10
|
export { runUserPromptSubmitHook } from "./user-prompt-submit.js";
|
|
10
11
|
export { runGcAutotriggerCheck } from "./gc-autotrigger.js";
|
|
11
12
|
export type { GcAutotriggerArgv, GcAutotriggerOptions, GcAutotriggerReason, GcAutotriggerResult, } from "./gc-autotrigger.js";
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
export { runSessionStartHook } from "./session-start.js";
|
|
7
7
|
export { runSessionEndHook } from "./session-end.js";
|
|
8
8
|
export { runStopHook } from "./stop.js";
|
|
9
|
+
export { estimateTokensFromTranscript, modelWindow, readModelFromTranscript, } from "./context-threshold.js";
|
|
9
10
|
export { runUserPromptSubmitHook } from "./user-prompt-submit.js";
|
|
10
11
|
export { runGcAutotriggerCheck } from "./gc-autotrigger.js";
|
|
11
12
|
export { renderBypassHint, scanBypassedCommits, } from "../bypass-detection.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/runners/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAO5D,OAAO,EACL,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,eAAe,GAChB,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/runners/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EACL,4BAA4B,EAC5B,WAAW,EACX,uBAAuB,GACxB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAO5D,OAAO,EACL,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EACL,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,eAAe,GAChB,MAAM,cAAc,CAAC"}
|
|
@@ -49,9 +49,9 @@ function syncActiveVersionShim(warnings) {
|
|
|
49
49
|
warnings.push(`statusline_shim_skipped: bundle missing at ${bundlePath}`);
|
|
50
50
|
return;
|
|
51
51
|
}
|
|
52
|
-
const slug = pluginCacheSlug(pluginRoot);
|
|
52
|
+
const slug = pluginCacheSlug(pluginRoot) ?? localDevSlug(pluginRoot);
|
|
53
53
|
if (slug === null) {
|
|
54
|
-
warnings.push(`statusline_shim_skipped:
|
|
54
|
+
warnings.push(`statusline_shim_skipped: cannot derive slug from CLAUDE_PLUGIN_ROOT (${pluginRoot})`);
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
57
57
|
const shimDir = join(homedir(), ".claude", "plugins", "cache", slug);
|
|
@@ -81,6 +81,40 @@ function pluginCacheSlug(pluginRoot) {
|
|
|
81
81
|
const parts = rest.split(/[\/\\]/).filter((p) => p.length > 0);
|
|
82
82
|
return parts.length > 0 ? (parts[0] ?? null) : null;
|
|
83
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* Derive a cache slug for plugins loaded from a local-dev marketplace
|
|
86
|
+
* (`source: directory`). Walks up `pluginRoot` looking for a sibling
|
|
87
|
+
* `.claude-plugin/marketplace.json` and reads its `name` — this is the
|
|
88
|
+
* same slug Claude Code uses when the marketplace is installed
|
|
89
|
+
* normally, so the local-dev shim overwrites the cached-install shim
|
|
90
|
+
* (and vice-versa) on whichever ran most recently. The bash one-liner
|
|
91
|
+
* picks newest by mtime, so transitions stay consistent.
|
|
92
|
+
*
|
|
93
|
+
* Returns null when no marketplace manifest is found (caller emits
|
|
94
|
+
* skip warning).
|
|
95
|
+
*/
|
|
96
|
+
function localDevSlug(pluginRoot) {
|
|
97
|
+
let dir = pluginRoot;
|
|
98
|
+
for (let i = 0; i < 8; i++) {
|
|
99
|
+
const manifest = join(dir, ".claude-plugin", "marketplace.json");
|
|
100
|
+
if (existsSync(manifest)) {
|
|
101
|
+
try {
|
|
102
|
+
const parsed = JSON.parse(readFileSync(manifest, "utf8"));
|
|
103
|
+
if (typeof parsed.name === "string" && parsed.name.length > 0) {
|
|
104
|
+
return parsed.name;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
const parent = dirname(dir);
|
|
112
|
+
if (parent === dir)
|
|
113
|
+
break;
|
|
114
|
+
dir = parent;
|
|
115
|
+
}
|
|
116
|
+
return null;
|
|
117
|
+
}
|
|
84
118
|
export async function runSessionStartHook() {
|
|
85
119
|
const startedAt = Date.now();
|
|
86
120
|
const raw = await readHookStdin();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-start.js","sourceRoot":"","sources":["../../../src/hooks/runners/session-start.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session-start.js","sourceRoot":"","sources":["../../../src/hooks/runners/session-start.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/tools/resume.js
CHANGED
|
@@ -22,9 +22,26 @@ async function handler(ctx, input) {
|
|
|
22
22
|
if (taskId === null) {
|
|
23
23
|
return mcpError("TASK_NOT_FOUND", "no active task to resume");
|
|
24
24
|
}
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
const activeTaskDir = join(ctx.repoRoot, ".cairn", "tasks", "active", taskId);
|
|
26
|
+
const doneTaskDir = join(ctx.repoRoot, ".cairn", "tasks", "done", taskId);
|
|
27
|
+
let scope;
|
|
28
|
+
let taskDir;
|
|
29
|
+
let completedAt = null;
|
|
30
|
+
if (existsSync(activeTaskDir)) {
|
|
31
|
+
scope = "active";
|
|
32
|
+
taskDir = activeTaskDir;
|
|
33
|
+
}
|
|
34
|
+
else if (existsSync(doneTaskDir)) {
|
|
35
|
+
// Race: task graduated between the Stop-hook resume prompt and the
|
|
36
|
+
// operator pasting `/cairn-resume`. Surface the final journal frame
|
|
37
|
+
// + completion timestamp instead of the cryptic "not found" error
|
|
38
|
+
// so the operator sees what shipped.
|
|
39
|
+
scope = "done";
|
|
40
|
+
taskDir = doneTaskDir;
|
|
41
|
+
completedAt = readCompletedAt(join(doneTaskDir, "status.yaml"));
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
return mcpError("TASK_NOT_FOUND", `task directory missing in active/ and done/: ${taskId}`);
|
|
28
45
|
}
|
|
29
46
|
const specPath = join(taskDir, "spec.tightened.md");
|
|
30
47
|
let title = taskId;
|
|
@@ -60,7 +77,7 @@ async function handler(ctx, input) {
|
|
|
60
77
|
}
|
|
61
78
|
}
|
|
62
79
|
}
|
|
63
|
-
const journal = readTaskJournal(ctx.repoRoot, taskId,
|
|
80
|
+
const journal = readTaskJournal(ctx.repoRoot, taskId, scope);
|
|
64
81
|
const cap = Math.max(1, Math.min(50, input.max_entries ?? 7));
|
|
65
82
|
const recent = journal.slice(-cap);
|
|
66
83
|
const lastEntry = journal.length > 0 ? journal[journal.length - 1] : null;
|
|
@@ -68,6 +85,8 @@ async function handler(ctx, input) {
|
|
|
68
85
|
const payload = {
|
|
69
86
|
ok: true,
|
|
70
87
|
task_id: taskId,
|
|
88
|
+
scope,
|
|
89
|
+
completed_at: completedAt,
|
|
71
90
|
title,
|
|
72
91
|
goal,
|
|
73
92
|
in_scope_decisions: inScopeDecisions,
|
|
@@ -79,6 +98,23 @@ async function handler(ctx, input) {
|
|
|
79
98
|
};
|
|
80
99
|
return payload;
|
|
81
100
|
}
|
|
101
|
+
function readCompletedAt(statusPath) {
|
|
102
|
+
if (!existsSync(statusPath))
|
|
103
|
+
return null;
|
|
104
|
+
try {
|
|
105
|
+
const raw = readFileSync(statusPath, "utf8");
|
|
106
|
+
const parsed = parseYaml(raw);
|
|
107
|
+
if (parsed !== null && typeof parsed === "object") {
|
|
108
|
+
const v = parsed.completed_at;
|
|
109
|
+
if (typeof v === "string" && v.length > 0)
|
|
110
|
+
return v;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
// fall through
|
|
115
|
+
}
|
|
116
|
+
return null;
|
|
117
|
+
}
|
|
82
118
|
export const resumeTool = {
|
|
83
119
|
name: "cairn_resume",
|
|
84
120
|
description: "Read the active task's journal + tightened spec and emit a resume payload (title, goal, in-scope DECs/INVs, last N journal entries, last-known next_step). Used after `/clear` to rebuild operator context cold. `task_id` defaults to the most-recently-touched active task.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resume.js","sourceRoot":"","sources":["../../../src/mcp/tools/resume.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EACL,qBAAqB,EACrB,eAAe,GAEhB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"resume.js","sourceRoot":"","sources":["../../../src/mcp/tools/resume.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@isaacriehm/cairn-core",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.1",
|
|
4
4
|
"description": "Cairn core — state + context layer. Curated `.cairn/ground/` (decisions, §INV invariants, canonical-map, brand, quality-grades), MCP server, init wizard, hook runners, sensors, GC drift sweep.",
|
|
5
5
|
"author": "Isaac Riehm",
|
|
6
6
|
"license": "MIT",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"simple-git": "^3.36.0",
|
|
40
40
|
"yaml": "^2.8.4",
|
|
41
41
|
"zod": "^4.4.3",
|
|
42
|
-
"@isaacriehm/cairn-state": "0.10.
|
|
42
|
+
"@isaacriehm/cairn-state": "0.10.1"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@types/cli-progress": "^3.11.6",
|