specweave 1.0.586 → 1.0.587
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/bin/specweave.js +30 -0
- package/dist/plugins/specweave/lib/integrations/github/github-access-error.d.ts +48 -0
- package/dist/plugins/specweave/lib/integrations/github/github-access-error.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/integrations/github/github-access-error.js +69 -0
- package/dist/plugins/specweave/lib/integrations/github/github-access-error.js.map +1 -0
- package/dist/plugins/specweave/lib/integrations/github/github-client-v2.d.ts +8 -0
- package/dist/plugins/specweave/lib/integrations/github/github-client-v2.d.ts.map +1 -1
- package/dist/plugins/specweave/lib/integrations/github/github-client-v2.js +22 -2
- package/dist/plugins/specweave/lib/integrations/github/github-client-v2.js.map +1 -1
- package/dist/plugins/specweave/lib/vendor/generators/spec/task-parser.js +38 -16
- package/dist/plugins/specweave/lib/vendor/generators/spec/task-parser.js.map +1 -1
- package/dist/src/cli/commands/handoff.d.ts +54 -0
- package/dist/src/cli/commands/handoff.d.ts.map +1 -0
- package/dist/src/cli/commands/handoff.js +82 -0
- package/dist/src/cli/commands/handoff.js.map +1 -0
- package/dist/src/cli/helpers/init/gitignore-generator.d.ts.map +1 -1
- package/dist/src/cli/helpers/init/gitignore-generator.js +3 -0
- package/dist/src/cli/helpers/init/gitignore-generator.js.map +1 -1
- package/dist/src/core/hooks/handlers/hook-router.d.ts.map +1 -1
- package/dist/src/core/hooks/handlers/hook-router.js +5 -0
- package/dist/src/core/hooks/handlers/hook-router.js.map +1 -1
- package/dist/src/core/hooks/handlers/pre-compact.d.ts +33 -0
- package/dist/src/core/hooks/handlers/pre-compact.d.ts.map +1 -0
- package/dist/src/core/hooks/handlers/pre-compact.js +109 -0
- package/dist/src/core/hooks/handlers/pre-compact.js.map +1 -0
- package/dist/src/core/hooks/handlers/types.d.ts +1 -1
- package/dist/src/core/hooks/handlers/types.d.ts.map +1 -1
- package/dist/src/core/hooks/handlers/types.js +3 -0
- package/dist/src/core/hooks/handlers/types.js.map +1 -1
- package/dist/src/core/session/handoff-doc-format.d.ts +164 -0
- package/dist/src/core/session/handoff-doc-format.d.ts.map +1 -0
- package/dist/src/core/session/handoff-doc-format.js +292 -0
- package/dist/src/core/session/handoff-doc-format.js.map +1 -0
- package/dist/src/core/session/handoff-git-state.d.ts +49 -0
- package/dist/src/core/session/handoff-git-state.d.ts.map +1 -0
- package/dist/src/core/session/handoff-git-state.js +164 -0
- package/dist/src/core/session/handoff-git-state.js.map +1 -0
- package/dist/src/core/session/handoff-secret-scrub.d.ts +59 -0
- package/dist/src/core/session/handoff-secret-scrub.d.ts.map +1 -0
- package/dist/src/core/session/handoff-secret-scrub.js +72 -0
- package/dist/src/core/session/handoff-secret-scrub.js.map +1 -0
- package/dist/src/core/session/{handoff-context.d.ts → install-handoff-context.d.ts} +7 -3
- package/dist/src/core/session/install-handoff-context.d.ts.map +1 -0
- package/dist/src/core/session/{handoff-context.js → install-handoff-context.js} +7 -3
- package/dist/src/core/session/install-handoff-context.js.map +1 -0
- package/dist/src/core/session/work-handoff.d.ts +88 -0
- package/dist/src/core/session/work-handoff.d.ts.map +1 -0
- package/dist/src/core/session/work-handoff.js +412 -0
- package/dist/src/core/session/work-handoff.js.map +1 -0
- package/dist/src/generators/spec/task-parser.d.ts.map +1 -1
- package/dist/src/generators/spec/task-parser.js +38 -16
- package/dist/src/generators/spec/task-parser.js.map +1 -1
- package/package.json +1 -1
- package/plugins/specweave/commands/handoff.md +54 -0
- package/plugins/specweave/lib/integrations/github/github-access-error.js +43 -0
- package/plugins/specweave/lib/integrations/github/github-access-error.ts +103 -0
- package/plugins/specweave/lib/integrations/github/github-client-v2.js +24 -4
- package/plugins/specweave/lib/integrations/github/github-client-v2.ts +26 -4
- package/plugins/specweave/lib/vendor/generators/spec/task-parser.js +38 -16
- package/plugins/specweave/lib/vendor/generators/spec/task-parser.js.map +1 -1
- package/plugins/specweave/skills/handoff/SKILL.md +59 -0
- package/dist/src/core/session/handoff-context.d.ts.map +0 -1
- package/dist/src/core/session/handoff-context.js.map +0 -1
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI Command: handoff
|
|
3
|
+
*
|
|
4
|
+
* Assembles a portable, secret-scrubbed work-handoff document (+ a full diff of
|
|
5
|
+
* uncommitted edits) so a developer can stop work in one AI coding tool and
|
|
6
|
+
* resume in another. Thin wrapper over {@link buildWorkHandoff} — all the
|
|
7
|
+
* expensive, deterministic assembly lives in the core builder; this command
|
|
8
|
+
* only maps flags → options and prints the result in the contractual order.
|
|
9
|
+
*
|
|
10
|
+
* Usage:
|
|
11
|
+
* specweave handoff [incrementId] \
|
|
12
|
+
* [--reason <r>] [--summary <s>] [--next <n>] [--gotcha <g>] \
|
|
13
|
+
* [--decision <d> ...] [--inline] [--non-specweave] [--out <path>] [--json]
|
|
14
|
+
*
|
|
15
|
+
* Output order (AC-US1-02 / US-005 — STRICT):
|
|
16
|
+
* 1. The absolute doc path as PLAIN TEXT (first line — for shell capture).
|
|
17
|
+
* 2. A clickable markdown link to the doc.
|
|
18
|
+
* 3. The `.diff` path.
|
|
19
|
+
* 4. The fenced copy-paste resume prompt.
|
|
20
|
+
* 5. A note that per-tool "find your source session" tips live inside the doc.
|
|
21
|
+
*
|
|
22
|
+
* With `--json`, the full {@link WorkHandoffResult} is printed as JSON instead
|
|
23
|
+
* (for programmatic callers — e.g. the hook handler and tests).
|
|
24
|
+
*
|
|
25
|
+
* Part of increment 0867: Cross-Tool Work Handoff.
|
|
26
|
+
*
|
|
27
|
+
* @module cli/commands/handoff
|
|
28
|
+
*/
|
|
29
|
+
import { buildWorkHandoff, AmbiguousActiveIncrementError, } from '../../core/session/work-handoff.js';
|
|
30
|
+
export async function handoffCommand(opts = {}) {
|
|
31
|
+
const startDir = opts.cwd ?? process.cwd();
|
|
32
|
+
const builderOpts = {
|
|
33
|
+
incrementId: opts.incrementId,
|
|
34
|
+
reason: opts.reason,
|
|
35
|
+
summary: opts.summary,
|
|
36
|
+
next: opts.next,
|
|
37
|
+
gotcha: opts.gotcha,
|
|
38
|
+
decisions: opts.decision,
|
|
39
|
+
inline: opts.inline,
|
|
40
|
+
out: opts.out,
|
|
41
|
+
nonSpecweave: opts.nonSpecweave,
|
|
42
|
+
};
|
|
43
|
+
let result;
|
|
44
|
+
try {
|
|
45
|
+
result = await buildWorkHandoff(startDir, builderOpts);
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
if (err instanceof AmbiguousActiveIncrementError) {
|
|
49
|
+
// 2+ active increments and no explicit id — list candidates and tell the
|
|
50
|
+
// user exactly how to disambiguate. Non-zero exit so scripts can detect it.
|
|
51
|
+
process.stderr.write(`Multiple active increments — pass one explicitly:\n` +
|
|
52
|
+
err.candidates.map((id) => ` - ${id}`).join('\n') +
|
|
53
|
+
`\n\nRe-run with the id, e.g.: specweave handoff ${err.candidates[0]}\n`);
|
|
54
|
+
process.exitCode = 1;
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
throw err;
|
|
58
|
+
}
|
|
59
|
+
if (opts.json) {
|
|
60
|
+
process.stdout.write(JSON.stringify(result, null, 2) + '\n');
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
// ── Contractual output order (AC-US1-02) ──────────────────────────────────
|
|
64
|
+
const out = [];
|
|
65
|
+
// 1. Absolute doc path as PLAIN TEXT, first.
|
|
66
|
+
out.push(result.docPath);
|
|
67
|
+
// 2. Clickable markdown link.
|
|
68
|
+
out.push(`[handoff doc](${result.docPath})`);
|
|
69
|
+
// 3. The .diff path.
|
|
70
|
+
out.push(`Uncommitted diff: ${result.diffPath}`);
|
|
71
|
+
// 4. Fenced copy-paste resume prompt.
|
|
72
|
+
out.push('');
|
|
73
|
+
out.push('Copy-paste this prompt into the other tool:');
|
|
74
|
+
out.push('```');
|
|
75
|
+
out.push(result.pastePrompt);
|
|
76
|
+
out.push('```');
|
|
77
|
+
// 5. Note that per-tool tips live inside the doc.
|
|
78
|
+
out.push('');
|
|
79
|
+
out.push(`Per-tool "find your source session" tips are inside the doc (How To Resume section): ${result.docPath}`);
|
|
80
|
+
process.stdout.write(out.join('\n') + '\n');
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=handoff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../../../src/cli/commands/handoff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EACL,gBAAgB,EAChB,6BAA6B,GAE9B,MAAM,oCAAoC,CAAC;AA2B5C,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAA8B,EAAE;IACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAE3C,MAAM,WAAW,GAAuB;QACtC,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,QAAQ;QACxB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,YAAY,EAAE,IAAI,CAAC,YAAY;KAChC,CAAC;IAEF,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,gBAAgB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,6BAA6B,EAAE,CAAC;YACjD,yEAAyE;YACzE,4EAA4E;YAC5E,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,qDAAqD;gBACnD,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClD,oDAAoD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAC5E,CAAC;YACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC7D,OAAO;IACT,CAAC;IAED,6EAA6E;IAC7E,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,6CAA6C;IAC7C,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,8BAA8B;IAC9B,GAAG,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC;IAC7C,qBAAqB;IACrB,GAAG,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IACjD,sCAAsC;IACtC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,GAAG,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;IACxD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC7B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChB,kDAAkD;IAClD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACb,GAAG,CAAC,IAAI,CACN,wFAAwF,MAAM,CAAC,OAAO,EAAE,CACzG,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;AAC9C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitignore-generator.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,WAAW,GACX,YAAY,GACZ,UAAU,GACV,SAAS,GACT,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;CACzC;
|
|
1
|
+
{"version":3,"file":"gitignore-generator.d.ts","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,GACpB,UAAU,GACV,WAAW,GACX,YAAY,GACZ,UAAU,GACV,SAAS,GACT,SAAS,GACT,UAAU,CAAC;AAEf;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;CACzC;AAmeD;;GAEG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,kBAAkB,CAAC,CAqE7B;AA+BD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,kBAAkB,EAC7B,OAAO,CAAC,EAAE;IACR,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,GACA,MAAM,CAsDR;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC9C,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA4CrE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IACR,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CAAC;IACT,SAAS,EAAE,kBAAkB,CAAC;IAC9B,MAAM,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACpE,CAAC,CA+BD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitignore-generator.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gitignore-generator.js","sourceRoot":"","sources":["../../../../../src/cli/helpers/init/gitignore-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook-router.d.ts","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/hook-router.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAa,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"hook-router.d.ts","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/hook-router.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAa,UAAU,EAAE,MAAM,YAAY,CAAC;AAgBxD;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,UAAU,CAAC,CAwFrB"}
|
|
@@ -14,6 +14,11 @@ import { HookLogger } from '../hook-logger.js';
|
|
|
14
14
|
const HANDLERS = {
|
|
15
15
|
'user-prompt-submit': () => import('./user-prompt-submit.js'),
|
|
16
16
|
'pre-tool-use': () => import('./pre-tool-use.js'),
|
|
17
|
+
// Auto-write a work-handoff at context exhaustion (0867, AC-US7-01).
|
|
18
|
+
'pre-compact': () => import('./pre-compact.js'),
|
|
19
|
+
// Gated Stop variant — fires only under an active auto session (AC-US7-02).
|
|
20
|
+
// Maps the module's `handleStop` export onto the router's `handle` contract.
|
|
21
|
+
'stop': () => import('./pre-compact.js').then((m) => ({ handle: m.handleStop })),
|
|
17
22
|
};
|
|
18
23
|
/**
|
|
19
24
|
* Route a hook event to the correct handler.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hook-router.js","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/hook-router.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,+EAA+E;AAC/E,MAAM,QAAQ,GAAyD;IACrE,oBAAoB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,yBAAyB,CAAC;IAC7D,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"hook-router.js","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/hook-router.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PreCompact (+ gated Stop) hook handler.
|
|
3
|
+
*
|
|
4
|
+
* Fires when Claude Code is about to compact the context window (PreCompact) —
|
|
5
|
+
* the last safe moment to capture in-flight work before it is summarized away.
|
|
6
|
+
* The handler auto-writes a work-handoff doc + `.diff` via the SAME
|
|
7
|
+
* {@link buildWorkHandoff} builder the `specweave handoff` CLI uses, so an
|
|
8
|
+
* auto-generated handoff is byte-compatible with a manual one (AC-US7-03).
|
|
9
|
+
*
|
|
10
|
+
* Design contract (AC-US7-01..04):
|
|
11
|
+
* - Cheap at context exhaustion: the agent passes only ~5 short string fields
|
|
12
|
+
* (reason, summary, next, gotcha, decision) via the hook stdin JSON; all the
|
|
13
|
+
* expensive deterministic assembly + the free diff dump happen in the builder.
|
|
14
|
+
* - Failure-tolerant: a handoff failure must NEVER break compaction. Everything
|
|
15
|
+
* is wrapped so the handler always returns the safe `{ continue: true }` shape.
|
|
16
|
+
* - The Stop variant (`exports.handleStop`) is GATED on an auto/handoff session
|
|
17
|
+
* flag (`.specweave/state/auto-mode.json`): PreCompact always writes; Stop only
|
|
18
|
+
* writes under an active auto session, so ordinary turn-ends stay quiet
|
|
19
|
+
* (AC-US7-02).
|
|
20
|
+
*
|
|
21
|
+
* @module core/hooks/handlers/pre-compact
|
|
22
|
+
*/
|
|
23
|
+
import type { HandlerFn } from './types.js';
|
|
24
|
+
/**
|
|
25
|
+
* PreCompact handler — always writes a handoff, never blocks compaction.
|
|
26
|
+
*/
|
|
27
|
+
export declare const handle: HandlerFn;
|
|
28
|
+
/**
|
|
29
|
+
* Stop handler — gated on an active auto/handoff session. Fires only when
|
|
30
|
+
* `auto-mode.json` is present so ordinary turn-ends are not noisy (AC-US7-02).
|
|
31
|
+
*/
|
|
32
|
+
export declare const handleStop: HandlerFn;
|
|
33
|
+
//# sourceMappingURL=pre-compact.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pre-compact.d.ts","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/pre-compact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAsC,MAAM,YAAY,CAAC;AA+EhF;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,SAMpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,SASxB,CAAC"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PreCompact (+ gated Stop) hook handler.
|
|
3
|
+
*
|
|
4
|
+
* Fires when Claude Code is about to compact the context window (PreCompact) —
|
|
5
|
+
* the last safe moment to capture in-flight work before it is summarized away.
|
|
6
|
+
* The handler auto-writes a work-handoff doc + `.diff` via the SAME
|
|
7
|
+
* {@link buildWorkHandoff} builder the `specweave handoff` CLI uses, so an
|
|
8
|
+
* auto-generated handoff is byte-compatible with a manual one (AC-US7-03).
|
|
9
|
+
*
|
|
10
|
+
* Design contract (AC-US7-01..04):
|
|
11
|
+
* - Cheap at context exhaustion: the agent passes only ~5 short string fields
|
|
12
|
+
* (reason, summary, next, gotcha, decision) via the hook stdin JSON; all the
|
|
13
|
+
* expensive deterministic assembly + the free diff dump happen in the builder.
|
|
14
|
+
* - Failure-tolerant: a handoff failure must NEVER break compaction. Everything
|
|
15
|
+
* is wrapped so the handler always returns the safe `{ continue: true }` shape.
|
|
16
|
+
* - The Stop variant (`exports.handleStop`) is GATED on an auto/handoff session
|
|
17
|
+
* flag (`.specweave/state/auto-mode.json`): PreCompact always writes; Stop only
|
|
18
|
+
* writes under an active auto session, so ordinary turn-ends stay quiet
|
|
19
|
+
* (AC-US7-02).
|
|
20
|
+
*
|
|
21
|
+
* @module core/hooks/handlers/pre-compact
|
|
22
|
+
*/
|
|
23
|
+
import * as fs from 'fs';
|
|
24
|
+
import * as path from 'path';
|
|
25
|
+
import { logHook } from './utils.js';
|
|
26
|
+
/** The compaction-safe response — never block. */
|
|
27
|
+
const SAFE = { continue: true };
|
|
28
|
+
/**
|
|
29
|
+
* Pull the ~5 short free-text fields the agent may have stated, off the hook
|
|
30
|
+
* stdin JSON. Tolerant of both snake_case and camelCase keys and of total
|
|
31
|
+
* absence (the common case at a real token crash — all may be empty).
|
|
32
|
+
*/
|
|
33
|
+
function readShortFields(input) {
|
|
34
|
+
const get = (...keys) => {
|
|
35
|
+
for (const k of keys) {
|
|
36
|
+
const v = input[k];
|
|
37
|
+
if (typeof v === 'string' && v.trim())
|
|
38
|
+
return v;
|
|
39
|
+
}
|
|
40
|
+
return undefined;
|
|
41
|
+
};
|
|
42
|
+
const decisionRaw = input.decision ?? input.decisions;
|
|
43
|
+
const decisions = Array.isArray(decisionRaw)
|
|
44
|
+
? decisionRaw.filter((d) => typeof d === 'string' && d.trim().length > 0)
|
|
45
|
+
: typeof decisionRaw === 'string' && decisionRaw.trim()
|
|
46
|
+
? [decisionRaw]
|
|
47
|
+
: undefined;
|
|
48
|
+
return {
|
|
49
|
+
reason: get('reason'),
|
|
50
|
+
summary: get('summary'),
|
|
51
|
+
next: get('next', 'next_step', 'nextStep'),
|
|
52
|
+
gotcha: get('gotcha'),
|
|
53
|
+
decisions,
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/** Is an auto/handoff session currently active? (Stop gating, AC-US7-02.) */
|
|
57
|
+
function isAutoSessionActive(context) {
|
|
58
|
+
try {
|
|
59
|
+
return fs.existsSync(path.join(context.stateDir, 'auto-mode.json'));
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Write an auto-handoff. Wrapped so any failure is swallowed — compaction /
|
|
67
|
+
* turn-end must proceed regardless.
|
|
68
|
+
*/
|
|
69
|
+
async function writeAutoHandoff(context, defaultReason, input) {
|
|
70
|
+
try {
|
|
71
|
+
// Lazy import so the handler stays cheap and the builder's deps only load
|
|
72
|
+
// when a handoff is actually written.
|
|
73
|
+
const { buildWorkHandoff } = await import('../../session/work-handoff.js');
|
|
74
|
+
const fields = readShortFields(input);
|
|
75
|
+
const result = await buildWorkHandoff(context.projectRoot, {
|
|
76
|
+
// Honor an agent-supplied reason (AC-US7-04); fall back to the
|
|
77
|
+
// hook-specific default so the CLI and hook paths stay consistent.
|
|
78
|
+
reason: fields.reason ?? defaultReason,
|
|
79
|
+
summary: fields.summary,
|
|
80
|
+
next: fields.next,
|
|
81
|
+
gotcha: fields.gotcha,
|
|
82
|
+
decisions: fields.decisions,
|
|
83
|
+
});
|
|
84
|
+
logHook(context, 'pre-compact', `auto-handoff written: ${result.docPath}`);
|
|
85
|
+
}
|
|
86
|
+
catch (err) {
|
|
87
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
88
|
+
logHook(context, 'pre-compact', `[ERROR] auto-handoff failed (ignored): ${msg}`);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* PreCompact handler — always writes a handoff, never blocks compaction.
|
|
93
|
+
*/
|
|
94
|
+
export const handle = async (input, context) => {
|
|
95
|
+
await writeAutoHandoff(context, 'auto: pre-compact', input);
|
|
96
|
+
return SAFE;
|
|
97
|
+
};
|
|
98
|
+
/**
|
|
99
|
+
* Stop handler — gated on an active auto/handoff session. Fires only when
|
|
100
|
+
* `auto-mode.json` is present so ordinary turn-ends are not noisy (AC-US7-02).
|
|
101
|
+
*/
|
|
102
|
+
export const handleStop = async (input, context) => {
|
|
103
|
+
if (!isAutoSessionActive(context)) {
|
|
104
|
+
return SAFE;
|
|
105
|
+
}
|
|
106
|
+
await writeAutoHandoff(context, 'auto: stop', input);
|
|
107
|
+
return SAFE;
|
|
108
|
+
};
|
|
109
|
+
//# sourceMappingURL=pre-compact.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pre-compact.js","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/pre-compact.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,kDAAkD;AAClD,MAAM,IAAI,GAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAE5C;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAAgB;IAOvC,MAAM,GAAG,GAAG,CAAC,GAAG,IAAc,EAAsB,EAAE;QACpD,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE;gBAAE,OAAO,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC;IACtD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;QAC1C,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QACtF,CAAC,CAAC,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE;YACrD,CAAC,CAAC,CAAC,WAAW,CAAC;YACf,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC;QACrB,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC;QACvB,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC;QAC1C,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC;QACrB,SAAS;KACV,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,SAAS,mBAAmB,CAAC,OAAoB;IAC/C,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACtE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,gBAAgB,CAC7B,OAAoB,EACpB,aAAqB,EACrB,KAAgB;IAEhB,IAAI,CAAC;QACH,0EAA0E;QAC1E,sCAAsC;QACtC,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;QAC3E,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,WAAW,EAAE;YACzD,+DAA+D;YAC/D,mEAAmE;YACnE,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,aAAa;YACtC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,SAAS,EAAE,MAAM,CAAC,SAAS;SAC5B,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,yBAAyB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,0CAA0C,GAAG,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAc,KAAK,EACpC,KAAgB,EAChB,OAAoB,EACC,EAAE;IACvB,MAAM,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,EAAE,KAAK,CAAC,CAAC;IAC5D,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAc,KAAK,EACxC,KAAgB,EAChB,OAAoB,EACC,EAAE;IACvB,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
|
|
@@ -55,7 +55,7 @@ export interface HookContext {
|
|
|
55
55
|
/** Handler function signature — every handler exports a `handle` matching this */
|
|
56
56
|
export type HandlerFn = (input: HookInput, context: HookContext) => Promise<HookResult>;
|
|
57
57
|
/** Event types supported by the hook router */
|
|
58
|
-
export type HookEventType = 'user-prompt-submit' | 'pre-tool-use';
|
|
58
|
+
export type HookEventType = 'user-prompt-submit' | 'pre-tool-use' | 'pre-compact' | 'stop';
|
|
59
59
|
/** Map of event types to their safe fallback responses */
|
|
60
60
|
export declare const SAFE_DEFAULTS: Record<string, HookResult>;
|
|
61
61
|
/** Get safe default response for an event type */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,oDAAoD;AACpD,MAAM,WAAW,SAAS;IACxB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,+CAA+C;AAC/C,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IACzC,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0BAA0B;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,kBAAkB,CAAC,EAAE;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,sCAAsC;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,8DAA8D;AAC9D,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,CACtB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,WAAW,KACjB,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB,+CAA+C;AAC/C,MAAM,MAAM,aAAa,GACrB,oBAAoB,GACpB,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,oDAAoD;AACpD,MAAM,WAAW,SAAS;IACxB,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,+CAA+C;AAC/C,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IACzC,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0BAA0B;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,kBAAkB,CAAC,EAAE;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IACF,sCAAsC;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,8DAA8D;AAC9D,MAAM,WAAW,WAAW;IAC1B,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,kFAAkF;AAClF,MAAM,MAAM,SAAS,GAAG,CACtB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,WAAW,KACjB,OAAO,CAAC,UAAU,CAAC,CAAC;AAEzB,+CAA+C;AAC/C,MAAM,MAAM,aAAa,GACrB,oBAAoB,GACpB,cAAc,GACd,aAAa,GACb,MAAM,CAAC;AAEX,0DAA0D;AAC1D,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAMpD,CAAC;AAEF,kDAAkD;AAClD,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,CAE5D"}
|
|
@@ -12,6 +12,9 @@
|
|
|
12
12
|
export const SAFE_DEFAULTS = {
|
|
13
13
|
'user-prompt-submit': { decision: 'approve' },
|
|
14
14
|
'pre-tool-use': { continue: true },
|
|
15
|
+
// Compaction / turn-end must never be blocked by a handoff failure.
|
|
16
|
+
'pre-compact': { continue: true },
|
|
17
|
+
'stop': { continue: true },
|
|
15
18
|
};
|
|
16
19
|
/** Get safe default response for an event type */
|
|
17
20
|
export function getSafeDefault(eventType) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/core/hooks/handlers/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AA8DH,0DAA0D;AAC1D,MAAM,CAAC,MAAM,aAAa,GAA+B;IACvD,oBAAoB,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE;IAC7C,cAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IAClC,oEAAoE;IACpE,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;IACjC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;CAC3B,CAAC;AAEF,kDAAkD;AAClD,MAAM,UAAU,cAAc,CAAC,SAAiB;IAC9C,OAAO,aAAa,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACxD,CAAC"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Handoff Doc Format — single source of truth
|
|
3
|
+
*
|
|
4
|
+
* Renders BOTH the durable handoff document and the copy-paste resume prompt
|
|
5
|
+
* from one {@link HandoffDocInput}. The CLI command, the PreCompact hook
|
|
6
|
+
* handler, and the vitest parity test all render through this module, so the
|
|
7
|
+
* doc format and paste-prompt cannot drift between code paths. The vskill
|
|
8
|
+
* self-contained skill inlines a byte-compatible template that references the
|
|
9
|
+
* same canonical section order + footer marker exported here.
|
|
10
|
+
*
|
|
11
|
+
* Design rules:
|
|
12
|
+
* - This module is PURE rendering. It does no IO, no git, no workspace
|
|
13
|
+
* detection — callers pass already-captured + already-scrubbed data in.
|
|
14
|
+
* - The absolute doc path, the `.diff` path, and the per-tool resume matrix are
|
|
15
|
+
* inputs/constants so the renderer is deterministic and testable.
|
|
16
|
+
* - The `Doc format v1` footer marker (DOC_FORMAT_MARKER) is the ownership
|
|
17
|
+
* sentinel that lets the builder know a file is a prior handoff it may
|
|
18
|
+
* overwrite, and the version handle for future format migrations.
|
|
19
|
+
*
|
|
20
|
+
* Part of increment 0867: Cross-Tool Work Handoff
|
|
21
|
+
* (AC-US1-02, AC-US2-04, AC-US5-01..04, AC-US6-02, AC-US6-05).
|
|
22
|
+
*
|
|
23
|
+
* @module core/session/handoff-doc-format
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* Footer marker stamped at the bottom of every handoff doc.
|
|
27
|
+
*
|
|
28
|
+
* Doubles as the ownership sentinel: a root `./HANDOFF.md` containing this
|
|
29
|
+
* string is treated as a prior handoff (safe to overwrite); one lacking it is a
|
|
30
|
+
* foreign file the builder must not clobber.
|
|
31
|
+
*/
|
|
32
|
+
export declare const DOC_FORMAT_MARKER = "Doc format v1";
|
|
33
|
+
/**
|
|
34
|
+
* Delimiters wrapping the self-contained body in `--inline` paste-prompts.
|
|
35
|
+
* A resuming agent reads everything between these markers as the handoff.
|
|
36
|
+
*/
|
|
37
|
+
export declare const INLINE_BEGIN_MARKER = "BEGIN HANDOFF";
|
|
38
|
+
export declare const INLINE_END_MARKER = "END HANDOFF";
|
|
39
|
+
/**
|
|
40
|
+
* Canonical section headers, in render order. Exported so the vskill inlined
|
|
41
|
+
* template and the format-parity test (T-017) reference ONE source and fail at
|
|
42
|
+
* build time if either side reorders or renames a section.
|
|
43
|
+
*/
|
|
44
|
+
export declare const HANDOFF_SECTION_ORDER: readonly string[];
|
|
45
|
+
/**
|
|
46
|
+
* Per-tool resume guidance. The `findSession` + `resumeCmd` strings are
|
|
47
|
+
* VERIFIED against the live CLIs and pinned by cross-tool-commands.test.ts
|
|
48
|
+
* (T-016) so the matrix cannot silently drift when a tool updates.
|
|
49
|
+
*/
|
|
50
|
+
export interface ToolResumeEntry {
|
|
51
|
+
/** Display name. */
|
|
52
|
+
tool: string;
|
|
53
|
+
/** How to locate the source session on disk / in the tool. */
|
|
54
|
+
findSession: string;
|
|
55
|
+
/** Native resume command(s). */
|
|
56
|
+
resumeCmd: string;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* The cross-tool resume matrix (AC-US5-01, AC-US5-02).
|
|
60
|
+
*
|
|
61
|
+
* NOTE on Claude: session files live under
|
|
62
|
+
* `~/.claude/projects/<munged-cwd>/<uuid>.jsonl`, where the cwd is munged by
|
|
63
|
+
* replacing EVERY non-alphanumeric char with `-` and NOT collapsing runs — so a
|
|
64
|
+
* leading slash and adjacent separators each become their own dash. Example:
|
|
65
|
+
* /Users/.../specweave-umb/.claude-worktrees/x
|
|
66
|
+
* → -Users-...-specweave-umb--claude-worktrees-x
|
|
67
|
+
* (the `/.` between `umb` and `claude-worktrees` yields a double dash).
|
|
68
|
+
*/
|
|
69
|
+
export declare const CLAUDE_MUNGE_EXAMPLE: string;
|
|
70
|
+
export declare const TOOL_RESUME_MATRIX: readonly ToolResumeEntry[];
|
|
71
|
+
/**
|
|
72
|
+
* Increment-derived facts (present only on the SpecWeave high-fidelity path).
|
|
73
|
+
*/
|
|
74
|
+
export interface HandoffIncrementInfo {
|
|
75
|
+
id: string;
|
|
76
|
+
status: string;
|
|
77
|
+
/** Title from spec.md frontmatter, if available. */
|
|
78
|
+
title?: string;
|
|
79
|
+
/** The current (first incomplete / in-progress) task line, if any. */
|
|
80
|
+
currentTask?: string;
|
|
81
|
+
/** The next pending task line after the current one, if any. */
|
|
82
|
+
nextTask?: string;
|
|
83
|
+
doneTasks: number;
|
|
84
|
+
totalTasks: number;
|
|
85
|
+
taskPercentage: number;
|
|
86
|
+
doneAcs: number;
|
|
87
|
+
totalAcs: number;
|
|
88
|
+
/** Human-readable AC/task drift summary lines from acSyncEvents. */
|
|
89
|
+
acSyncEvents: string[];
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Ambient project rules merged from config.json.
|
|
93
|
+
*/
|
|
94
|
+
export interface HandoffAmbientRules {
|
|
95
|
+
testMode?: string;
|
|
96
|
+
coverageTarget?: number;
|
|
97
|
+
wipLimit?: number;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Git facts for the doc body (mirrors GitState minus the diff file contents).
|
|
101
|
+
*/
|
|
102
|
+
export interface HandoffGitInfo {
|
|
103
|
+
isGitRepo: boolean;
|
|
104
|
+
branch: string;
|
|
105
|
+
shortSha: string;
|
|
106
|
+
statusPorcelain: string;
|
|
107
|
+
diffStat: string;
|
|
108
|
+
hasUncommittedChanges: boolean;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* The complete, already-scrubbed input to the renderer.
|
|
112
|
+
*/
|
|
113
|
+
export interface HandoffDocInput {
|
|
114
|
+
/** Absolute path the doc itself will be written to (printed first by CLI). */
|
|
115
|
+
docPath: string;
|
|
116
|
+
/** Absolute path of the sibling full-diff file. */
|
|
117
|
+
diffPath: string;
|
|
118
|
+
/** Repo / workspace root. */
|
|
119
|
+
repoRoot: string;
|
|
120
|
+
/** ISO timestamp of generation. */
|
|
121
|
+
generatedAt: string;
|
|
122
|
+
/** Whether this is the SpecWeave high-fidelity path. */
|
|
123
|
+
isSpecWeave: boolean;
|
|
124
|
+
/** Free-text "why I'm handing off" (e.g. "out of tokens"). */
|
|
125
|
+
reason?: string;
|
|
126
|
+
/** Free-text summary of where things stand. */
|
|
127
|
+
summary?: string;
|
|
128
|
+
/** Free-text exact next step. */
|
|
129
|
+
next?: string;
|
|
130
|
+
/** Free-text gotcha / warning for the next agent. */
|
|
131
|
+
gotcha?: string;
|
|
132
|
+
/** Key decisions (from plan.md + agent-supplied, already merged). */
|
|
133
|
+
decisions: string[];
|
|
134
|
+
/** Increment facts (SpecWeave path only). */
|
|
135
|
+
increment?: HandoffIncrementInfo;
|
|
136
|
+
/** Ambient rules from config.json. */
|
|
137
|
+
ambient?: HandoffAmbientRules;
|
|
138
|
+
/** Git facts. */
|
|
139
|
+
git: HandoffGitInfo;
|
|
140
|
+
/** Per-pattern redaction counts from the secret scrub. */
|
|
141
|
+
redactionCounts: Record<string, number>;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Render the per-tool "find your source session" block.
|
|
145
|
+
*/
|
|
146
|
+
export declare function renderResumeMatrix(): string;
|
|
147
|
+
/**
|
|
148
|
+
* Render the full handoff document body (markdown).
|
|
149
|
+
*
|
|
150
|
+
* Section order is locked to {@link HANDOFF_SECTION_ORDER}; the `Doc format v1`
|
|
151
|
+
* footer marker is always last.
|
|
152
|
+
*/
|
|
153
|
+
export declare function renderHandoffDoc(input: HandoffDocInput): string;
|
|
154
|
+
/**
|
|
155
|
+
* Render the copy-paste resume prompt.
|
|
156
|
+
*
|
|
157
|
+
* Default (file-reachable) mode points the next agent at the doc path. The
|
|
158
|
+
* `inline` mode embeds the FULL doc body between BEGIN/END markers for
|
|
159
|
+
* cross-machine resume where the file is unreachable (AC-US5-04).
|
|
160
|
+
*/
|
|
161
|
+
export declare function renderPastePrompt(input: HandoffDocInput, opts?: {
|
|
162
|
+
inline?: boolean;
|
|
163
|
+
}): string;
|
|
164
|
+
//# sourceMappingURL=handoff-doc-format.d.ts.map
|
|
@@ -0,0 +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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"}
|