specweave 3.0.5 → 3.0.6
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/.claude-plugin/marketplace.json +2 -2
- package/README.md +2 -2
- package/bin/specweave.js +5 -5
- package/bin/startup-check.js +1 -1
- package/dist/src/cli/commands/auto-handoff.d.ts +4 -26
- package/dist/src/cli/commands/auto-handoff.d.ts.map +1 -1
- package/dist/src/cli/commands/auto-handoff.js +23 -52
- package/dist/src/cli/commands/auto-handoff.js.map +1 -1
- package/dist/src/core/session/checkpoint-worker.d.ts +2 -0
- package/dist/src/core/session/checkpoint-worker.d.ts.map +1 -0
- package/dist/src/core/session/checkpoint-worker.js +43 -0
- package/dist/src/core/session/checkpoint-worker.js.map +1 -0
- package/dist/src/core/session/handoff-doc-format.d.ts +2 -0
- package/dist/src/core/session/handoff-doc-format.d.ts.map +1 -1
- package/dist/src/core/session/handoff-doc-format.js +16 -4
- package/dist/src/core/session/handoff-doc-format.js.map +1 -1
- package/dist/src/core/session/handoff-git-state.d.ts +3 -1
- package/dist/src/core/session/handoff-git-state.d.ts.map +1 -1
- package/dist/src/core/session/handoff-git-state.js +32 -12
- package/dist/src/core/session/handoff-git-state.js.map +1 -1
- package/dist/src/core/session/session-checkpoint.d.ts +46 -0
- package/dist/src/core/session/session-checkpoint.d.ts.map +1 -0
- package/dist/src/core/session/session-checkpoint.js +262 -0
- package/dist/src/core/session/session-checkpoint.js.map +1 -0
- package/dist/src/core/session/usage-guard.d.ts +6 -69
- package/dist/src/core/session/usage-guard.d.ts.map +1 -1
- package/dist/src/core/session/usage-guard.js +5 -136
- package/dist/src/core/session/usage-guard.js.map +1 -1
- package/dist/src/core/session/work-handoff.d.ts +4 -0
- package/dist/src/core/session/work-handoff.d.ts.map +1 -1
- package/dist/src/core/session/work-handoff.js +31 -10
- package/dist/src/core/session/work-handoff.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/.claude-plugin/plugin.json +1 -1
- package/plugins/specweave/skills/handoff/SKILL.md +21 -13
- package/src/templates/AGENTS.md.template +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "specweave",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.6",
|
|
4
4
|
"description": "Portable intent, specifications, task evidence, and handoffs across AI coding tools.",
|
|
5
5
|
"owner": {
|
|
6
6
|
"name": "Anton Abyzov",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"description": "SpecWeave unified plugin — increment lifecycle (plan, work the ledger, verify, review, complete), cross-tool handoff, GitHub/Jira/ADO sync",
|
|
13
13
|
"source": "./plugins/specweave",
|
|
14
14
|
"category": "development",
|
|
15
|
-
"version": "3.0.
|
|
15
|
+
"version": "3.0.6",
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "Anton Abyzov",
|
|
18
18
|
"email": "anton.abyzov@gmail.com"
|
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ you (in Codex, or account 2): pick up
|
|
|
33
33
|
|
|
34
34
|
That is the whole handoff. "Hand off" runs `specweave handoff`: it releases your task claims, records why you stopped, and pushes your branch plus a snapshot of your uncommitted edits. "Pick up" runs `specweave pickup` in any other tool, account, machine or cloud session (a Claude Code Projects thread, a Codex cloud task): it brings that work into the checkout and prints the next task with its acceptance criteria. Nothing to copy, no paths to paste.
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
Keep a local recovery point with `specweave auto-handoff on`, once per machine. Claude Code and Codex queue silent background checkpoints after turns, at most once every five minutes per worktree and session. They need no model or network, never stop work at a usage percentage, and leave claims and the checkout untouched. `auto-handoff status` shows the checkpoint directory. When you choose to switch tools or machines, use `specweave handoff` to transfer ownership and push your work; `pickup` does not apply automatic checkpoints. [Automatic checkpoint rules](https://spec-weave.com/docs/guides/auto-handoff/) explains recovery and supported hooks.
|
|
37
37
|
|
|
38
38
|
`specweave report` writes an HTML timeline of who did what on an increment (tools, sessions, handoffs, pickups, test evidence), straight from the ledger.
|
|
39
39
|
|
|
@@ -86,7 +86,7 @@ npm i -g specweave@3
|
|
|
86
86
|
specweave update
|
|
87
87
|
```
|
|
88
88
|
|
|
89
|
-
`specweave update` rewrites `AGENTS.md` into the lean form, turns `CLAUDE.md` into an import of it, keeps your own sections, and backs up the old files under `.specweave/backups/`. Existing increments need no migration. The **[3.0.0 changelog](https://github.com/anton-abyzov/specweave/blob/develop/CHANGELOG.md#300---2026-09-25)** lists what changed and what was removed. To
|
|
89
|
+
`specweave update` rewrites `AGENTS.md` into the lean form, turns `CLAUDE.md` into an import of it, keeps your own sections, and backs up the old files under `.specweave/backups/`. Existing increments need no migration. The **[3.0.0 changelog](https://github.com/anton-abyzov/specweave/blob/develop/CHANGELOG.md#300---2026-09-25)** lists what changed and what was removed. To keep local recovery checkpoints after turns, run `specweave auto-handoff on` once. Existing enabled settings use the new behavior after upgrading the CLI; run `specweave update` to refresh old quota-stop instructions in project files.
|
|
90
90
|
|
|
91
91
|
<br/>
|
|
92
92
|
|
package/bin/specweave.js
CHANGED
|
@@ -249,11 +249,11 @@ program
|
|
|
249
249
|
process.exitCode = await noteCommand(text, { incrementId });
|
|
250
250
|
});
|
|
251
251
|
|
|
252
|
-
// Auto-handoff -
|
|
252
|
+
// Auto-handoff - silent local recovery checkpoints (Claude Code, Codex)
|
|
253
253
|
program
|
|
254
254
|
.command('auto-handoff [action]')
|
|
255
|
-
.description('on | off | status:
|
|
256
|
-
.option('--at <percent>', '
|
|
255
|
+
.description('on | off | status: save local background checkpoints without interrupting work')
|
|
256
|
+
.option('--at <percent>', 'Legacy compatibility option; checkpoints are independent of usage', (v) => Number(v))
|
|
257
257
|
.action(async (action, options) => {
|
|
258
258
|
const { autoHandoffCommand } = await import('../dist/src/cli/commands/auto-handoff.js');
|
|
259
259
|
process.exitCode = await autoHandoffCommand(action, { at: options.at });
|
|
@@ -270,8 +270,8 @@ program
|
|
|
270
270
|
|
|
271
271
|
program
|
|
272
272
|
.command('usage-guard')
|
|
273
|
-
.description('Stop hook:
|
|
274
|
-
.option('--limit-hit', 'StopFailure hook
|
|
273
|
+
.description('Stop hook: queue a local checkpoint and return without interrupting work')
|
|
274
|
+
.option('--limit-hit', 'StopFailure hook: save locally after a rate-limit failure')
|
|
275
275
|
.action(async (options) => {
|
|
276
276
|
const { usageGuardCommand } = await import('../dist/src/cli/commands/auto-handoff.js');
|
|
277
277
|
process.exitCode = await usageGuardCommand({ limitHit: options.limitHit === true });
|
package/bin/startup-check.js
CHANGED
|
@@ -4,7 +4,7 @@ export async function checkForDuplicates() {
|
|
|
4
4
|
try {
|
|
5
5
|
// Skip check for init command (no .specweave yet)
|
|
6
6
|
const args = process.argv.slice(2);
|
|
7
|
-
if (args.length === 0 ||
|
|
7
|
+
if (args.length === 0 || ['init', 'usage-guard', 'statusline'].includes(args[0]) || args[0] === '--help' || args[0] === '-h' || args[0] === '--version' || args[0] === '-V') {
|
|
8
8
|
return;
|
|
9
9
|
}
|
|
10
10
|
|
|
@@ -1,32 +1,10 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI Commands: auto-handoff, statusline, usage-guard
|
|
3
|
-
*
|
|
4
|
-
* specweave auto-handoff [on|off|status] [--at 90]
|
|
5
|
-
* specweave statusline [--wrap "<your status line command>"] (Claude Code status line)
|
|
6
|
-
* specweave usage-guard (Stop hook, Claude Code and Codex)
|
|
7
|
-
* specweave usage-guard --limit-hit (StopFailure hook, Grok Build)
|
|
8
|
-
*
|
|
9
|
-
* `auto-handoff on` wires the tools once, in the user's own settings:
|
|
10
|
-
* Claude Code gets the status line (wrapping any existing one), a Stop hook
|
|
11
|
-
* and a StopFailure hook; Codex gets the same Stop hook in ~/.codex/hooks.json.
|
|
12
|
-
* From then on a session that reaches the threshold hands off by itself.
|
|
13
|
-
* Grok Build reports no usage percentage, so it gets only the StopFailure
|
|
14
|
-
* hook, in ~/.grok/hooks/; it runs the handoff itself right after a turn hits
|
|
15
|
-
* the rate limit. In Claude Code the same StopFailure hook is the backstop for
|
|
16
|
-
* a turn that jumps past the limit before the Stop hook could ask.
|
|
17
|
-
*
|
|
18
|
-
* @module cli/commands/auto-handoff
|
|
19
|
-
*/
|
|
1
|
+
/** Opt-in local checkpoints, status display, and silent lifecycle hooks. */
|
|
20
2
|
/** Claude Code status line: record usage, then print a line (or the wrapped command's). */
|
|
21
3
|
export declare function statuslineCommand(opts?: {
|
|
22
4
|
wrap?: string;
|
|
23
5
|
home?: string;
|
|
24
6
|
}): Promise<number>;
|
|
25
|
-
/**
|
|
26
|
-
* Stop hook for Claude Code and Codex: `{}` or a block that asks for a handoff.
|
|
27
|
-
* With `limitHit` (Grok Build's StopFailure hook) the model has already run
|
|
28
|
-
* out, so the hook writes the handoff itself.
|
|
29
|
-
*/
|
|
7
|
+
/** Always return valid empty hook JSON. Saving happens outside the model turn. */
|
|
30
8
|
export declare function usageGuardCommand(opts?: {
|
|
31
9
|
home?: string;
|
|
32
10
|
limitHit?: boolean;
|
|
@@ -49,7 +27,7 @@ type Settings = Record<string, unknown> & {
|
|
|
49
27
|
command?: string;
|
|
50
28
|
};
|
|
51
29
|
};
|
|
52
|
-
/** Grok Build hook file:
|
|
30
|
+
/** Grok Build hook file: save locally when a turn fails on the rate limit. */
|
|
53
31
|
export declare function grokHook(): Settings;
|
|
54
32
|
export interface AutoHandoffOptions {
|
|
55
33
|
at?: number;
|
|
@@ -66,7 +44,7 @@ export declare function autoHandoffCommand(action?: string, opts?: AutoHandoffOp
|
|
|
66
44
|
*/
|
|
67
45
|
export declare function codexHookTrusted(home?: string): boolean;
|
|
68
46
|
/**
|
|
69
|
-
* What `auto-handoff status` prints:
|
|
47
|
+
* What `auto-handoff status` prints: checkpoint policy, whether each tool's hooks
|
|
70
48
|
* are actually in place, and the last usage each tool reported.
|
|
71
49
|
*/
|
|
72
50
|
export declare function autoHandoffStatus(home?: string, now?: number): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-handoff.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/auto-handoff.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"auto-handoff.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/auto-handoff.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAgC5E,2FAA2F;AAC3F,wBAAsB,iBAAiB,CAAC,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAcpG;AAED,kFAAkF;AAClF,wBAAsB,iBAAiB,CAAC,IAAI,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CASzH;AAED,UAAU,SAAS;IAAG,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE;AACvG,UAAU,SAAS;IAAG,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAA;CAAE;AAC7D,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAAC,UAAU,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC;AA0CpI,8EAA8E;AAC9E,wBAAgB,QAAQ,IAAI,QAAQ,CASnC;AAMD,MAAM,WAAW,kBAAkB;IACjC,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,kBAAkB,CAAC,MAAM,SAAW,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAmE1G;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,SAAe,GAAG,OAAO,CAsB7D;AAWD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,SAAe,EAAE,GAAG,SAAa,GAAG,MAAM,EAAE,CA2CjF"}
|
|
@@ -1,28 +1,10 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI Commands: auto-handoff, statusline, usage-guard
|
|
3
|
-
*
|
|
4
|
-
* specweave auto-handoff [on|off|status] [--at 90]
|
|
5
|
-
* specweave statusline [--wrap "<your status line command>"] (Claude Code status line)
|
|
6
|
-
* specweave usage-guard (Stop hook, Claude Code and Codex)
|
|
7
|
-
* specweave usage-guard --limit-hit (StopFailure hook, Grok Build)
|
|
8
|
-
*
|
|
9
|
-
* `auto-handoff on` wires the tools once, in the user's own settings:
|
|
10
|
-
* Claude Code gets the status line (wrapping any existing one), a Stop hook
|
|
11
|
-
* and a StopFailure hook; Codex gets the same Stop hook in ~/.codex/hooks.json.
|
|
12
|
-
* From then on a session that reaches the threshold hands off by itself.
|
|
13
|
-
* Grok Build reports no usage percentage, so it gets only the StopFailure
|
|
14
|
-
* hook, in ~/.grok/hooks/; it runs the handoff itself right after a turn hits
|
|
15
|
-
* the rate limit. In Claude Code the same StopFailure hook is the backstop for
|
|
16
|
-
* a turn that jumps past the limit before the Stop hook could ask.
|
|
17
|
-
*
|
|
18
|
-
* @module cli/commands/auto-handoff
|
|
19
|
-
*/
|
|
1
|
+
/** Opt-in local checkpoints, status display, and silent lifecycle hooks. */
|
|
20
2
|
import * as fs from 'fs';
|
|
21
3
|
import * as os from 'os';
|
|
22
4
|
import * as path from 'path';
|
|
23
5
|
import { spawnSync } from 'child_process';
|
|
24
|
-
import { DEFAULT_THRESHOLD, readSettings, writeSettings, recordClaudeUsage,
|
|
25
|
-
import {
|
|
6
|
+
import { DEFAULT_THRESHOLD, readSettings, writeSettings, recordClaudeUsage, usageSummary, latestClaudeReading, latestCodexReading, claudeCachedReading, desktopUsageReading, } from '../../core/session/usage-guard.js';
|
|
7
|
+
import { queueSessionCheckpoint } from '../../core/session/session-checkpoint.js';
|
|
26
8
|
const GUARD_COMMAND = 'specweave usage-guard';
|
|
27
9
|
const LIMIT_HIT_COMMAND = `${GUARD_COMMAND} --limit-hit`;
|
|
28
10
|
const STATUS_COMMAND = 'specweave statusline';
|
|
@@ -55,35 +37,20 @@ export async function statuslineCommand(opts = {}) {
|
|
|
55
37
|
}
|
|
56
38
|
const cwd = input.workspace?.current_dir ?? input.cwd ?? process.cwd();
|
|
57
39
|
const model = input.model?.display_name;
|
|
58
|
-
|
|
59
|
-
process.stdout.write([path.basename(cwd), model, windows.length ? usageSummary(windows) : '', top && top.percent >= (readSettings(opts.home)?.at ?? 101) ? 'hand off' : '']
|
|
40
|
+
process.stdout.write([path.basename(cwd), model, windows.length ? usageSummary(windows) : '']
|
|
60
41
|
.filter(Boolean).join(' · ') + '\n');
|
|
61
42
|
return 0;
|
|
62
43
|
}
|
|
63
|
-
/**
|
|
64
|
-
* Stop hook for Claude Code and Codex: `{}` or a block that asks for a handoff.
|
|
65
|
-
* With `limitHit` (Grok Build's StopFailure hook) the model has already run
|
|
66
|
-
* out, so the hook writes the handoff itself.
|
|
67
|
-
*/
|
|
44
|
+
/** Always return valid empty hook JSON. Saving happens outside the model turn. */
|
|
68
45
|
export async function usageGuardCommand(opts = {}) {
|
|
69
|
-
if (opts.limitHit) {
|
|
70
|
-
try {
|
|
71
|
-
const root = limitHitTarget(parse(opts.input ?? await readStdin()), { home: opts.home });
|
|
72
|
-
if (root) {
|
|
73
|
-
const { handoffCommand } = await import('./handoff.js');
|
|
74
|
-
const tool = detectTool();
|
|
75
|
-
await handoffCommand({ cwd: root, reason: tool === 'cli' ? 'usage limit reached' : `usage limit reached in ${tool}` });
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
catch { /* a hook must never break the tool */ }
|
|
79
|
-
return 0;
|
|
80
|
-
}
|
|
81
|
-
let result = {};
|
|
82
46
|
try {
|
|
83
|
-
|
|
47
|
+
const input = parse(opts.input ?? await readStdin());
|
|
48
|
+
if (readSettings(opts.home) && (!opts.limitHit || input.error === 'rate_limit')) {
|
|
49
|
+
await queueSessionCheckpoint(input, { home: opts.home });
|
|
50
|
+
}
|
|
84
51
|
}
|
|
85
|
-
catch { /* a hook must never break the tool */ }
|
|
86
|
-
process.stdout.write(
|
|
52
|
+
catch { /* a hook must never break the tool or steer the model */ }
|
|
53
|
+
process.stdout.write('{}\n');
|
|
87
54
|
return 0;
|
|
88
55
|
}
|
|
89
56
|
function readJson(file) {
|
|
@@ -122,10 +89,10 @@ function removeHook(s, event, command) {
|
|
|
122
89
|
delete s.hooks;
|
|
123
90
|
}
|
|
124
91
|
const STOP_HOOK = { hooks: [{ type: 'command', command: GUARD_COMMAND, timeout: 10 }] };
|
|
125
|
-
/** Claude Code: a
|
|
92
|
+
/** Claude Code: a failed turn can save without calling the model again. */
|
|
126
93
|
const CLAUDE_LIMIT_HOOK = { matcher: 'rate_limit', hooks: [{ type: 'command', command: LIMIT_HIT_COMMAND, timeout: 60 }] };
|
|
127
94
|
const GROK_HOOK_FILE = 'specweave-auto-handoff.json';
|
|
128
|
-
/** Grok Build hook file:
|
|
95
|
+
/** Grok Build hook file: save locally when a turn fails on the rate limit. */
|
|
129
96
|
export function grokHook() {
|
|
130
97
|
return {
|
|
131
98
|
hooks: {
|
|
@@ -180,10 +147,12 @@ export async function autoHandoffCommand(action = 'status', opts = {}) {
|
|
|
180
147
|
}
|
|
181
148
|
if (fs.existsSync(path.join(home, '.grok'))) {
|
|
182
149
|
writeJson(grokFile, grokHook());
|
|
183
|
-
say(`Grok Build: StopFailure hook added in ${grokFile}; it
|
|
150
|
+
say(`Grok Build: StopFailure hook added in ${grokFile}; it saves a local checkpoint after a rate-limit failure`);
|
|
184
151
|
}
|
|
185
152
|
writeSettings({ at, since: new Date().toISOString(), ...(previousStatusLine ? { previousStatusLine } : {}) }, home);
|
|
186
|
-
say(
|
|
153
|
+
say('Auto-handoff is on: local checkpoints refresh after turns, at most once every five minutes. Work continues; quota percentages never stop it.');
|
|
154
|
+
if (opts.at !== undefined)
|
|
155
|
+
say('--at is accepted for compatibility; checkpoints no longer depend on a usage threshold.');
|
|
187
156
|
return 0;
|
|
188
157
|
}
|
|
189
158
|
if (action === 'off') {
|
|
@@ -261,14 +230,14 @@ function readingLine(r, now) {
|
|
|
261
230
|
return r ? `last reading ${usageSummary(r.windows)} (${ago(r.at, now)})` : 'no usage reading yet';
|
|
262
231
|
}
|
|
263
232
|
/**
|
|
264
|
-
* What `auto-handoff status` prints:
|
|
233
|
+
* What `auto-handoff status` prints: checkpoint policy, whether each tool's hooks
|
|
265
234
|
* are actually in place, and the last usage each tool reported.
|
|
266
235
|
*/
|
|
267
236
|
export function autoHandoffStatus(home = os.homedir(), now = Date.now()) {
|
|
268
237
|
const settings = readSettings(home);
|
|
269
238
|
if (!settings)
|
|
270
239
|
return ['Auto-handoff is off. Turn it on with `specweave auto-handoff on`.'];
|
|
271
|
-
const lines = [`Auto-handoff is on
|
|
240
|
+
const lines = [`Auto-handoff is on: local background checkpoints every five minutes after turns (since ${settings.since ?? 'unknown'}).`];
|
|
272
241
|
let broken = false;
|
|
273
242
|
const claude = readJson(path.join(home, '.claude', 'settings.json'));
|
|
274
243
|
if (claude) {
|
|
@@ -287,7 +256,7 @@ export function autoHandoffStatus(home = os.homedir(), now = Date.now()) {
|
|
|
287
256
|
const [best, source] = fallbacks.filter(([r]) => r).sort(([a], [b]) => b.at - a.at)[0] ?? [undefined, ''];
|
|
288
257
|
const reading = `${readingLine(best, now)}${source}`;
|
|
289
258
|
lines.push(`Claude Code: ${missing.length ? `missing ${missing.join(', ')}` : 'status line, Stop and StopFailure hooks in place'}; ${reading}`);
|
|
290
|
-
lines.push('
|
|
259
|
+
lines.push(' Usage readings are informational only; saving does not depend on a status line, account quota or proxy provider.');
|
|
291
260
|
}
|
|
292
261
|
const codexFile = path.join(home, '.codex', 'hooks.json');
|
|
293
262
|
if (fs.existsSync(path.dirname(codexFile))) {
|
|
@@ -302,8 +271,10 @@ export function autoHandoffStatus(home = os.homedir(), now = Date.now()) {
|
|
|
302
271
|
if (fs.existsSync(path.join(home, '.grok'))) {
|
|
303
272
|
const ok = fs.existsSync(path.join(home, '.grok', 'hooks', GROK_HOOK_FILE));
|
|
304
273
|
broken || (broken = !ok);
|
|
305
|
-
lines.push(`Grok Build: ${ok ? 'StopFailure hook in place' : 'missing StopFailure hook'}; Grok reports no usage, so it
|
|
274
|
+
lines.push(`Grok Build: ${ok ? 'StopFailure hook in place' : 'missing StopFailure hook'}; Grok reports no usage, so it saves locally when a turn hits the limit`);
|
|
306
275
|
}
|
|
276
|
+
lines.push(`Local checkpoints: ${path.join(home, '.specweave', 'checkpoints')} (per worktree and session; current.json points to the latest complete save).`);
|
|
277
|
+
lines.push('To transfer work to another tool or machine, run `specweave handoff` explicitly. Automatic checkpoints never push or release claims.');
|
|
307
278
|
if (broken)
|
|
308
279
|
lines.push('Run `specweave auto-handoff on` again to put the missing pieces back.');
|
|
309
280
|
return lines;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto-handoff.js","sourceRoot":"","sources":["../../../../src/cli/commands/auto-handoff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EACL,iBAAiB,EAAE,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,EACpH,mBAAmB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,mBAAmB,GAClF,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,aAAa,GAAG,uBAAuB,CAAC;AAC9C,MAAM,iBAAiB,GAAG,GAAG,aAAa,cAAc,CAAC;AACzD,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAE9C,KAAK,UAAU,SAAS;IACtB,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACnC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,EAAE,MAAM,CAAC,IAAI,OAAO,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,CAAW,CAAC,CAAC;IAC9D,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,KAAK,CAAC,GAAW;IACxB,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,2FAA2F;AAC3F,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAyC,EAAE;IACjF,MAAM,GAAG,GAAG,MAAM,SAAS,EAAE,CAAC;IAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;QACrC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,GAAG,GAAI,KAAK,CAAC,SAAkD,EAAE,WAAW,IAAK,KAAK,CAAC,GAA0B,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzI,MAAM,KAAK,GAAI,KAAK,CAAC,KAA+C,EAAE,YAAY,CAAC;IACnF,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;SACxK,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IACvC,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAA8D,EAAE;IACtG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,SAAS,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACzF,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;gBACxD,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;gBAC1B,MAAM,cAAc,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,0BAA0B,IAAI,EAAE,EAAE,CAAC,CAAC;YACzH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,sCAAsC,CAAC,CAAC;QAClD,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,SAAS,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACnF,CAAC;IAAC,MAAM,CAAC,CAAC,sCAAsC,CAAC,CAAC;IAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IACpD,OAAO,CAAC,CAAC;AACX,CAAC;AAMD,SAAS,QAAQ,CAAC,IAAY;IAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAa,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC,CAAC,6BAA6B;IACjD,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAY,EAAE,IAAc;IAC7C,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,OAAO,CAAC,CAAW,EAAE,KAAa,EAAE,OAAe;IAC1D,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC;AAClG,CAAC;AAED,SAAS,OAAO,CAAC,CAAW,EAAE,KAAa,EAAE,KAAgB;IAC3D,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,EAAE,CAAC;IAChD,IAAI,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC;QAAE,OAAO;IACvC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;IACxB,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,UAAU,CAAC,CAAW,EAAE,KAAa,EAAE,OAAe;IAC7D,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC;QAAE,OAAO;IAC9B,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;SAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;SACnF,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC,KAAK,CAAC;AACnD,CAAC;AAED,MAAM,SAAS,GAAc,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;AACnG,oGAAoG;AACpG,MAAM,iBAAiB,GAAc,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;AAEtI,MAAM,cAAc,GAAG,6BAA6B,CAAC;AAErD,0EAA0E;AAC1E,MAAM,UAAU,QAAQ;IACtB,OAAO;QACL,KAAK,EAAE;YACL,WAAW,EAAE,CAAC;oBACZ,OAAO,EAAE,YAAY;oBACrB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,EAAe,CAAC;iBACpH,CAAC;SACH;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC;AACzC,CAAC;AAOD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MAAM,GAAG,QAAQ,EAAE,OAA2B,EAAE;IACvF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IACnE,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAEhE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,iBAAiB,CAAC;QAClE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC;YAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;YAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAC1G,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;QACpC,IAAI,kBAAkB,GAAG,QAAQ,EAAE,kBAAkB,CAAC;QACtD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,GAAG,CAAC,QAAQ,UAAU,+BAA+B,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC;YACjD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;gBACxC,kBAAkB,GAAG,MAAM,CAAC,UAAU,CAAC;gBACvC,MAAM,CAAC,UAAU,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,cAAc,WAAW,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;YAC/J,CAAC;YACD,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;YACnC,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC;YAClD,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAC9B,GAAG,CAAC,4BAA4B,OAAO,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,KAAK,yCAAyC,UAAU,EAAE,CAAC,CAAC;QACpI,CAAC;QACD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK;gBAAE,GAAG,CAAC,QAAQ,SAAS,+BAA+B,CAAC,CAAC;iBAC7D,CAAC;gBACJ,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;gBAClC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC5B,GAAG,CAAC,6BAA6B,SAAS,2GAA2G,CAAC,CAAC;YACzJ,CAAC;QACH,CAAC;QACD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;YAC5C,SAAS,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;YAChC,GAAG,CAAC,yCAAyC,QAAQ,6FAA6F,CAAC,CAAC;QACtJ,CAAC;QACD,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACpH,GAAG,CAAC,0BAA0B,EAAE,yGAAyG,CAAC,CAAC;QAC3I,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;QACpC,IAAI,MAAM,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACxC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;YAC1C,UAAU,CAAC,MAAM,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC;YACrD,IAAI,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC3D,IAAI,QAAQ,EAAE,kBAAkB;oBAAE,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,kBAA4C,CAAC;;oBACvG,OAAO,MAAM,CAAC,UAAU,CAAC;YAChC,CAAC;YACD,SAAS,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAChC,CAAC;QACD,MAAM,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,IAAI,KAAK,EAAE,CAAC;YAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;YAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAAC,CAAC;QACrF,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC/B,GAAG,CAAC,yDAAyD,CAAC,CAAC;QAC/D,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IACtD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE;QAC1D,IAAI,CAAC,CAAC,OAAO,KAAK,aAAa;YAAE,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC,CAAC;IACJ,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAC/B,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QAAC,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,KAAK,CAAC;IAAC,CAAC;IACzG,IAAI,OAA2B,CAAC;IAChC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACnD,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAC3E,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3D,SAAS;QACX,CAAC;QACD,IAAI,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;IACjG,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,GAAG,CAAC,EAAU,EAAE,GAAW;IAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IACxD,OAAO,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;AAC9H,CAAC;AAED,SAAS,WAAW,CAAC,CAA2B,EAAE,GAAW;IAC3D,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,sBAAsB,CAAC;AACpG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAI,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IACrE,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,mEAAmE,CAAC,CAAC;IAC5F,MAAM,KAAK,GAAG,CAAC,yBAAyB,QAAQ,CAAC,EAAE,YAAY,QAAQ,CAAC,KAAK,IAAI,SAAS,IAAI,CAAC,CAAC;IAChG,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC;IACrE,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,OAAO,GAAG;YACd,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa;YAC3E,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW;YACzD,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;SAC5E,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClB,MAAM,KAAN,MAAM,GAAK,OAAO,CAAC,MAAM,GAAG,CAAC,EAAC;QAC9B,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,SAAS,GAA8C;YAC3D,CAAC,aAAa,EAAE,EAAE,CAAC;YACnB,CAAC,mBAAmB,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,uBAAuB,CAAC;YAC7D,CAAC,mBAAmB,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,kCAAkC,CAAC;SACzE,CAAC;QACF,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAE,CAAC,EAAE,GAAG,CAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC5G,MAAM,OAAO,GAAG,GAAG,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,kDAAkD,KAAK,OAAO,EAAE,CAAC,CAAC;QAChJ,KAAK,CAAC,IAAI,CAAC,uSAAuS,CAAC,CAAC;IACtT,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC1D,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QAC5D,MAAM,KAAN,MAAM,GAAK,CAAC,EAAE,EAAC;QACf,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,qBAAqB,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC,mBAAmB,KAAK,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAChK,IAAI,EAAE,IAAI,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,mNAAmN,CAAC,CAAC;IACtP,CAAC;IACD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;QAC5C,MAAM,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;QAC5E,MAAM,KAAN,MAAM,GAAK,CAAC,EAAE,EAAC;QACf,KAAK,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,0BAA0B,qEAAqE,CAAC,CAAC;IAChK,CAAC;IACD,IAAI,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;IAChG,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
1
|
+
{"version":3,"file":"auto-handoff.js","sourceRoot":"","sources":["../../../../src/cli/commands/auto-handoff.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkpoint-worker.d.ts","sourceRoot":"","sources":["../../../../src/core/session/checkpoint-worker.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/** A detached supervisor enforces the wall-clock budget even while Git blocks synchronously. */
|
|
2
|
+
import { spawn, spawnSync } from 'node:child_process';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
import { CHECKPOINT_WORKER_TIMEOUT_MS, cleanupCheckpointRequest, runSessionCheckpoint } from './session-checkpoint.js';
|
|
5
|
+
const requestPath = process.argv[2];
|
|
6
|
+
if (requestPath) {
|
|
7
|
+
if (process.argv[3] === '--capture') {
|
|
8
|
+
void runSessionCheckpoint(requestPath).then(() => process.exit(0), () => process.exit(1));
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
const child = spawn(process.execPath, [fileURLToPath(import.meta.url), requestPath, '--capture'], {
|
|
12
|
+
stdio: 'ignore', windowsHide: true, detached: process.platform !== 'win32',
|
|
13
|
+
});
|
|
14
|
+
const stopOwnProcessTree = () => {
|
|
15
|
+
if (!child.pid)
|
|
16
|
+
return;
|
|
17
|
+
try {
|
|
18
|
+
if (process.platform === 'win32') {
|
|
19
|
+
spawnSync('taskkill', ['/PID', String(child.pid), '/T', '/F'], { stdio: 'ignore', windowsHide: true, timeout: 1000 });
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
// This process group was created above. It also contains any Git
|
|
23
|
+
// helpers orphaned when a timed-out synchronous Git call was killed.
|
|
24
|
+
process.kill(-child.pid, 'SIGKILL');
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
catch { /* already exited */ }
|
|
28
|
+
};
|
|
29
|
+
const timer = setTimeout(stopOwnProcessTree, CHECKPOINT_WORKER_TIMEOUT_MS);
|
|
30
|
+
let finished = false;
|
|
31
|
+
const finish = () => {
|
|
32
|
+
if (finished)
|
|
33
|
+
return;
|
|
34
|
+
finished = true;
|
|
35
|
+
clearTimeout(timer);
|
|
36
|
+
stopOwnProcessTree();
|
|
37
|
+
cleanupCheckpointRequest(requestPath);
|
|
38
|
+
};
|
|
39
|
+
child.once('error', finish);
|
|
40
|
+
child.once('exit', finish);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=checkpoint-worker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkpoint-worker.js","sourceRoot":"","sources":["../../../../src/core/session/checkpoint-worker.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEvH,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpC,IAAI,WAAW,EAAE,CAAC;IAChB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE,CAAC;QACpC,KAAK,oBAAoB,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE;YAChG,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO;SAC3E,CAAC,CAAC;QACH,MAAM,kBAAkB,GAAG,GAAG,EAAE;YAC9B,IAAI,CAAC,KAAK,CAAC,GAAG;gBAAE,OAAO;YACvB,IAAI,CAAC;gBACH,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;oBACjC,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxH,CAAC;qBAAM,CAAC;oBACN,iEAAiE;oBACjE,qEAAqE;oBACrE,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC;QAClC,CAAC,CAAC;QACF,MAAM,KAAK,GAAG,UAAU,CAAC,kBAAkB,EAAE,4BAA4B,CAAC,CAAC;QAC3E,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,MAAM,MAAM,GAAG,GAAG,EAAE;YAClB,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,kBAAkB,EAAE,CAAC;YACrB,wBAAwB,CAAC,WAAW,CAAC,CAAC;QACxC,CAAC,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC"}
|
|
@@ -69,6 +69,8 @@ export interface HandoffGitInfo {
|
|
|
69
69
|
hasUncommittedChanges: boolean;
|
|
70
70
|
}
|
|
71
71
|
export interface HandoffDocInput {
|
|
72
|
+
/** A local recovery snapshot preserves the active session's ownership. */
|
|
73
|
+
localCheckpoint?: boolean;
|
|
72
74
|
docPath: string;
|
|
73
75
|
diffPath: string;
|
|
74
76
|
repoRoot: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handoff-doc-format.d.ts","sourceRoot":"","sources":["../../../../src/core/session/handoff-doc-format.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"handoff-doc-format.d.ts","sourceRoot":"","sources":["../../../../src/core/session/handoff-doc-format.ts"],"names":[],"mappings":"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"}
|
|
@@ -110,7 +110,7 @@ export function renderHandoffDoc(input) {
|
|
|
110
110
|
const inc = input.increment;
|
|
111
111
|
// ── Header ────────────────────────────────────────────────────────────
|
|
112
112
|
const title = inc ? `${inc.id}${inc.title ? ` ${inc.title}` : ''}` : 'no active increment';
|
|
113
|
-
L.push(`# Handoff — ${title}`);
|
|
113
|
+
L.push(`# ${input.localCheckpoint ? 'Local checkpoint' : 'Handoff'} — ${title}`);
|
|
114
114
|
const gitBit = input.git.isGitRepo
|
|
115
115
|
? `branch ${input.git.branch || '(detached)'} @ ${input.git.shortSha || '(no commits)'} · tree: ${input.git.hasUncommittedChanges ? `${uncommittedCount(input.git.statusPorcelain)} uncommitted` : 'clean'}`
|
|
116
116
|
: 'not a git repo';
|
|
@@ -188,7 +188,10 @@ export function renderHandoffDoc(input) {
|
|
|
188
188
|
L.push('');
|
|
189
189
|
// ── Next steps ────────────────────────────────────────────────────────
|
|
190
190
|
L.push('## Next steps');
|
|
191
|
-
if (input.
|
|
191
|
+
if (input.localCheckpoint) {
|
|
192
|
+
L.push('Compare this snapshot with the current checkout and confirm the original session has stopped before restoring any edits. Existing task claims remain owned by their current agents.');
|
|
193
|
+
}
|
|
194
|
+
else if (input.next) {
|
|
192
195
|
L.push(input.next);
|
|
193
196
|
}
|
|
194
197
|
else if (inc?.nextTask) {
|
|
@@ -203,8 +206,14 @@ export function renderHandoffDoc(input) {
|
|
|
203
206
|
L.push('');
|
|
204
207
|
// ── Resume ────────────────────────────────────────────────────────────
|
|
205
208
|
L.push('## Resume');
|
|
206
|
-
|
|
207
|
-
|
|
209
|
+
if (input.localCheckpoint) {
|
|
210
|
+
L.push('1. Read this document and its sibling diff as recovery evidence; inspect the current files and active owners before applying changes.');
|
|
211
|
+
L.push('2. This is a local checkpoint, not an ownership transfer. Do not run `specweave pickup` to restore it: pickup imports the separate explicit handoff. Restore only reviewed missing edits after confirming the previous writer is no longer active.');
|
|
212
|
+
}
|
|
213
|
+
else {
|
|
214
|
+
L.push('1. `specweave pickup` prints the next task with its acceptance criteria, claims and branch state.');
|
|
215
|
+
L.push(`2. \`specweave task claim <T-id>${inc ? ` ${inc.id}` : ''}\` → implement → \`specweave task done <T-id> --run "<test>"\`.`);
|
|
216
|
+
}
|
|
208
217
|
const own = TOOL_RESUME_MATRIX.find((e) => e.id === input.agent.split('@')[0]);
|
|
209
218
|
const transcripts = own ? [own] : TOOL_RESUME_MATRIX.slice(0, 3);
|
|
210
219
|
L.push(`3. Original transcript (optional): ${transcripts.map((e) => `${e.tool}: \`${e.resumeCmd.split(' ')[0]}\``).join(' · ')}.`);
|
|
@@ -219,6 +228,9 @@ export function renderHandoffDoc(input) {
|
|
|
219
228
|
*/
|
|
220
229
|
export function renderPastePrompt(input, opts = {}) {
|
|
221
230
|
const P = [];
|
|
231
|
+
if (input.localCheckpoint) {
|
|
232
|
+
return `Inspect the local recovery checkpoint at ${input.docPath} and its diff at ${input.diffPath}. Compare with the current checkout and confirm the previous writer has stopped before restoring edits. This checkpoint does not release task ownership or authorize pickup.`;
|
|
233
|
+
}
|
|
222
234
|
if (opts.inline) {
|
|
223
235
|
P.push('Resume my work using the self-contained handoff below.');
|
|
224
236
|
P.push('Treat everything between the markers as ground truth. ' +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handoff-doc-format.js","sourceRoot":"","sources":["../../../../src/core/session/handoff-doc-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,kEAAkE;AAClE,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAe,CAAC;AACjD,oGAAoG;AACpG,MAAM,CAAC,MAAM,wBAAwB,GAAG,eAAe,CAAC;AAExD,uFAAuF;AACvF,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAChD,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;AAClD,MAAM,aAAa,GAAG,+CAA+C,CAAC;AAEtE,kEAAkE;AAClE,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;AACjD,CAAC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,eAAe,CAAC;AACnD,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAAC;AAE/C,MAAM,CAAC,MAAM,qBAAqB,GAAsB;IACtD,kBAAkB;IAClB,gBAAgB;IAChB,WAAW;IACX,eAAe;IACf,YAAY;IACZ,QAAQ;CACA,CAAC;AAWX,MAAM,CAAC,MAAM,oBAAoB,GAC/B,uEAAuE;IACvE,wEAAwE,CAAC;AAE3E,MAAM,CAAC,MAAM,kBAAkB,GAA+B;IAC5D;QACE,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,0GAA0G;YAC1G,oBAAoB,GAAG,GAAG;QAC5B,SAAS,EAAE,kBAAkB;KAC9B;IACD;QACE,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,0DAA0D;QACvE,SAAS,EAAE,iDAAiD;KAC7D;IACD;QACE,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,wBAAwB;QACrC,SAAS,EAAE,yDAAyD;KACrE;IACD;QACE,EAAE,EAAE,QAAQ;QACZ,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,4DAA4D;QACzE,SAAS,EAAE,oBAAoB;KAChC;IACD;QACE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,mEAAmE;QAChF,SAAS,EAAE,sDAAsD;KAClE;IACD;QACE,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,qDAAqD;QAClE,SAAS,EAAE,8BAA8B;KAC1C;IACD;QACE,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,6EAA6E;QAC1F,SAAS,EAAE,8DAA8D;KAC1E;IACD;QACE,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,8CAA8C;QAC3D,SAAS,EAAE,yDAAyD;KACrE;CACO,CAAC;
|
|
1
|
+
{"version":3,"file":"handoff-doc-format.js","sourceRoot":"","sources":["../../../../src/core/session/handoff-doc-format.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,5 +45,7 @@ export declare const BOOKKEEPING_PATHSPECS: readonly string[];
|
|
|
45
45
|
/** Total Git budget leaves headroom below PreCompact's five-second budget. */
|
|
46
46
|
export declare const GIT_CAPTURE_BUDGET_MS = 3500;
|
|
47
47
|
/** Capture through a private index; an interrupted hook never stages user files. */
|
|
48
|
-
export declare function captureGitState(repoRoot: string, diffOutputPath: string
|
|
48
|
+
export declare function captureGitState(repoRoot: string, diffOutputPath: string, opts?: {
|
|
49
|
+
strict?: boolean;
|
|
50
|
+
}): GitState;
|
|
49
51
|
//# sourceMappingURL=handoff-git-state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handoff-git-state.d.ts","sourceRoot":"","sources":["../../../../src/core/session/handoff-git-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAOH;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,2DAA2D;IAC3D,SAAS,EAAE,OAAO,CAAC;IACnB,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,eAAe,EAAE,MAAM,CAAC;IACxB,kFAAkF;IAClF,QAAQ,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,qBAAqB,EAAE,OAAO,CAAC;IAC/B,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EASlD,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"handoff-git-state.d.ts","sourceRoot":"","sources":["../../../../src/core/session/handoff-git-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAOH;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,2DAA2D;IAC3D,SAAS,EAAE,OAAO,CAAC;IACnB,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,eAAe,EAAE,MAAM,CAAC;IACxB,kFAAkF;IAClF,QAAQ,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,qBAAqB,EAAE,OAAO,CAAC;IAC/B,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,MAAM,EASlD,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,oFAAoF;AACpF,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,QAAQ,CA+EnH"}
|