@manehorizons/cadence-core 1.4.0 → 1.5.0
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/checks/boundary.d.ts +9 -0
- package/dist/checks/boundary.d.ts.map +1 -1
- package/dist/checks/boundary.js +10 -2
- package/dist/checks/boundary.js.map +1 -1
- package/dist/cli/commands/handoff.d.ts +3 -0
- package/dist/cli/commands/handoff.d.ts.map +1 -0
- package/dist/cli/commands/handoff.js +39 -0
- package/dist/cli/commands/handoff.js.map +1 -0
- package/dist/cli/commands/resume.d.ts +3 -0
- package/dist/cli/commands/resume.d.ts.map +1 -0
- package/dist/cli/commands/resume.js +30 -0
- package/dist/cli/commands/resume.js.map +1 -0
- package/dist/cli/commands/settle.d.ts.map +1 -1
- package/dist/cli/commands/settle.js +1 -0
- package/dist/cli/commands/settle.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/register.d.ts.map +1 -1
- package/dist/cli/register.js +4 -0
- package/dist/cli/register.js.map +1 -1
- package/dist/handoff/git-facts.d.ts +4 -0
- package/dist/handoff/git-facts.d.ts.map +1 -0
- package/dist/handoff/git-facts.js +43 -0
- package/dist/handoff/git-facts.js.map +1 -0
- package/dist/handoff/locate.d.ts +10 -0
- package/dist/handoff/locate.d.ts.map +1 -0
- package/dist/handoff/locate.js +60 -0
- package/dist/handoff/locate.js.map +1 -0
- package/dist/handoff/render-session.d.ts +10 -0
- package/dist/handoff/render-session.d.ts.map +1 -0
- package/dist/handoff/render-session.js +88 -0
- package/dist/handoff/render-session.js.map +1 -0
- package/dist/handoff/run-handoff.d.ts +15 -0
- package/dist/handoff/run-handoff.d.ts.map +1 -0
- package/dist/handoff/run-handoff.js +51 -0
- package/dist/handoff/run-handoff.js.map +1 -0
- package/dist/handoff/run-resume.d.ts +3 -0
- package/dist/handoff/run-resume.d.ts.map +1 -0
- package/dist/handoff/run-resume.js +31 -0
- package/dist/handoff/run-resume.js.map +1 -0
- package/dist/hooks/handlers.d.ts.map +1 -1
- package/dist/hooks/handlers.js +1 -0
- package/dist/hooks/handlers.js.map +1 -1
- package/dist/notify/collect.d.ts +7 -0
- package/dist/notify/collect.d.ts.map +1 -1
- package/dist/notify/collect.js +1 -0
- package/dist/notify/collect.js.map +1 -1
- package/package.json +2 -2
|
@@ -20,6 +20,15 @@ export interface BoundaryCheckInput {
|
|
|
20
20
|
* `{ source: 'hook.preToolEdit' }`; settle supplies none).
|
|
21
21
|
*/
|
|
22
22
|
extraContext?: Record<string, unknown>;
|
|
23
|
+
/**
|
|
24
|
+
* Phase 47 — repo root for path normalization. When set, declared + touched
|
|
25
|
+
* paths are relativized to this root (and `\\`→`/`) before the boundary
|
|
26
|
+
* comparison, so an ABSOLUTE touched path (recorded by the PreToolUse hook)
|
|
27
|
+
* matches a RELATIVE DRAFT `files:` declaration. Comparison-only: the
|
|
28
|
+
* ORIGINAL touched path is still what gets emitted. Omit to keep exact-string
|
|
29
|
+
* matching (back-compat — settle/hook supply it; unit callers may not).
|
|
30
|
+
*/
|
|
31
|
+
root?: string;
|
|
23
32
|
}
|
|
24
33
|
/**
|
|
25
34
|
* Phase 43.1 — the single home for files-outside-boundary detection. One rule
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../src/checks/boundary.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"boundary.d.ts","sourceRoot":"","sources":["../../src/checks/boundary.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAEhE,iEAAiE;AACjE,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,KAAG,MACU,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChC;;;;OAIG;IACH,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC/B;;;OAGG;IACH,KAAK,EAAE,MAAM,MAAM,CAAC;IACpB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,GAAG,YAAY,EAAE,CAqB1E"}
|
package/dist/checks/boundary.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isAbsolute, relative } from 'node:path';
|
|
1
2
|
/** The single line both emission points use for a stray file. */
|
|
2
3
|
export const boundaryMessage = (file) => `${file} touched but not declared in any task's files:`;
|
|
3
4
|
/**
|
|
@@ -11,10 +12,17 @@ export const boundaryMessage = (file) => `${file} touched but not declared in an
|
|
|
11
12
|
* skill-audit (39.6), OUTSIDE the Phase 44.1 registry.
|
|
12
13
|
*/
|
|
13
14
|
export function runBoundaryCheck(input) {
|
|
14
|
-
const
|
|
15
|
+
const { root } = input;
|
|
16
|
+
// Normalize for COMPARISON only — relativize absolute paths to `root`, unify
|
|
17
|
+
// separators. The original (untransformed) path is what the event carries.
|
|
18
|
+
const norm = (p) => {
|
|
19
|
+
const rel = root && isAbsolute(p) ? relative(root, p) : p;
|
|
20
|
+
return rel.split('\\').join('/');
|
|
21
|
+
};
|
|
22
|
+
const declared = new Set([...input.declaredFiles].map(norm));
|
|
15
23
|
const events = [];
|
|
16
24
|
for (const file of input.touchedFiles) {
|
|
17
|
-
if (declared.has(file))
|
|
25
|
+
if (declared.has(norm(file)))
|
|
18
26
|
continue;
|
|
19
27
|
events.push({
|
|
20
28
|
type: 'files-outside-boundary',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boundary.js","sourceRoot":"","sources":["../../src/checks/boundary.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"boundary.js","sourceRoot":"","sources":["../../src/checks/boundary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAGjD,iEAAiE;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAU,EAAE,CACtD,GAAG,IAAI,gDAAgD,CAAC;AAgC1D;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAyB;IACxD,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IACvB,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE;QACjC,MAAM,GAAG,GAAG,IAAI,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;QACtC,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAAE,SAAS;QACvC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,wBAAwB;YAC9B,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC;YAC9B,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,YAAY,EAAE;YACxC,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE;SAClB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handoff.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/handoff.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsC7D"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { runHandoff } from '../../handoff/run-handoff.js';
|
|
2
|
+
export function registerHandoffCommand(program) {
|
|
3
|
+
program
|
|
4
|
+
.command('handoff [label]')
|
|
5
|
+
.description('Scaffold a SESSION handoff doc in .cadence/handoff/ with machine facts pre-filled')
|
|
6
|
+
.option('--label <s>', 'context label (alternative to the positional arg)')
|
|
7
|
+
.option('--force', 'overwrite an existing same-day SESSION doc')
|
|
8
|
+
.option('--no-stamp', 'do not write state.session.lastHandoff (no state.json change)')
|
|
9
|
+
.option('--no-git', 'skip read-only git facts')
|
|
10
|
+
.option('--json', 'emit machine-readable JSON instead of a summary')
|
|
11
|
+
.action(async (labelArg, opts) => {
|
|
12
|
+
// commander negates --no-stamp/--no-git to stamp:false / git:false.
|
|
13
|
+
const handoffOpts = {
|
|
14
|
+
force: opts.force ?? false,
|
|
15
|
+
noStamp: opts.stamp === false,
|
|
16
|
+
noGit: opts.git === false,
|
|
17
|
+
};
|
|
18
|
+
const label = opts.label ?? labelArg;
|
|
19
|
+
if (label !== undefined)
|
|
20
|
+
handoffOpts.label = label;
|
|
21
|
+
try {
|
|
22
|
+
const res = await runHandoff(process.cwd(), handoffOpts);
|
|
23
|
+
if (opts.json) {
|
|
24
|
+
process.stdout.write(JSON.stringify(res) + '\n');
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
const stamp = res.stamped ? ' · stamped lastHandoff' : '';
|
|
28
|
+
const git = res.gitAvailable ? '' : ' · git unavailable';
|
|
29
|
+
process.stdout.write(`handoff: wrote ${res.path}${stamp}${git}\n`);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
34
|
+
process.stderr.write(`${msg}\n`);
|
|
35
|
+
process.exitCode = /already exists/.test(msg) ? 2 : 1;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=handoff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../../src/cli/commands/handoff.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAuB,MAAM,8BAA8B,CAAC;AAE/E,MAAM,UAAU,sBAAsB,CAAC,OAAgB;IACrD,OAAO;SACJ,OAAO,CAAC,iBAAiB,CAAC;SAC1B,WAAW,CAAC,mFAAmF,CAAC;SAChG,MAAM,CAAC,aAAa,EAAE,mDAAmD,CAAC;SAC1E,MAAM,CAAC,SAAS,EAAE,4CAA4C,CAAC;SAC/D,MAAM,CAAC,YAAY,EAAE,+DAA+D,CAAC;SACrF,MAAM,CAAC,UAAU,EAAE,0BAA0B,CAAC;SAC9C,MAAM,CAAC,QAAQ,EAAE,iDAAiD,CAAC;SACnE,MAAM,CACL,KAAK,EACH,QAA4B,EAC5B,IAAyF,EACzF,EAAE;QACF,oEAAoE;QACpE,MAAM,WAAW,GAAmB;YAClC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK;YAC1B,OAAO,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK;YAC7B,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,KAAK;SAC1B,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS;YAAE,WAAW,CAAC,KAAK,GAAG,KAAK,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;YACzD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACN,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1D,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC;gBACzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,GAAG,CAAC,IAAI,GAAG,KAAK,GAAG,GAAG,IAAI,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;YACjC,OAAO,CAAC,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CACF,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resume.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/resume.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA4B5D"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { runResume } from '../../handoff/run-resume.js';
|
|
2
|
+
export function registerResumeCommand(program) {
|
|
3
|
+
program
|
|
4
|
+
.command('resume')
|
|
5
|
+
.description('Replay the freshest .cadence/handoff/ SESSION doc + live context (read-only)')
|
|
6
|
+
.option('--json', 'emit machine-readable JSON instead of rendered text')
|
|
7
|
+
.action(async (opts) => {
|
|
8
|
+
try {
|
|
9
|
+
const res = await runResume(process.cwd());
|
|
10
|
+
if (opts.json) {
|
|
11
|
+
process.stdout.write(JSON.stringify(res) + '\n');
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
if (!res.found) {
|
|
15
|
+
process.stdout.write('resume: no handoff found — run `cadence handoff` to create one.\n');
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
if (res.drift) {
|
|
19
|
+
process.stdout.write(`⚠ handoff written at ${res.drift.docLoopPosition}; live state now ${res.drift.liveLoopPosition}\n\n`);
|
|
20
|
+
}
|
|
21
|
+
process.stdout.write(`--- narrative from ${res.handoffPath} ---\n\n`);
|
|
22
|
+
process.stdout.write(res.doc.endsWith('\n') ? res.doc : res.doc + '\n');
|
|
23
|
+
}
|
|
24
|
+
catch (err) {
|
|
25
|
+
process.stderr.write(`resume failed: ${err instanceof Error ? err.message : String(err)}\n`);
|
|
26
|
+
process.exitCode = 1;
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=resume.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resume.js","sourceRoot":"","sources":["../../../src/cli/commands/resume.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAExD,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,8EAA8E,CAAC;SAC3F,MAAM,CAAC,QAAQ,EAAE,qDAAqD,CAAC;SACvE,MAAM,CAAC,KAAK,EAAE,IAAwB,EAAE,EAAE;QACzC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAC3C,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;gBACjD,OAAO;YACT,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;gBAC1F,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,wBAAwB,GAAG,CAAC,KAAK,CAAC,eAAe,oBAAoB,GAAG,CAAC,KAAK,CAAC,gBAAgB,MAAM,CACtG,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,GAAG,CAAC,WAAW,UAAU,CAAC,CAAC;YACtE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;QAC1E,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC7F,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settle.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/settle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6CzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"settle.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/settle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6CzC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0d5D"}
|
|
@@ -351,6 +351,7 @@ export function registerSettleCommand(program) {
|
|
|
351
351
|
progress,
|
|
352
352
|
coverageBypassed,
|
|
353
353
|
force: opts.force === true,
|
|
354
|
+
root: cwd,
|
|
354
355
|
...(deepVerify ? { deepVerify } : {}),
|
|
355
356
|
...(interactiveVerify ? { interactiveVerify } : {}),
|
|
356
357
|
...(verifierFailure ? { verifierFailure } : {}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settle.js","sourceRoot":"","sources":["../../../src/cli/commands/settle.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"settle.js","sourceRoot":"","sources":["../../../src/cli/commands/settle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAqB,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAMjE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAC5F,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AAErF,SAAS,UAAU,CAAC,GAAW;IAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,EAAE,CAAC,CAAC;IAC7D,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,KAAK,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAEpE,GAAG;SACA,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,+CAA+C,CAAC;SAC5D,MAAM,CAAC,gBAAgB,EAAE,8CAA8C,CAAC;SACxE,MAAM,CAAC,QAAQ,EAAE,kEAAkE,CAAC;SACpF,MAAM,CAAC,SAAS,EAAE,wDAAwD,CAAC;SAC3E,MAAM,CACL,0BAA0B,EAC1B,yEAAyE,CAC1E;SACA,MAAM,CACL,QAAQ,EACR,oFAAoF,CACrF;SACA,MAAM,CACL,0BAA0B,EAC1B,mGAAmG,CACpG;SACA,MAAM,CACL,eAAe,EACf,0EAA0E,CAC3E;SACA,MAAM,CACL,kBAAkB,EAClB,iFAAiF,CAClF;SACA,MAAM,CACL,sBAAsB,EACtB,0EAA0E,CAC3E;SACA,MAAM,CACL,qBAAqB,EACrB,8EAA8E,CAC/E;SACA,MAAM,CACL,oBAAoB,EACpB,8FAA8F,CAC/F;SACA,MAAM,CACL,uBAAuB,EACvB,uFAAuF,CACxF;SACA,MAAM,CACL,6BAA6B,EAC7B,oHAAoH,CACrH;SACA,MAAM,CACL,gCAAgC,EAChC,0GAA0G,CAC3G;SACA,MAAM,CACL,0BAA0B,EAC1B,yHAAyH,CAC1H;SACA,MAAM,CACL,KAAK,EAAE,IAeN,EAAE,EAAE;QACL,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,IAAI,kBAAkB,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,CAAC;YACxC,IAAI,KAAK,CAAC,YAAY,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;gBAC/E,MAAM,IAAI,kBAAkB,CAC1B,6DAA6D,EAC7D,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,CAClD,CAAC;YACJ,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,WAAW,WAAW,CAAC,CAAC;YACnG,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;YAE9D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,WAAW,gBAAgB,CAAC,CAAC;YACvG,MAAM,QAAQ,GAAiB,UAAU,CAAC,QAAQ,CAAC;gBACjD,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAkB;gBAChE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAE9C,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACjD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAEvD,iEAAiE;YACjE,mEAAmE;YACnE,uDAAuD;YACvD,IAAI,aAAa,GAAkD,IAAI,CAAC;YACxE,IAAI,CAAC;gBACH,aAAa,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;YACD,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;YAE9D,oEAAoE;YACpE,uEAAuE;YACvE,0DAA0D;YAC1D,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,+GAA+G,CAChH,CAAC;gBACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,IAAI,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,gFAAgF,CACjF,CAAC;YACJ,CAAC;YAED,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAC7C,CAAC;YACF,IAAI,YAA+D,CAAC;YACpE,IAAI,cAAkD,CAAC;YACvD,uEAAuE;YACvE,sEAAsE;YACtE,uEAAuE;YACvE,kEAAkE;YAClE,kEAAkE;YAClE,IAAI,gBAA+D,CAAC;YACpE,IAAI,sBAA+E,CAAC;YACpF,IAAI,yBAAqF,CAAC;YAC1F,IAAI,QAA4B,CAAC;YACjC,MAAM,qBAAqB,GAAG,IAAI,CAChC,GAAG,EACH,iBAAiB,EACjB,KAAK,CAAC,WAAW,EACjB,GAAG,KAAK,CAAC,WAAW,mBAAmB,CACxC,CAAC;YACF,MAAM,GAAG,GAAkB;gBACzB,GAAG;gBACH,KAAK;gBACL,KAAK;gBACL,QAAQ;gBACR,MAAM,EAAE,aAAa;gBACrB,OAAO;gBACP,IAAI,EAAE;oBACJ,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1D,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvD,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvD,GAAG,CAAC,IAAI,CAAC,oBAAoB,KAAK,SAAS;wBACzC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAAE;wBACrD,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,IAAI,CAAC,oBAAoB,KAAK,SAAS;wBACzC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAAE;wBACrD,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,IAAI,CAAC,eAAe,KAAK,SAAS;wBACpC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE;wBAC3C,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS;wBACnC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE;wBACzC,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,IAAI,CAAC,iBAAiB,KAAK,SAAS;wBACtC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE;wBAC/C,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS;wBAChC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;wBACnC,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,IAAI,CAAC,sBAAsB,KAAK,SAAS;wBAC3C,CAAC,CAAC,EAAE,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,EAAE;wBACzD,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,IAAI,CAAC,yBAAyB,KAAK,SAAS;wBAC9C,CAAC,CAAC,EAAE,yBAAyB,EAAE,IAAI,CAAC,yBAAyB,EAAE;wBAC/D,CAAC,CAAC,EAAE,CAAC;oBACP,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,SAAS;wBACxC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAAE;wBACnD,CAAC,CAAC,EAAE,CAAC;iBACR;gBACD,WAAW;gBACX,YAAY;gBACZ,QAAQ,EAAE,GAAG,EAAE;oBACb,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,MAAM,KAAK,GAAG,aAAa,EAAE,YAAY,EAAE,SAAS,CAAC;wBACrD,YAAY,GAAG,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC/D,CAAC;oBACD,OAAO,YAAY,CAAC;gBACtB,CAAC;gBACD,YAAY,EAAE,GAAG,EAAE;oBACjB,IAAI,CAAC,cAAc,EAAE,CAAC;wBACpB,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC;6BAC7B,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;6BAC9B,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;oBACvB,CAAC;oBACD,OAAO,cAAc,CAAC;gBACxB,CAAC;gBACD,IAAI,EAAE,GAAG,EAAE;oBACT,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,QAAQ,GAAG,wBAAwB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;oBACzD,CAAC;oBACD,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE;wBACJ,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;4BAChB,IAAI,CAAC,gBAAgB,EAAE,CAAC;gCACtB,gBAAgB,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;4BACnD,CAAC;4BACD,OAAO,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACxC,CAAC;qBACF;oBACD,UAAU,EAAE;wBACV,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;4BAChB,IAAI,CAAC,sBAAsB,EAAE,CAAC;gCAC5B,sBAAsB,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;4BACnE,CAAC;4BACD,OAAO,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBAC9C,CAAC;qBACF;oBACD,aAAa,EAAE;wBACb,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;4BAChB,IAAI,CAAC,yBAAyB,EAAE,CAAC;gCAC/B,yBAAyB,GAAG,2BAA2B,CAAC,aAAa,CAAC,CAAC;4BACzE,CAAC;4BACD,OAAO,yBAAyB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACjD,CAAC;qBACF;iBACF;gBACD,IAAI,EAAE;oBACJ,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;wBAC1B,KAAK,MAAM,CAAC;oBACd,CAAC;oBACD,cAAc,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CACjC,kBAAkB,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC;oBACnE,qBAAqB,EAAE,CAAC,IAAI,EAAE,EAAE,CAC9B,yBAAyB,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC;oBAChE,cAAc,EAAE,CAAC,OAAO,EAAE,EAAE,CAC1B,kBAAkB,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;iBAC7D;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,KAAK,IAAI,EAAE;wBACf,MAAM,OAAO,GAAG,aAAa,EAAE,YAAY,EAAE,WAAW,CAAC;wBACzD,IAAI,CAAC,OAAO;4BAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;wBAC9C,IAAI,CAAC;4BACH,QAAQ,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;4BAC5C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC;wBACvD,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,MAAM,MAAM,GAAI,CAAyB,CAAC,MAAM,CAAC;4BACjD,MAAM,QAAQ,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;4BACzD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;wBACrD,CAAC;oBACH,CAAC;iBACF;gBACD,QAAQ,EAAE;oBACR,MAAM,EAAE,GAAG,EAAE;wBACX,iEAAiE;wBACjE,kEAAkE;wBAClE,4DAA4D;wBAC5D,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;wBACrD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;4BAC3B,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;4BAC7E,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;wBACvC,CAAC;wBACD,OAAO,IAAI,aAAa,EAAE,CAAC;oBAC7B,CAAC;iBACF;gBACD,iBAAiB,EAAE;oBACjB,IAAI,EAAE,KAAK,IAAI,EAAE;wBACf,0DAA0D;wBAC1D,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;4BACvC,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;wBAC3C,CAAC;wBACD,IAAI,CAAC;4BACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,CAAC;4BACxE,OAAO;gCACL,aAAa,EAAE,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gCACtE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;6BAC3D,CAAC;wBACJ,CAAC;wBAAC,MAAM,CAAC;4BACP,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;wBAC3C,CAAC;oBACH,CAAC;oBACD,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,qBAAqB,EAAE,IAAI,CAAC;iBAC9D;gBACD,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;aAC5C,CAAC;YACF,kEAAkE;YAClE,oEAAoE;YACpE,4EAA4E;YAC5E,yEAAyE;YACzE,0EAA0E;YAC1E,0DAA0D;YAC1D,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;YACnD,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YACD,MAAM,gBAAgB,GAAG,GAAG,CAAC,KAAK,CAAC,gBAAgB,KAAK,IAAI,CAAC;YAE7D,yEAAyE;YACzE,mEAAmE;YACnE,yEAAyE;YACzE,8DAA8D;YAC9D,MAAM,oBAAoB,GACxB,IAAI,CAAC,WAAW,KAAK,IAAI;gBACzB,CAAC,IAAI,CAAC,WAAW,KAAK,KAAK;oBACzB,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC;YACnD,MAAM,iBAAiB,GAAG,GAAG,CAAC,iBAAiB,CAAC;YAChD,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;YAClC,MAAM,eAAe,GAAG,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC;YAClD,MAAM,kBAAkB,GAAG,GAAG,CAAC,UAAU,CAAC;YAC1C,MAAM,qBAAqB,GAAG,GAAG,CAAC,aAAa,CAAC;YAEhD,kEAAkE;YAClE,mEAAmE;YACnE,MAAM,cAAc,GAAG,IAAI,GAAG,CAC5B,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CACxD,CAAC;YACF,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,WAAW,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC;YAEtE,IAAI,SAAS,GAAe,CAAC,GAAG,QAAQ,CAAC,CAAC;YAC1C,8EAA8E;YAC9E,IAAI,iBAAiB,EAAE,CAAC;gBACtB,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBACxD,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,SAAS,CAAC,sCAAsC;oBACzE,SAAS,CAAC,IAAI,CAAC;wBACb,EAAE;wBACF,IAAI,EAAE,CAAC,CAAC,OAAO,KAAK,MAAM;wBAC1B,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACpC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,gEAAgE;YAChE,mEAAmE;YACnE,+DAA+D;YAC/D,4DAA4D;YAC5D,oEAAoE;YACpE,IAAI,IAAI,CAAC,IAAI,IAAI,oBAAoB,EAAE,CAAC;gBACtC,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,EAAE,QAAwB,CAAC,CAAC;gBACjE,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAC9B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CACtD,CAAC;gBACF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACxC,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;wBAC1B,MAAM,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBAChF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,GAAG,KAAK,IAAI,CAAC,CAAC;oBAC/D,CAAC;oBACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,iFAAiF,CAClF,CAAC;oBACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;oBACrB,OAAO;gBACT,CAAC;gBACD,MAAM,MAAM,GAAe,CAAC,GAAG,SAAS,CAAC,CAAC;gBAC1C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;oBACxB,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;wBAAE,SAAS;oBACzC,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;wBACzB,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;oBACxC,CAAC;yBAAM,IAAI,CAAC,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;wBACnC,MAAM,CAAC,IAAI,CAAC;4BACV,EAAE,EAAE,CAAC,CAAC,EAAE;4BACR,IAAI,EAAE,KAAK;4BACX,IAAI,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU;yBAC/C,CAAC,CAAC;oBACL,CAAC;yBAAM,IAAI,CAAC,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;wBACzC,MAAM,CAAC,IAAI,CAAC;4BACV,EAAE,EAAE,CAAC,CAAC,EAAE;4BACR,IAAI,EAAE,KAAK;4BACX,IAAI,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB;yBACrD,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,CAAC;4BACV,EAAE,EAAE,CAAC,CAAC,EAAE;4BACR,IAAI,EAAE,KAAK;4BACX,IAAI,EACF,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;gCACnB,CAAC,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa;gCAC7C,CAAC,CAAC,uBAAuB;yBAC9B,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,SAAS,GAAG,MAAM,CAAC;YACrB,CAAC;YAED,qEAAqE;YACrE,oEAAoE;YACpE,sBAAsB;YACtB,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAC7C,MAAM,SAAS,GAAG,gBAAgB,CAAC;oBACjC,KAAK;oBACL,QAAQ;oBACR,gBAAgB;oBAChB,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI;oBAC1B,IAAI,EAAE,GAAG;oBACT,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACrC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnD,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAChD,CAAC,CAAC;gBACH,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,MAAM,QAAQ,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;oBAC/C,IAAI,CAAC;wBACH,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACnC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBAC7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,WAAW,QAAQ,CAAC,IAAI,uBAAuB,GAAG,iBAAiB,CACpE,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,oEAAoE;YACpE,wEAAwE;YACxE,mEAAmE;YACnE,yEAAyE;YACzE,yEAAyE;YACzE,oEAAoE;YACpE,iDAAiD;YACjD,CAAC;gBACC,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,CAAC;gBAC1C,IAAI,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAC7B,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;oBACrB,OAAO;gBACT,CAAC;gBACD,KAAK,CAAC,UAAU,CAAC,QAAQ,GAAG,GAAG,CAAC,iBAAiB,CAAC;YACpD,CAAC;YAED,MAAM,OAAO,GAAY;gBACvB,aAAa,EAAE,CAAC;gBAChB,OAAO,EAAE,KAAK,CAAC,WAAW;gBAC1B,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACrC,SAAS;gBACT,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACnC,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,MAAM,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO;wBAClE,CAAC,CAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAE,CAAC,MAAmD;wBAC5E,CAAC,CAAC,SAAS,CAAC;oBACd,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,EAAE;iBACzC,CAAC,CAAC;gBACH,SAAS,EAAE,EAAE;gBACb,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjE,GAAG,CAAC,qBAAqB;oBACvB,CAAC,CAAC,EAAE,aAAa,EAAE,qBAAqB,EAAE;oBAC1C,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;YAEF,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,WAAW,UAAU,CAAC,CAAC;YACpG,MAAM,eAAe,CAAC,GAAG,WAAW,OAAO,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,eAAe,CAAC,GAAG,WAAW,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;YAErE,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC;YAClC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;YACpE,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;YACzB,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;YACxB,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC;YAC5B,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YAClB,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACjG,IAAI,GAAG,YAAY,kBAAkB,EAAE,CAAC;gBACtC,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAAC,GAAW,EAAE,KAAe;IAC5D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC;QAC5D,OAAO,QAAQ,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YACvD,GAAG;YACH,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;YACnC,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;SAC5B,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IACnD,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC;AAClD,CAAC"}
|
package/dist/cli/index.js
CHANGED
|
@@ -11,7 +11,7 @@ const pkg = JSON.parse(readFileSync(join(dirname(fileURLToPath(import.meta.url))
|
|
|
11
11
|
const program = new Command();
|
|
12
12
|
program
|
|
13
13
|
.name('cadence')
|
|
14
|
-
.description('CADENCE —
|
|
14
|
+
.description('CADENCE — a draft/build/settle framework for AI-assisted development with configurable quality gates')
|
|
15
15
|
.version(pkg.version);
|
|
16
16
|
registerAllCommands(program);
|
|
17
17
|
program.parseAsync(process.argv).catch((err) => {
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,uEAAuE;AACvE,4EAA4E;AAC5E,sCAAsC;AACtC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CACpB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,CACnE,CAAC;AAEzB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,uEAAuE;AACvE,4EAA4E;AAC5E,sCAAsC;AACtC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CACpB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,CACnE,CAAC;AAEzB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAC9B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,sGAAsG,CAAC;KACnH,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AAExB,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAE7B,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IAC7C,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/cli/register.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/cli/register.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAwBzC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAuB1D"}
|
package/dist/cli/register.js
CHANGED
|
@@ -15,6 +15,8 @@ import { registerInspectCommand } from './commands/inspect.js';
|
|
|
15
15
|
import { registerRecommendCommand } from './commands/recommend.js';
|
|
16
16
|
import { registerMilestoneCommand } from './commands/milestone.js';
|
|
17
17
|
import { registerContextCommand } from './commands/context.js';
|
|
18
|
+
import { registerHandoffCommand } from './commands/handoff.js';
|
|
19
|
+
import { registerResumeCommand } from './commands/resume.js';
|
|
18
20
|
import { registerAssumptionCommand } from './commands/assumption.js';
|
|
19
21
|
import { registerDecisionCommand } from './commands/decision.js';
|
|
20
22
|
import { registerIntelligenceCommand } from './commands/intelligence.js';
|
|
@@ -36,6 +38,8 @@ export function registerAllCommands(program) {
|
|
|
36
38
|
registerRecommendCommand(program);
|
|
37
39
|
registerMilestoneCommand(program);
|
|
38
40
|
registerContextCommand(program);
|
|
41
|
+
registerHandoffCommand(program);
|
|
42
|
+
registerResumeCommand(program);
|
|
39
43
|
registerAssumptionCommand(program);
|
|
40
44
|
registerDecisionCommand(program);
|
|
41
45
|
registerIntelligenceCommand(program);
|
package/dist/cli/register.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/cli/register.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAEzE,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC9B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC9B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC9B,2BAA2B,CAAC,OAAO,CAAC,CAAC;IACrC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,6BAA6B,CAAC,OAAO,CAAC,CAAC;IACvC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAChC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAClC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAClC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAChC,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACnC,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,2BAA2B,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC"}
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/cli/register.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AAEzE,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC9B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC9B,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC9B,2BAA2B,CAAC,OAAO,CAAC,CAAC;IACrC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,6BAA6B,CAAC,OAAO,CAAC,CAAC;IACvC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAChC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAClC,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAClC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAChC,sBAAsB,CAAC,OAAO,CAAC,CAAC;IAChC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/B,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACnC,uBAAuB,CAAC,OAAO,CAAC,CAAC;IACjC,2BAA2B,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-facts.d.ts","sourceRoot":"","sources":["../../src/handoff/git-facts.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAU5D,kFAAkF;AAClF,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CA0BlE"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// packages/core/src/handoff/git-facts.ts
|
|
2
|
+
import { execFile } from 'node:child_process';
|
|
3
|
+
import { promisify } from 'node:util';
|
|
4
|
+
const pexec = promisify(execFile);
|
|
5
|
+
const EXEC_OPTS = { timeout: 5000, windowsHide: true, maxBuffer: 4 * 1024 * 1024 };
|
|
6
|
+
async function git(root, args) {
|
|
7
|
+
const { stdout } = await pexec('git', args, { cwd: root, ...EXEC_OPTS });
|
|
8
|
+
return stdout;
|
|
9
|
+
}
|
|
10
|
+
/** Best-effort, read-only. Never throws: non-repo / missing git → unavailable. */
|
|
11
|
+
export async function readGitFacts(root) {
|
|
12
|
+
try {
|
|
13
|
+
await git(root, ['rev-parse', '--is-inside-work-tree']);
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
return { available: false };
|
|
17
|
+
}
|
|
18
|
+
try {
|
|
19
|
+
const status = await git(root, ['status', '--short', '--branch']);
|
|
20
|
+
const lines = status.split('\n');
|
|
21
|
+
const header = lines[0] ?? '';
|
|
22
|
+
const branch = header.match(/^## (?:No commits yet on )?([^.\s]+)/)?.[1] ?? 'HEAD';
|
|
23
|
+
const ahead = Number(header.match(/ahead (\d+)/)?.[1] ?? '0');
|
|
24
|
+
const behind = Number(header.match(/behind (\d+)/)?.[1] ?? '0');
|
|
25
|
+
const dirty = lines.slice(1).some((l) => l.trim().length > 0);
|
|
26
|
+
const safe = async (args) => {
|
|
27
|
+
try {
|
|
28
|
+
return (await git(root, args)).trim();
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
return '';
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
const head = await safe(['rev-parse', '--short', 'HEAD']);
|
|
35
|
+
const recentCommits = await safe(['log', '--oneline', '-8']);
|
|
36
|
+
const diffStat = await safe(['diff', '--stat']);
|
|
37
|
+
return { available: true, branch, dirty, ahead, behind, head, recentCommits, diffStat };
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
return { available: false };
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=git-facts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-facts.js","sourceRoot":"","sources":["../../src/handoff/git-facts.ts"],"names":[],"mappings":"AAAA,yCAAyC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGtC,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAClC,MAAM,SAAS,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,EAAW,CAAC;AAE5F,KAAK,UAAU,GAAG,CAAC,IAAY,EAAE,IAAc;IAC7C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,kFAAkF;AAClF,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY;IAC7C,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC9B,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;QACnF,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QAChE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE9D,MAAM,IAAI,GAAG,KAAK,EAAE,IAAc,EAAmB,EAAE;YACrD,IAAI,CAAC;gBAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,OAAO,EAAE,CAAC;YAAC,CAAC;QACrE,CAAC,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;QAC1D,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QAEhD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;IAC1F,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC9B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface LocatedHandoff {
|
|
2
|
+
path: string;
|
|
3
|
+
content: string;
|
|
4
|
+
generatedAt: string | null;
|
|
5
|
+
loopPosition: string | null;
|
|
6
|
+
}
|
|
7
|
+
/** Resolve the freshest SESSION doc. Prefers `lastHandoff` when its file exists;
|
|
8
|
+
* otherwise globs `SESSION-*.md` and ranks by generated_at → filename → mtime. */
|
|
9
|
+
export declare function locateFreshestHandoff(root: string, lastHandoff: string | null): Promise<LocatedHandoff | null>;
|
|
10
|
+
//# sourceMappingURL=locate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locate.d.ts","sourceRoot":"","sources":["../../src/handoff/locate.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAsBD;mFACmF;AACnF,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GAAG,IAAI,GACzB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAoChC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
// packages/core/src/handoff/locate.ts
|
|
2
|
+
import { readdir, readFile, stat } from 'node:fs/promises';
|
|
3
|
+
import { existsSync } from 'node:fs';
|
|
4
|
+
import { join } from 'node:path';
|
|
5
|
+
function handoffDir(root) {
|
|
6
|
+
return join(root, '.cadence', 'handoff');
|
|
7
|
+
}
|
|
8
|
+
function readKey(content, key) {
|
|
9
|
+
const m = content.match(new RegExp(`^${key}:\\s*(.*)$`, 'm'));
|
|
10
|
+
const v = m?.[1]?.trim();
|
|
11
|
+
return v ? v : null;
|
|
12
|
+
}
|
|
13
|
+
async function toLocated(path) {
|
|
14
|
+
const content = await readFile(path, 'utf8');
|
|
15
|
+
return {
|
|
16
|
+
path,
|
|
17
|
+
content,
|
|
18
|
+
generatedAt: readKey(content, 'generated_at'),
|
|
19
|
+
loopPosition: readKey(content, 'loop_position'),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/** Resolve the freshest SESSION doc. Prefers `lastHandoff` when its file exists;
|
|
23
|
+
* otherwise globs `SESSION-*.md` and ranks by generated_at → filename → mtime. */
|
|
24
|
+
export async function locateFreshestHandoff(root, lastHandoff) {
|
|
25
|
+
const dir = handoffDir(root);
|
|
26
|
+
if (lastHandoff) {
|
|
27
|
+
const pointer = join(dir, lastHandoff);
|
|
28
|
+
if (existsSync(pointer))
|
|
29
|
+
return toLocated(pointer);
|
|
30
|
+
}
|
|
31
|
+
if (!existsSync(dir))
|
|
32
|
+
return null;
|
|
33
|
+
const names = (await readdir(dir)).filter((n) => /^SESSION-.*\.md$/.test(n));
|
|
34
|
+
if (names.length === 0)
|
|
35
|
+
return null;
|
|
36
|
+
const ranked = await Promise.all(names.map(async (name) => {
|
|
37
|
+
const path = join(dir, name);
|
|
38
|
+
const content = await readFile(path, 'utf8');
|
|
39
|
+
const generatedAt = readKey(content, 'generated_at');
|
|
40
|
+
const fileDate = name.match(/SESSION-(\d{4}-\d{2}-\d{2})/)?.[1] ?? null;
|
|
41
|
+
const mtimeMs = (await stat(path)).mtimeMs;
|
|
42
|
+
const key = generatedAt ?? fileDate ?? '';
|
|
43
|
+
return { name, path, content, generatedAt, key, mtimeMs };
|
|
44
|
+
}));
|
|
45
|
+
ranked.sort((a, b) => {
|
|
46
|
+
if (a.key !== b.key)
|
|
47
|
+
return a.key < b.key ? 1 : -1; // desc
|
|
48
|
+
return b.mtimeMs - a.mtimeMs; // newer mtime first
|
|
49
|
+
});
|
|
50
|
+
const top = ranked[0];
|
|
51
|
+
if (!top)
|
|
52
|
+
return null;
|
|
53
|
+
return {
|
|
54
|
+
path: top.path,
|
|
55
|
+
content: top.content,
|
|
56
|
+
generatedAt: top.generatedAt,
|
|
57
|
+
loopPosition: readKey(top.content, 'loop_position'),
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=locate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locate.js","sourceRoot":"","sources":["../../src/handoff/locate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ContextPacket, GitFacts } from '@manehorizons/cadence-types';
|
|
2
|
+
export interface SessionRenderInput {
|
|
3
|
+
generatedAt: string;
|
|
4
|
+
label: string | null;
|
|
5
|
+
packet: ContextPacket;
|
|
6
|
+
git: GitFacts;
|
|
7
|
+
contextPacketPath: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function renderSession(input: SessionRenderInput): string;
|
|
10
|
+
//# sourceMappingURL=render-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-session.d.ts","sourceRoot":"","sources":["../../src/handoff/render-session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE3E,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,EAAE,QAAQ,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AA0DD,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,CA8B/D"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
function fm(input) {
|
|
2
|
+
const { packet, git } = input;
|
|
3
|
+
const loop = packet.loop;
|
|
4
|
+
const lines = [
|
|
5
|
+
'---',
|
|
6
|
+
'cadence_handoff: 1',
|
|
7
|
+
`generated_at: ${input.generatedAt}`,
|
|
8
|
+
`label: ${input.label ?? ''}`,
|
|
9
|
+
`loop_position: ${loop.loopPosition ?? 'IDLE'}`,
|
|
10
|
+
`active_phase: ${loop.activePhase ?? ''}`,
|
|
11
|
+
`active_draft: ${loop.activeDraft ?? ''}`,
|
|
12
|
+
`tier: ${loop.tier ?? ''}`,
|
|
13
|
+
`git_branch: ${git.available ? git.branch : 'unavailable'}`,
|
|
14
|
+
`git_dirty: ${git.available ? String(git.dirty) : 'unavailable'}`,
|
|
15
|
+
`git_head: ${git.available ? git.head : 'unavailable'}`,
|
|
16
|
+
`git_ahead: ${git.available ? String(git.ahead) : '0'}`,
|
|
17
|
+
`git_behind: ${git.available ? String(git.behind) : '0'}`,
|
|
18
|
+
`context_packet: ${input.contextPacketPath}`,
|
|
19
|
+
'---',
|
|
20
|
+
];
|
|
21
|
+
return lines.join('\n');
|
|
22
|
+
}
|
|
23
|
+
function gitBlock(git) {
|
|
24
|
+
if (!git.available)
|
|
25
|
+
return '- git: unavailable (not a git repo or git not found)';
|
|
26
|
+
const dirty = git.dirty ? 'dirty' : 'clean';
|
|
27
|
+
const out = [
|
|
28
|
+
`- Branch \`${git.branch}\` (${dirty}), ${git.ahead} ahead / ${git.behind} behind origin`,
|
|
29
|
+
`- HEAD \`${git.head}\``,
|
|
30
|
+
];
|
|
31
|
+
if (git.recentCommits)
|
|
32
|
+
out.push('- Recent commits:', '```', git.recentCommits, '```');
|
|
33
|
+
if (git.diffStat)
|
|
34
|
+
out.push('- Uncommitted (diff --stat):', '```', git.diffStat, '```');
|
|
35
|
+
return out.join('\n');
|
|
36
|
+
}
|
|
37
|
+
function contextBlock(packet) {
|
|
38
|
+
const recs = packet.recommendations.length
|
|
39
|
+
? packet.recommendations.map((r) => ` - ${r.id} — ${r.title} (${r.status}/${r.readiness})`).join('\n')
|
|
40
|
+
: ' - (none)';
|
|
41
|
+
const asn = packet.assumptions.length
|
|
42
|
+
? packet.assumptions.map((a) => ` - ${a.id} — ${a.text}`).join('\n')
|
|
43
|
+
: ' - (none)';
|
|
44
|
+
const dec = packet.decisions.length
|
|
45
|
+
? packet.decisions.map((d) => ` - ${d.id} — ${d.title}`).join('\n')
|
|
46
|
+
: ' - (none)';
|
|
47
|
+
const files = packet.files.length
|
|
48
|
+
? packet.files.map((f) => ` - \`${f.path}\` — ${f.why}`).join('\n')
|
|
49
|
+
: ' - (none)';
|
|
50
|
+
return [
|
|
51
|
+
`- Top recommendations:\n${recs}`,
|
|
52
|
+
`- Open assumptions:\n${asn}`,
|
|
53
|
+
`- Active decisions:\n${dec}`,
|
|
54
|
+
`- Files in play:\n${files}`,
|
|
55
|
+
].join('\n');
|
|
56
|
+
}
|
|
57
|
+
export function renderSession(input) {
|
|
58
|
+
const { packet, git, label } = input;
|
|
59
|
+
const date = input.generatedAt.slice(0, 10);
|
|
60
|
+
const title = label ? `# Session Handoff — ${date} (${label})` : `# Session Handoff — ${date}`;
|
|
61
|
+
const loop = packet.loop;
|
|
62
|
+
return [
|
|
63
|
+
fm(input),
|
|
64
|
+
'',
|
|
65
|
+
title,
|
|
66
|
+
'',
|
|
67
|
+
'## TL;DR for the next session',
|
|
68
|
+
'<!-- 4–6 bullets: where things stand, the single next action, blockers. FILL IN. -->',
|
|
69
|
+
'',
|
|
70
|
+
"## State on handoff · pre-filled — verify, don't retype",
|
|
71
|
+
gitBlock(git),
|
|
72
|
+
`- Loop: ${loop.loopPosition ?? 'IDLE'} · phase ${loop.activePhase ?? '(none)'} · tier ${loop.tier ?? '(none)'}`,
|
|
73
|
+
'',
|
|
74
|
+
'## CADENCE context · pre-filled from `cadence context handoff`',
|
|
75
|
+
contextBlock(packet),
|
|
76
|
+
'',
|
|
77
|
+
'## What landed this session',
|
|
78
|
+
'<!-- FILL IN -->',
|
|
79
|
+
'',
|
|
80
|
+
'## Carry-forward gotchas',
|
|
81
|
+
'<!-- FILL IN -->',
|
|
82
|
+
'',
|
|
83
|
+
'## Next action',
|
|
84
|
+
'<!-- FILL IN -->',
|
|
85
|
+
'',
|
|
86
|
+
].join('\n');
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=render-session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-session.js","sourceRoot":"","sources":["../../src/handoff/render-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface HandoffOptions {
|
|
2
|
+
label?: string;
|
|
3
|
+
force?: boolean;
|
|
4
|
+
noStamp?: boolean;
|
|
5
|
+
noGit?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export interface HandoffResult {
|
|
8
|
+
path: string;
|
|
9
|
+
filename: string;
|
|
10
|
+
lastHandoff: string | null;
|
|
11
|
+
gitAvailable: boolean;
|
|
12
|
+
stamped: boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare function runHandoff(root: string, opts?: HandoffOptions, now?: Date): Promise<HandoffResult>;
|
|
15
|
+
//# sourceMappingURL=run-handoff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-handoff.d.ts","sourceRoot":"","sources":["../../src/handoff/run-handoff.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;CAClB;AAMD,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,cAAmB,EACzB,GAAG,GAAE,IAAiB,GACrB,OAAO,CAAC,aAAa,CAAC,CA2CxB"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
// packages/core/src/handoff/run-handoff.ts
|
|
2
|
+
import { existsSync } from 'node:fs';
|
|
3
|
+
import { mkdir } from 'node:fs/promises';
|
|
4
|
+
import { join } from 'node:path';
|
|
5
|
+
import { SimpleStateBackend } from '../state/simple.js';
|
|
6
|
+
import { atomicWriteText } from '../state/atomic-write.js';
|
|
7
|
+
import { runContext } from '../intelligence/context.js';
|
|
8
|
+
import { readGitFacts } from './git-facts.js';
|
|
9
|
+
import { renderSession } from './render-session.js';
|
|
10
|
+
function sanitizeLabel(label) {
|
|
11
|
+
return label.trim().replace(/\s+/g, '-').replace(/[^A-Za-z0-9._-]/g, '');
|
|
12
|
+
}
|
|
13
|
+
export async function runHandoff(root, opts = {}, now = new Date()) {
|
|
14
|
+
const date = now.toISOString().slice(0, 10);
|
|
15
|
+
const label = opts.label ? sanitizeLabel(opts.label) : '';
|
|
16
|
+
const filename = label ? `SESSION-${date}-${label}.md` : `SESSION-${date}.md`;
|
|
17
|
+
const dir = join(root, '.cadence', 'handoff');
|
|
18
|
+
const path = join(dir, filename);
|
|
19
|
+
if (existsSync(path) && !opts.force) {
|
|
20
|
+
throw new Error(`handoff: ${filename} already exists; pass a distinct --label or --force`);
|
|
21
|
+
}
|
|
22
|
+
const [packet, git] = await Promise.all([
|
|
23
|
+
runContext(root, 'handoff', now),
|
|
24
|
+
opts.noGit ? Promise.resolve({ available: false }) : readGitFacts(root),
|
|
25
|
+
]);
|
|
26
|
+
const md = renderSession({
|
|
27
|
+
generatedAt: now.toISOString(),
|
|
28
|
+
label: label || null,
|
|
29
|
+
packet,
|
|
30
|
+
git,
|
|
31
|
+
contextPacketPath: '.cadence/intelligence/context/handoff.json',
|
|
32
|
+
});
|
|
33
|
+
await mkdir(dir, { recursive: true });
|
|
34
|
+
await atomicWriteText(path, md);
|
|
35
|
+
let stamped = false;
|
|
36
|
+
if (!opts.noStamp) {
|
|
37
|
+
const backend = new SimpleStateBackend(root);
|
|
38
|
+
const state = await backend.readState();
|
|
39
|
+
state.session = { ...state.session, lastHandoff: filename };
|
|
40
|
+
await backend.commit(state);
|
|
41
|
+
stamped = true;
|
|
42
|
+
}
|
|
43
|
+
return {
|
|
44
|
+
path,
|
|
45
|
+
filename,
|
|
46
|
+
lastHandoff: stamped ? filename : null,
|
|
47
|
+
gitAvailable: git.available,
|
|
48
|
+
stamped,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=run-handoff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-handoff.js","sourceRoot":"","sources":["../../src/handoff/run-handoff.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-resume.d.ts","sourceRoot":"","sources":["../../src/handoff/run-resume.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAKhE,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,CA6B3F"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { SimpleStateBackend } from '../state/simple.js';
|
|
2
|
+
import { runContext } from '../intelligence/context.js';
|
|
3
|
+
import { locateFreshestHandoff } from './locate.js';
|
|
4
|
+
export async function runResume(root, now = new Date()) {
|
|
5
|
+
let lastHandoff = null;
|
|
6
|
+
let liveLoopPosition = null;
|
|
7
|
+
try {
|
|
8
|
+
const state = await new SimpleStateBackend(root).readState();
|
|
9
|
+
lastHandoff = state.session.lastHandoff;
|
|
10
|
+
liveLoopPosition = state.loopPosition;
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
// no/corrupt state — fall back to globbing, no drift comparison
|
|
14
|
+
}
|
|
15
|
+
const located = await locateFreshestHandoff(root, lastHandoff);
|
|
16
|
+
if (!located)
|
|
17
|
+
return { found: false };
|
|
18
|
+
const context = await runContext(root, 'handoff', now);
|
|
19
|
+
const drift = located.loopPosition && liveLoopPosition && located.loopPosition !== liveLoopPosition
|
|
20
|
+
? { docLoopPosition: located.loopPosition, liveLoopPosition }
|
|
21
|
+
: null;
|
|
22
|
+
return {
|
|
23
|
+
found: true,
|
|
24
|
+
handoffPath: located.path,
|
|
25
|
+
generatedAt: located.generatedAt,
|
|
26
|
+
doc: located.content,
|
|
27
|
+
context,
|
|
28
|
+
drift,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=run-resume.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-resume.js","sourceRoot":"","sources":["../../src/handoff/run-resume.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,MAAY,IAAI,IAAI,EAAE;IAClE,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,IAAI,gBAAgB,GAAkB,IAAI,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;QAC7D,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;QACxC,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,gEAAgE;IAClE,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC/D,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAEtC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IAEvD,MAAM,KAAK,GACT,OAAO,CAAC,YAAY,IAAI,gBAAgB,IAAI,OAAO,CAAC,YAAY,KAAK,gBAAgB;QACnF,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,YAAY,EAAE,gBAAgB,EAAE;QAC7D,CAAC,CAAC,IAAI,CAAC;IAEX,OAAO;QACL,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,OAAO,CAAC,IAAI;QACzB,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,GAAG,EAAE,OAAO,CAAC,OAAO;QACpB,OAAO;QACP,KAAK;KACN,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/hooks/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC5F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAS7D,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,OAAO,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAWpG;AAED,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,UAAU,CAAC,CAMrB;AAED,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/hooks/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC5F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAS7D,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,OAAO,CAAC;IACZ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAWpG;AAED,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,UAAU,CAAC,CAMrB;AAED,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,UAAU,CAAC,CAmDrB;AAED,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,UAAU,CAAC,CAWrB;AAED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,UAAU,CAAC,CASrB;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,UAAU,CAAC,CAIrB;AAID;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,UAAU,CAAC,CAWrB"}
|
package/dist/hooks/handlers.js
CHANGED
|
@@ -41,6 +41,7 @@ export async function handlePreToolEdit(ctx, state, config) {
|
|
|
41
41
|
touchedFiles: rawFiles,
|
|
42
42
|
stamp: () => now,
|
|
43
43
|
extraContext: { source: 'hook.preToolEdit' },
|
|
44
|
+
root: ctx.cwd,
|
|
44
45
|
});
|
|
45
46
|
if (events.length > 0) {
|
|
46
47
|
const gateSet = effectiveGateSet(state, config, draft);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/hooks/handlers.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/hooks/handlers.ts"],"names":[],"mappings":"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"}
|
package/dist/notify/collect.d.ts
CHANGED
|
@@ -17,6 +17,13 @@ export interface CollectAnomaliesContext {
|
|
|
17
17
|
message: string;
|
|
18
18
|
provider?: string;
|
|
19
19
|
} | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* Phase 47 — repo root, forwarded to the boundary check so absolute
|
|
22
|
+
* `touchedFiles` (recorded by the PreToolUse hook) are relativized before
|
|
23
|
+
* comparison against the DRAFT's relative `files:` declarations. Optional:
|
|
24
|
+
* when omitted, the boundary check falls back to exact-string matching.
|
|
25
|
+
*/
|
|
26
|
+
root?: string | undefined;
|
|
20
27
|
}
|
|
21
28
|
export interface CollectAnomaliesOptions {
|
|
22
29
|
/** Test seam: stand in for `() => new Date()`. Production callers omit it. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collect.d.ts","sourceRoot":"","sources":["../../src/notify/collect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,KAAK,EACN,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,YAAY,CAAC;IACvB,4FAA4F;IAC5F,gBAAgB,EAAE,OAAO,CAAC;IAC1B,4CAA4C;IAC5C,KAAK,EAAE,OAAO,CAAC;IACf,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,SAAS,CAAC;IACrD,+FAA+F;IAC/F,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,SAAS,CAAC;IACnE,oFAAoF;IACpF,eAAe,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"collect.d.ts","sourceRoot":"","sources":["../../src/notify/collect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,WAAW,EACX,KAAK,EACN,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,YAAY,CAAC;IACvB,4FAA4F;IAC5F,gBAAgB,EAAE,OAAO,CAAC;IAC1B,4CAA4C;IAC5C,KAAK,EAAE,OAAO,CAAC;IACf,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,SAAS,CAAC;IACrD,+FAA+F;IAC/F,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,SAAS,CAAC;IACnE,oFAAoF;IACpF,eAAe,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IACrE;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B;AASD,MAAM,WAAW,uBAAuB;IACtC,8EAA8E;IAC9E,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,uBAAuB,EAC5B,IAAI,GAAE,uBAA4B,GACjC,YAAY,EAAE,CA6HhB"}
|
package/dist/notify/collect.js
CHANGED
|
@@ -64,6 +64,7 @@ export function collectAnomalies(ctx, opts = {}) {
|
|
|
64
64
|
declaredFiles: ctx.draft.tasks.flatMap((t) => t.files),
|
|
65
65
|
touchedFiles: touched,
|
|
66
66
|
stamp,
|
|
67
|
+
...(ctx.root !== undefined ? { root: ctx.root } : {}),
|
|
67
68
|
}));
|
|
68
69
|
// verifier-failure — emitted when the deep verifier transport itself blew up.
|
|
69
70
|
if (ctx.verifierFailure) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collect.js","sourceRoot":"","sources":["../../src/notify/collect.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"collect.js","sourceRoot":"","sources":["../../src/notify/collect.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@manehorizons/cadence-core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"description": "CADENCE engine — the DRAFT→BUILD→SETTLE loop, configurable quality gates, and the host-agnostic `cadence` CLI for AI-assisted development.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Thomas Powers",
|
|
@@ -47,7 +47,7 @@
|
|
|
47
47
|
"@anthropic-ai/sdk": "^0.96.0",
|
|
48
48
|
"commander": "^13.0.0",
|
|
49
49
|
"zod": "^4.4.3",
|
|
50
|
-
"@manehorizons/cadence-types": "1.
|
|
50
|
+
"@manehorizons/cadence-types": "1.5.0"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"vitest": "^2.1.0",
|