@rasensio/aidlc 1.29.0 → 1.29.2
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/concurrency/worktree.d.ts.map +1 -1
- package/dist/concurrency/worktree.js +17 -0
- package/dist/concurrency/worktree.js.map +1 -1
- package/dist/cost/hooks/arm.d.ts +16 -0
- package/dist/cost/hooks/arm.d.ts.map +1 -0
- package/dist/cost/hooks/arm.js +42 -0
- package/dist/cost/hooks/arm.js.map +1 -0
- package/dist/doctor/migrations/missing-cost-shim.d.ts +1 -1
- package/dist/doctor/migrations/missing-cost-shim.d.ts.map +1 -1
- package/dist/doctor/migrations/missing-cost-shim.js +4 -26
- package/dist/doctor/migrations/missing-cost-shim.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree.d.ts","sourceRoot":"","sources":["../../src/concurrency/worktree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"worktree.d.ts","sourceRoot":"","sources":["../../src/concurrency/worktree.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAQH,sDAAsD;AACtD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAIrD;AA2CD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,kBAAkB,GAAG,WAAW,CAoCpE;AAED,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,WAAW,EAChB,WAAW,EAAE,MAAM,GAClB,YAAY,CA4Cd;AAED,oEAAoE;AACpE,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAmBjG"}
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
import { existsSync, realpathSync } from 'node:fs';
|
|
15
15
|
import { basename, dirname, join, resolve, sep } from 'node:path';
|
|
16
16
|
import { execFileSync } from 'node:child_process';
|
|
17
|
+
import { armCostCaptureShim } from '../cost/hooks/arm.js';
|
|
17
18
|
/** Sanitize a path component to [a-z0-9-] (NFR-5). */
|
|
18
19
|
export function sanitizeComponent(raw) {
|
|
19
20
|
const cleaned = raw.toLowerCase().replace(/[^a-z0-9-]+/g, '-').replace(/^-+|-+$/g, '');
|
|
@@ -85,6 +86,22 @@ export function createWorktree(opts) {
|
|
|
85
86
|
// show-ref failed → branch does not exist, proceed
|
|
86
87
|
}
|
|
87
88
|
git(['worktree', 'add', '-b', branch, target, 'main'], opts.projectRoot);
|
|
89
|
+
try {
|
|
90
|
+
armCostCaptureShim(target);
|
|
91
|
+
}
|
|
92
|
+
catch (err) {
|
|
93
|
+
// Creation is one operation to the caller. A branch that exists but cannot
|
|
94
|
+
// record its first session is not a successful worktree, and leaving it
|
|
95
|
+
// behind makes the same start command fail on retry.
|
|
96
|
+
try {
|
|
97
|
+
git(['worktree', 'remove', '--force', target], opts.projectRoot);
|
|
98
|
+
git(['branch', '-D', branch], opts.projectRoot);
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
// Preserve the arming failure, which is the actionable cause.
|
|
102
|
+
}
|
|
103
|
+
throw new Error(`could not arm cost capture in new worktree: ${err.message}`);
|
|
104
|
+
}
|
|
88
105
|
return { branch, path: target };
|
|
89
106
|
}
|
|
90
107
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../src/concurrency/worktree.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../src/concurrency/worktree.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Arm the generated cost-capture shim when tracked hook configuration already
|
|
3
|
+
* points at it.
|
|
4
|
+
*
|
|
5
|
+
* Hook declarations are tracked, while `.aidlc/cost/capture.sh` is deliberately
|
|
6
|
+
* machine-local and gitignored. Fresh clones and worktrees therefore need this
|
|
7
|
+
* small bridge before the first session starts.
|
|
8
|
+
*/
|
|
9
|
+
/** Platforms whose tracked hook is armed against an unusable generated shim. */
|
|
10
|
+
export declare function platformsWithUnusableShim(projectRoot: string): string[];
|
|
11
|
+
/**
|
|
12
|
+
* Regenerate the shim only when a current hook is already armed against it.
|
|
13
|
+
* Returns the platforms repaired, or an empty list when no shim is needed.
|
|
14
|
+
*/
|
|
15
|
+
export declare function armCostCaptureShim(projectRoot: string): string[];
|
|
16
|
+
//# sourceMappingURL=arm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arm.d.ts","sourceRoot":"","sources":["../../../src/cost/hooks/arm.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAoBH,gFAAgF;AAChF,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAMvE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAQhE"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Arm the generated cost-capture shim when tracked hook configuration already
|
|
3
|
+
* points at it.
|
|
4
|
+
*
|
|
5
|
+
* Hook declarations are tracked, while `.aidlc/cost/capture.sh` is deliberately
|
|
6
|
+
* machine-local and gitignored. Fresh clones and worktrees therefore need this
|
|
7
|
+
* small bridge before the first session starts.
|
|
8
|
+
*/
|
|
9
|
+
import { hookPlatforms, hookStatusFor } from './registry.js';
|
|
10
|
+
import { cliEntryPath } from './entry.js';
|
|
11
|
+
import { shimProblem, writeShim } from './shim.js';
|
|
12
|
+
/*
|
|
13
|
+
* Static for the same reason the hook migrations use a fixed registry view:
|
|
14
|
+
* hook installation exists only for the platforms registered at module load.
|
|
15
|
+
*/
|
|
16
|
+
const HOOK_PLATFORMS = hookPlatforms().map((name) => ({
|
|
17
|
+
name,
|
|
18
|
+
status: (root) => hookStatusFor(name, root),
|
|
19
|
+
}));
|
|
20
|
+
/** Platforms whose tracked hook is armed against an unusable generated shim. */
|
|
21
|
+
export function platformsWithUnusableShim(projectRoot) {
|
|
22
|
+
if (shimProblem(projectRoot) === null)
|
|
23
|
+
return [];
|
|
24
|
+
return HOOK_PLATFORMS.filter((platform) => {
|
|
25
|
+
const status = platform.status(projectRoot);
|
|
26
|
+
return status.installed && !status.legacy;
|
|
27
|
+
}).map((platform) => platform.name);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Regenerate the shim only when a current hook is already armed against it.
|
|
31
|
+
* Returns the platforms repaired, or an empty list when no shim is needed.
|
|
32
|
+
*/
|
|
33
|
+
export function armCostCaptureShim(projectRoot) {
|
|
34
|
+
const affected = platformsWithUnusableShim(projectRoot);
|
|
35
|
+
if (affected.length === 0)
|
|
36
|
+
return [];
|
|
37
|
+
// Hints only. The shim validates both at run time and never trusts them to
|
|
38
|
+
// still exist, which is what lets it survive a node or machine change.
|
|
39
|
+
writeShim(projectRoot, process.execPath, cliEntryPath());
|
|
40
|
+
return affected;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=arm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"arm.js","sourceRoot":"","sources":["../../../src/cost/hooks/arm.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAOnD;;;GAGG;AACH,MAAM,cAAc,GAAmB,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACpE,IAAI;IACJ,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAuC;CAC1F,CAAC,CAAC,CAAC;AAEJ,gFAAgF;AAChF,MAAM,UAAU,yBAAyB,CAAC,WAAmB;IAC3D,IAAI,WAAW,CAAC,WAAW,CAAC,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC;IACjD,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;QACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC5C,OAAO,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5C,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAC;IACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAErC,2EAA2E;IAC3E,uEAAuE;IACvE,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC;IACzD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -35,6 +35,6 @@ import type { Migration } from '../types.js';
|
|
|
35
35
|
* their problem — `legacy-cost-hooks` re-installs those, which writes the shim as
|
|
36
36
|
* a side effect anyway.
|
|
37
37
|
*/
|
|
38
|
-
export
|
|
38
|
+
export { platformsWithUnusableShim } from '../../cost/hooks/arm.js';
|
|
39
39
|
export declare const missingCostShim: Migration;
|
|
40
40
|
//# sourceMappingURL=missing-cost-shim.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-cost-shim.d.ts","sourceRoot":"","sources":["../../../src/doctor/migrations/missing-cost-shim.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;
|
|
1
|
+
{"version":3,"file":"missing-cost-shim.d.ts","sourceRoot":"","sources":["../../../src/doctor/migrations/missing-cost-shim.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;;;GAOG;AACH,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,eAAO,MAAM,eAAe,EAAE,SA+B7B,CAAC"}
|
|
@@ -26,21 +26,8 @@
|
|
|
26
26
|
* Self-clearing: once the shim exists and is executable, `shimProblem` returns
|
|
27
27
|
* null and this stops reporting without anyone editing state.
|
|
28
28
|
*/
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import { cliEntryPath } from '../../cost/hooks/entry.js';
|
|
32
|
-
import { describeShimProblem, shimProblem, writeShim } from '../../cost/hooks/shim.js';
|
|
33
|
-
import { hookPlatforms, hookStatusFor } from '../../cost/hooks/registry.js';
|
|
34
|
-
/*
|
|
35
|
-
* Static for the same reason `legacy-cost-hooks` is: allProviders() is only
|
|
36
|
-
* populated by an explicit registerBuiltinProviders() call, so a caller that has
|
|
37
|
-
* not made it sees an empty list and the migration silently finds nothing. Hook
|
|
38
|
-
* installation exists for these two platforms only.
|
|
39
|
-
*/
|
|
40
|
-
const HOOK_PLATFORMS = hookPlatforms().map((name) => ({
|
|
41
|
-
name,
|
|
42
|
-
status: (root) => hookStatusFor(name, root),
|
|
43
|
-
}));
|
|
29
|
+
import { armCostCaptureShim, platformsWithUnusableShim, } from '../../cost/hooks/arm.js';
|
|
30
|
+
import { describeShimProblem, shimProblem } from '../../cost/hooks/shim.js';
|
|
44
31
|
/**
|
|
45
32
|
* Platforms whose hook is armed against an unusable shim. Read-only half,
|
|
46
33
|
* exported for reuse and direct testing.
|
|
@@ -49,14 +36,7 @@ const HOOK_PLATFORMS = hookPlatforms().map((name) => ({
|
|
|
49
36
|
* their problem — `legacy-cost-hooks` re-installs those, which writes the shim as
|
|
50
37
|
* a side effect anyway.
|
|
51
38
|
*/
|
|
52
|
-
export
|
|
53
|
-
if (shimProblem(projectRoot) === null)
|
|
54
|
-
return [];
|
|
55
|
-
return HOOK_PLATFORMS.filter((p) => {
|
|
56
|
-
const s = p.status(projectRoot);
|
|
57
|
-
return s.installed && !s.legacy;
|
|
58
|
-
}).map((p) => p.name);
|
|
59
|
-
}
|
|
39
|
+
export { platformsWithUnusableShim } from '../../cost/hooks/arm.js';
|
|
60
40
|
export const missingCostShim = {
|
|
61
41
|
id: 'missing-cost-shim',
|
|
62
42
|
tier: 'safe',
|
|
@@ -77,9 +57,7 @@ export const missingCostShim = {
|
|
|
77
57
|
const affected = platformsWithUnusableShim(ctx.projectRoot);
|
|
78
58
|
if (affected.length === 0)
|
|
79
59
|
return { changed: false, summary: 'cost shim is usable' };
|
|
80
|
-
|
|
81
|
-
// still exist, which is what lets it survive a node or machine change.
|
|
82
|
-
writeShim(ctx.projectRoot, process.execPath, cliEntryPath());
|
|
60
|
+
armCostCaptureShim(ctx.projectRoot);
|
|
83
61
|
const remaining = shimProblem(ctx.projectRoot);
|
|
84
62
|
if (remaining !== null) {
|
|
85
63
|
return { changed: false, summary: `could not regenerate the cost shim: ${describeShimProblem(remaining)}` };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-cost-shim.js","sourceRoot":"","sources":["../../../src/doctor/migrations/missing-cost-shim.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"missing-cost-shim.js","sourceRoot":"","sources":["../../../src/doctor/migrations/missing-cost-shim.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EACL,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5E;;;;;;;GAOG;AACH,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,MAAM,CAAC,MAAM,eAAe,GAAc;IACxC,EAAE,EAAE,mBAAmB;IACvB,IAAI,EAAE,MAAM;IACZ,KAAK,CAAC,GAAG;QACP,MAAM,QAAQ,GAAG,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACvE,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC7C,OAAO;YACL,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,IAAI;YACb,WAAW,EACT,GAAG,mBAAmB,CAAC,OAAQ,CAAC,QAAQ,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG;gBACjE,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,sBAAsB;gBACpE,2EAA2E;SAC9E,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,GAAG;QACP,MAAM,QAAQ,GAAG,yBAAyB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC;QAErF,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAEpC,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC/C,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,uCAAuC,mBAAmB,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;QAC9G,CAAC;QACD,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,0CAA0C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACzE,CAAC;IACJ,CAAC;CACF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rasensio/aidlc",
|
|
3
|
-
"version": "1.29.
|
|
3
|
+
"version": "1.29.2",
|
|
4
4
|
"description": "AI Development Lifecycle Framework — structured lifecycle guidance for AI coding agents across platforms",
|
|
5
5
|
"homepage": "https://aidlc.rodrigoasensio.com",
|
|
6
6
|
"repository": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"commander": "15.0.0",
|
|
32
32
|
"picomatch": "4.0.5",
|
|
33
33
|
"yaml": "2.9.0",
|
|
34
|
-
"@rasensio/aidlc-content": "1.29.
|
|
34
|
+
"@rasensio/aidlc-content": "1.29.2"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@types/node": "22.15.32",
|