@codyswann/lisa 4.69.1 → 4.69.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/README.md +12 -0
- package/dist/cli/doctor-legacy-overlay.d.ts.map +1 -1
- package/dist/cli/doctor-legacy-overlay.js +37 -5
- package/dist/cli/doctor-legacy-overlay.js.map +1 -1
- package/dist/codex/hooks-installer.d.ts +12 -0
- package/dist/codex/hooks-installer.d.ts.map +1 -1
- package/dist/codex/hooks-installer.js +256 -7
- package/dist/codex/hooks-installer.js.map +1 -1
- package/dist/codex/manifest.d.ts +4 -1
- package/dist/codex/manifest.d.ts.map +1 -1
- package/dist/codex/manifest.js +18 -2
- package/dist/codex/manifest.js.map +1 -1
- package/dist/codex/project-hooks-cleanup.d.ts +3 -3
- package/dist/codex/project-hooks-cleanup.d.ts.map +1 -1
- package/dist/codex/project-hooks-cleanup.js +5 -14
- package/dist/codex/project-hooks-cleanup.js.map +1 -1
- package/dist/codex/project-overlay.d.ts.map +1 -1
- package/dist/codex/project-overlay.js +4 -1
- package/dist/codex/project-overlay.js.map +1 -1
- package/dist/core/nightly-e2e-guard-behavior-certificate.js +2 -2
- package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
- package/dist/core/upstream-evidence-manifest.js +7 -0
- package/dist/core/upstream-evidence-manifest.js.map +1 -1
- package/package.json +4 -4
- package/plugins/lisa/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-agy/plugin.json +1 -1
- package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-agy/plugin.json +1 -1
- package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-agy/plugin.json +1 -1
- package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-agy/plugin.json +1 -1
- package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-agy/plugin.json +1 -1
- package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-agy/plugin.json +1 -1
- package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
package/README.md
CHANGED
|
@@ -288,6 +288,18 @@ into the project and unrelated Lisa stacks are not loaded. Project settings use
|
|
|
288
288
|
`[features].hooks`; the deprecated `codex_hooks` key is removed during
|
|
289
289
|
reconciliation.
|
|
290
290
|
|
|
291
|
+
During an explicit Codex hook migration, including `--refresh-templates`, apply
|
|
292
|
+
retains previously installed hook commands as functional regular copies with
|
|
293
|
+
their helpers and rule data. An active session can keep using its loaded
|
|
294
|
+
commands while a fresh session uses the current generated fallback. Host hooks
|
|
295
|
+
remain intact. Keep the managed compatibility files recorded in
|
|
296
|
+
`.codex/.lisa-managed.json` rather than deleting them during a running session.
|
|
297
|
+
Review changed project hook definitions through Codex’s `/hooks` interface
|
|
298
|
+
before trusting them in a fresh session. Automatic postinstall still skips
|
|
299
|
+
agent configuration changes. This retirement
|
|
300
|
+
boundary belongs to the Codex project overlay. The other supported agents do
|
|
301
|
+
not delete this shell-command layout during apply.
|
|
302
|
+
|
|
291
303
|
Remote coding environments use one vendor-neutral AWS bootstrap rather than
|
|
292
304
|
repository-specific or agent-specific IAM users. Run `/lisa:setup-remote-aws`
|
|
293
305
|
to install the common setup script and native Cursor/Copilot adapters; Claude,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-legacy-overlay.d.ts","sourceRoot":"","sources":["../../src/cli/doctor-legacy-overlay.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"doctor-legacy-overlay.d.ts","sourceRoot":"","sources":["../../src/cli/doctor-legacy-overlay.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI/C;;;;;;;;;;;GAWG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CA2CvE"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import { existsSync } from "node:fs";
|
|
1
|
+
import { existsSync, lstatSync, readFileSync } from "node:fs";
|
|
2
2
|
import * as path from "node:path";
|
|
3
3
|
import { LISA_HOOKS_SUBDIR, LISA_RULES_SUBDIR, } from "../codex/hooks-installer.js";
|
|
4
|
+
import { LISA_MANAGED_MANIFEST_FILENAME } from "../codex/manifest.js";
|
|
5
|
+
import { parseHooksFile } from "../codex/hooks-merger.js";
|
|
4
6
|
import { LISA_SKILLS_SUBDIR } from "../codex/skills-installer.js";
|
|
5
7
|
const LEGACY_CODEX_OVERLAY_CHECK_NAME = "Codex overlay current?";
|
|
6
8
|
/**
|
|
@@ -24,16 +26,20 @@ export function checkLegacyCodexOverlay(targetPath) {
|
|
|
24
26
|
detail: "No .codex directory present",
|
|
25
27
|
};
|
|
26
28
|
}
|
|
29
|
+
const compatibility = hasManagedCompatibility(codexDir);
|
|
27
30
|
const legacyPaths = [
|
|
28
31
|
LISA_HOOKS_SUBDIR,
|
|
29
32
|
LISA_RULES_SUBDIR,
|
|
30
33
|
LISA_SKILLS_SUBDIR,
|
|
31
|
-
].filter(subdir => existsSync(path.join(codexDir, subdir))
|
|
34
|
+
].filter(subdir => existsSync(path.join(codexDir, subdir)) &&
|
|
35
|
+
!(compatibility && subdir !== LISA_SKILLS_SUBDIR));
|
|
32
36
|
if (legacyPaths.length === 0) {
|
|
33
37
|
return {
|
|
34
38
|
name: LEGACY_CODEX_OVERLAY_CHECK_NAME,
|
|
35
39
|
status: "ok",
|
|
36
|
-
detail:
|
|
40
|
+
detail: compatibility
|
|
41
|
+
? "Managed compatibility copies retained for active sessions; fresh sessions use the current enforcement fallback"
|
|
42
|
+
: "No legacy project-level Codex overlay present",
|
|
37
43
|
};
|
|
38
44
|
}
|
|
39
45
|
const listed = legacyPaths
|
|
@@ -43,9 +49,35 @@ export function checkLegacyCodexOverlay(targetPath) {
|
|
|
43
49
|
name: LEGACY_CODEX_OVERLAY_CHECK_NAME,
|
|
44
50
|
status: "warn",
|
|
45
51
|
detail: `Legacy pre-2.198 Codex overlay present (${listed}). ` +
|
|
46
|
-
"Run `lisa apply` in the primary checkout
|
|
52
|
+
"Run `lisa apply` in the primary checkout to migrate the configuration and retain functional copies for active sessions — " +
|
|
47
53
|
"fresh clones/worktrees otherwise load stale hooks/skills that a later " +
|
|
48
|
-
"apply
|
|
54
|
+
"apply must keep executable mid-session (CodySwannGT/lisa#1632)",
|
|
49
55
|
};
|
|
50
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Distinguish intentional copied compatibility from an unmigrated overlay.
|
|
59
|
+
* @param codexDir Host Codex directory.
|
|
60
|
+
* @returns Whether every recorded compatibility path remains a regular file.
|
|
61
|
+
*/
|
|
62
|
+
function hasManagedCompatibility(codexDir) {
|
|
63
|
+
try {
|
|
64
|
+
const manifest = JSON.parse(readFileSync(path.join(codexDir, LISA_MANAGED_MANIFEST_FILENAME), "utf8"));
|
|
65
|
+
const compatibility = manifest.hookCompatibilityFiles;
|
|
66
|
+
if (!Array.isArray(compatibility) ||
|
|
67
|
+
compatibility.length === 0 ||
|
|
68
|
+
!compatibility.every(file => typeof file === "string" &&
|
|
69
|
+
manifest.files?.includes(file) &&
|
|
70
|
+
(file.startsWith(`${LISA_HOOKS_SUBDIR}${path.sep}`) ||
|
|
71
|
+
file.startsWith(`${LISA_RULES_SUBDIR}${path.sep}`)) &&
|
|
72
|
+
!file.split(path.sep).includes("..") &&
|
|
73
|
+
lstatSync(path.join(codexDir, file)).isFile()))
|
|
74
|
+
return false;
|
|
75
|
+
const hooks = parseHooksFile(readFileSync(path.join(codexDir, "hooks.json"), "utf8"));
|
|
76
|
+
const managed = Object.values(hooks.hooks ?? {}).flatMap(groups => groups.flatMap(group => group.hooks.filter(hook => hook._lisaManaged === true)));
|
|
77
|
+
return (managed.length === 1 && managed[0]?._lisaId === "enforcement-fallback");
|
|
78
|
+
}
|
|
79
|
+
catch {
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
51
83
|
//# sourceMappingURL=doctor-legacy-overlay.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-legacy-overlay.js","sourceRoot":"","sources":["../../src/cli/doctor-legacy-overlay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"doctor-legacy-overlay.js","sourceRoot":"","sources":["../../src/cli/doctor-legacy-overlay.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,4 +55,16 @@ export interface HooksInstallResult {
|
|
|
55
55
|
* @returns Result describing what was written
|
|
56
56
|
*/
|
|
57
57
|
export declare function installHooks(lisaDir: string, destDir: string, detectedTypes: readonly ProjectType[], previousManagedFiles?: readonly string[]): Promise<HooksInstallResult>;
|
|
58
|
+
/**
|
|
59
|
+
* Keep previously installed catalog commands functional without registering
|
|
60
|
+
* them again. Copies outlive replacement of the package that owned old links.
|
|
61
|
+
* Host-authored siblings are never pruned. This is an apply-time migration,
|
|
62
|
+
* not runtime/session detection or an assumed hot-reload boundary.
|
|
63
|
+
* @param lisaDir Lisa source/package root.
|
|
64
|
+
* @param destDir Host root.
|
|
65
|
+
* @param detectedTypes Current project types.
|
|
66
|
+
* @param previousManagedFiles Previous manifest ownership.
|
|
67
|
+
* @returns Compatibility files to retain in the current manifest.
|
|
68
|
+
*/
|
|
69
|
+
export declare function installHookCompatibility(lisaDir: string, destDir: string, detectedTypes: readonly ProjectType[], previousManagedFiles: readonly string[]): Promise<readonly string[]>;
|
|
58
70
|
//# sourceMappingURL=hooks-installer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks-installer.d.ts","sourceRoot":"","sources":["../../src/codex/hooks-installer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hooks-installer.d.ts","sourceRoot":"","sources":["../../src/codex/hooks-installer.ts"],"names":[],"mappings":"AA2CA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAWrD,kEAAkE;AAClE,eAAO,MAAM,iBAAiB,QAA6B,CAAC;AAE5D;;;;;GAKG;AACH,eAAO,MAAM,cAAc,2BAA2B,CAAC;AAEvD;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,sBAAsB,CAAC;AAEjD,kFAAkF;AAClF,eAAO,MAAM,iBAAiB,eAAe,CAAC;AAE9C,+DAA+D;AAC/D,eAAO,MAAM,cAAc,eAAe,CAAC;AAqL3C;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAInD,CAAC;AAEF,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,0DAA0D;IAC1D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,iEAAiE;IACjE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,SAAS,WAAW,EAAE,EACrC,oBAAoB,GAAE,SAAS,MAAM,EAAO,GAC3C,OAAO,CAAC,kBAAkB,CAAC,CAsF7B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,SAAS,WAAW,EAAE,EACrC,oBAAoB,EAAE,SAAS,MAAM,EAAE,GACtC,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAmE5B"}
|
|
@@ -25,11 +25,11 @@
|
|
|
25
25
|
* The project overlay now uses plugin-bundled hooks for the complete catalog
|
|
26
26
|
* and one repository-owned enforcement dispatcher as the fail-closed delivery
|
|
27
27
|
* fallback. This module remains for migration coverage of the retired linked
|
|
28
|
-
* script/rule layout.
|
|
28
|
+
* script/rule layout and source-owned compatibility copies for loaded sessions.
|
|
29
29
|
* @module codex/hooks-installer
|
|
30
30
|
*/
|
|
31
31
|
import * as fse from "fs-extra";
|
|
32
|
-
import { readFile, rm, symlink, writeFile } from "node:fs/promises";
|
|
32
|
+
import { lstat, mkdtemp, readFile, readlink, rename, rm, symlink, writeFile, } from "node:fs/promises";
|
|
33
33
|
import * as path from "node:path";
|
|
34
34
|
import { fileURLToPath } from "node:url";
|
|
35
35
|
import { mirrorLisaRules } from "../core/lisa-rules-mirror.js";
|
|
@@ -62,6 +62,7 @@ export const HOOKS_FILENAME = "hooks.json";
|
|
|
62
62
|
* its three write paths (text Edit, file Write, apply_patch diff).
|
|
63
63
|
*/
|
|
64
64
|
const WRITE_MATCHER = "Edit|Write|apply_patch";
|
|
65
|
+
const INJECT_RULES_ID = "inject-rules";
|
|
65
66
|
const HARPER_PLUGIN = "lisa-harper-fabric";
|
|
66
67
|
/**
|
|
67
68
|
* Hook catalog. Adding a new hook? Three steps:
|
|
@@ -74,7 +75,7 @@ const HARPER_PLUGIN = "lisa-harper-fabric";
|
|
|
74
75
|
*/
|
|
75
76
|
const HOOK_CATALOG = [
|
|
76
77
|
{
|
|
77
|
-
id:
|
|
78
|
+
id: INJECT_RULES_ID,
|
|
78
79
|
event: "SessionStart",
|
|
79
80
|
matcher: "",
|
|
80
81
|
scriptFilename: "inject-rules.sh",
|
|
@@ -110,6 +111,7 @@ const HOOK_CATALOG = [
|
|
|
110
111
|
event: "PreToolUse",
|
|
111
112
|
matcher: "Bash",
|
|
112
113
|
scriptFilename: "block-direct-issue-create.sh",
|
|
114
|
+
sourcePlugin: "lisa",
|
|
113
115
|
forProjectTypes: ["*"],
|
|
114
116
|
statusMessage: "Checking work-item filing policy",
|
|
115
117
|
},
|
|
@@ -256,7 +258,7 @@ export async function installHooks(lisaDir, destDir, detectedTypes, previousMana
|
|
|
256
258
|
: [];
|
|
257
259
|
// Step 2: mirror rules from Lisa into .codex/lisa-rules/ (only when
|
|
258
260
|
// inject-rules is being installed — i.e., always, since it's a "*" hook)
|
|
259
|
-
const ruleFiles = applicable.some(e => e.id ===
|
|
261
|
+
const ruleFiles = applicable.some(e => e.id === INJECT_RULES_ID)
|
|
260
262
|
? (await mirrorLisaRules(lisaDir, rulesDir, detectedTypes, "link")).map(file => path.join(LISA_RULES_SUBDIR, file))
|
|
261
263
|
: [];
|
|
262
264
|
// Step 3: tagged-merge hooks.json
|
|
@@ -279,6 +281,245 @@ export async function installHooks(lisaDir, destDir, detectedTypes, previousMana
|
|
|
279
281
|
deleted: Object.freeze(deleted),
|
|
280
282
|
};
|
|
281
283
|
}
|
|
284
|
+
/**
|
|
285
|
+
* Keep previously installed catalog commands functional without registering
|
|
286
|
+
* them again. Copies outlive replacement of the package that owned old links.
|
|
287
|
+
* Host-authored siblings are never pruned. This is an apply-time migration,
|
|
288
|
+
* not runtime/session detection or an assumed hot-reload boundary.
|
|
289
|
+
* @param lisaDir Lisa source/package root.
|
|
290
|
+
* @param destDir Host root.
|
|
291
|
+
* @param detectedTypes Current project types.
|
|
292
|
+
* @param previousManagedFiles Previous manifest ownership.
|
|
293
|
+
* @returns Compatibility files to retain in the current manifest.
|
|
294
|
+
*/
|
|
295
|
+
export async function installHookCompatibility(lisaDir, destDir, detectedTypes, previousManagedFiles) {
|
|
296
|
+
const codexDir = path.join(destDir, ".codex");
|
|
297
|
+
const hooksDir = path.join(codexDir, LISA_HOOKS_SUBDIR);
|
|
298
|
+
const existing = await readHooksFile(path.join(codexDir, HOOKS_FILENAME));
|
|
299
|
+
const taggedCommands = new Set(Object.values(existing.hooks ?? {}).flatMap(groups => groups.flatMap(group => group.hooks
|
|
300
|
+
.filter(hook => hook._lisaManaged === true)
|
|
301
|
+
.map(hook => hook.command))));
|
|
302
|
+
const owned = new Set([
|
|
303
|
+
...previousManagedFiles,
|
|
304
|
+
...HOOK_CATALOG.filter(entry => taggedCommands.has(catalogEntryToSpec(entry, destDir).command)).map(entry => path.join(LISA_HOOKS_SUBDIR, entry.scriptFilename)),
|
|
305
|
+
]);
|
|
306
|
+
const candidates = await Promise.all(HOOK_CATALOG.map(async (entry) => {
|
|
307
|
+
const relative = path.join(LISA_HOOKS_SUBDIR, entry.scriptFilename);
|
|
308
|
+
const keep = owned.has(relative) ||
|
|
309
|
+
taggedCommands.has(catalogEntryToSpec(entry, destDir).command) ||
|
|
310
|
+
(await isManagedSourceLink(path.join(codexDir, relative), resolveHookScript(lisaDir, entry), lisaDir, destDir));
|
|
311
|
+
return keep ? entry : undefined;
|
|
312
|
+
}));
|
|
313
|
+
const retained = candidates.filter((entry) => entry !== undefined);
|
|
314
|
+
if (retained.length === 0)
|
|
315
|
+
return [];
|
|
316
|
+
const sources = compatibilitySources(lisaDir, retained);
|
|
317
|
+
await assertCompatibilityOwnership(sources, codexDir, owned, lisaDir, destDir);
|
|
318
|
+
await fse.ensureDir(hooksDir);
|
|
319
|
+
const entrypoints = new Set(retained.map(entry => entry.scriptFilename));
|
|
320
|
+
const rules = retained.some(entry => entry.id === INJECT_RULES_ID)
|
|
321
|
+
? await copyCompatibilityRules(lisaDir, codexDir, detectedTypes, retained, owned)
|
|
322
|
+
: [];
|
|
323
|
+
// Install complete dependencies before atomically replacing loaded entrypoints.
|
|
324
|
+
const helpers = await copyCompatibilitySources(sources.filter(source => !entrypoints.has(source.filename)), codexDir);
|
|
325
|
+
const scripts = await copyCompatibilitySources(sources.filter(source => entrypoints.has(source.filename)), codexDir);
|
|
326
|
+
return Object.freeze([...scripts, ...helpers, ...rules]);
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* Reject unknown companion collisions before changing any compatibility file.
|
|
330
|
+
* A retained command does not grant ownership of a host-authored helper.
|
|
331
|
+
* @param sources Complete catalog closure.
|
|
332
|
+
* @param codexDir Host Codex root.
|
|
333
|
+
* @param owned Proven manifest/tagged-handler ownership.
|
|
334
|
+
* @param lisaDir Verified Lisa package root.
|
|
335
|
+
* @param destDir Host root.
|
|
336
|
+
*/
|
|
337
|
+
async function assertCompatibilityOwnership(sources, codexDir, owned, lisaDir, destDir) {
|
|
338
|
+
await Promise.all(sources.map(async ({ source, filename }) => {
|
|
339
|
+
const relative = path.join(LISA_HOOKS_SUBDIR, filename);
|
|
340
|
+
const destination = path.join(codexDir, relative);
|
|
341
|
+
const stat = await lstat(destination).catch(error => {
|
|
342
|
+
if (error.code === "ENOENT")
|
|
343
|
+
return undefined;
|
|
344
|
+
throw error;
|
|
345
|
+
});
|
|
346
|
+
if (!stat || owned.has(relative))
|
|
347
|
+
return;
|
|
348
|
+
if (stat.isSymbolicLink()) {
|
|
349
|
+
if (await isManagedSourceLink(destination, source, lisaDir, destDir))
|
|
350
|
+
return;
|
|
351
|
+
}
|
|
352
|
+
else if (stat.isFile() &&
|
|
353
|
+
(await readFile(destination)).equals(await readFile(source))) {
|
|
354
|
+
return;
|
|
355
|
+
}
|
|
356
|
+
throw new Error(`Cannot migrate Codex hooks: .codex/${relative} contains host-owned content. No compatibility files were changed. Preserve it and resolve the source ownership conflict before applying again.`);
|
|
357
|
+
}));
|
|
358
|
+
}
|
|
359
|
+
/**
|
|
360
|
+
* Copy one dependency group before exposing dependent entrypoints.
|
|
361
|
+
* @param sources Package implementations.
|
|
362
|
+
* @param codexDir Host Codex directory.
|
|
363
|
+
* @returns Installed paths.
|
|
364
|
+
*/
|
|
365
|
+
async function copyCompatibilitySources(sources, codexDir) {
|
|
366
|
+
return Promise.all(sources.map(async ({ source, filename }) => {
|
|
367
|
+
const relative = path.join(LISA_HOOKS_SUBDIR, filename);
|
|
368
|
+
await copyManagedCompatibility(source, path.join(codexDir, relative));
|
|
369
|
+
return relative;
|
|
370
|
+
}));
|
|
371
|
+
}
|
|
372
|
+
/**
|
|
373
|
+
* Resolve the full helper/data closure from the existing hook catalog.
|
|
374
|
+
* @param lisaDir Source/package root.
|
|
375
|
+
* @param retained Previously installed catalog entries.
|
|
376
|
+
* @returns Script and companion sources.
|
|
377
|
+
*/
|
|
378
|
+
function compatibilitySources(lisaDir, retained) {
|
|
379
|
+
const helpers = [
|
|
380
|
+
...(retained.some(entry => entry.needsEditPathLib) ? [EDIT_PATHS_LIB] : []),
|
|
381
|
+
...(retained.some(entry => entry.needsEditGate) ? [EDIT_GATE_LIB] : []),
|
|
382
|
+
];
|
|
383
|
+
return [
|
|
384
|
+
...retained.map(entry => ({
|
|
385
|
+
source: resolveHookScript(lisaDir, entry),
|
|
386
|
+
filename: entry.scriptFilename,
|
|
387
|
+
})),
|
|
388
|
+
...helpers.map(filename => ({
|
|
389
|
+
source: resolveBundledScript(filename),
|
|
390
|
+
filename,
|
|
391
|
+
})),
|
|
392
|
+
...(retained.some(entry => entry.sourcePlugin === "lisa")
|
|
393
|
+
? [
|
|
394
|
+
{
|
|
395
|
+
source: path.join(lisaDir, "plugins/lisa/hooks/guard-dedupe.bash"),
|
|
396
|
+
filename: "guard-dedupe.bash",
|
|
397
|
+
},
|
|
398
|
+
]
|
|
399
|
+
: []),
|
|
400
|
+
...(retained.some(entry => entry.sourcePlugin === HARPER_PLUGIN)
|
|
401
|
+
? harperSupportSources(lisaDir)
|
|
402
|
+
: []),
|
|
403
|
+
];
|
|
404
|
+
}
|
|
405
|
+
/**
|
|
406
|
+
* Copy rule dependencies without replacing host-authored rules.
|
|
407
|
+
* @param lisaDir Source/package root.
|
|
408
|
+
* @param codexDir Host Codex directory.
|
|
409
|
+
* @param detectedTypes Current types.
|
|
410
|
+
* @param retained Entries determining required earlier stack rules.
|
|
411
|
+
* @param owned Prior manifest paths.
|
|
412
|
+
* @returns Copied rule paths.
|
|
413
|
+
*/
|
|
414
|
+
async function copyCompatibilityRules(lisaDir, codexDir, detectedTypes, retained, owned) {
|
|
415
|
+
const ruleTypes = [
|
|
416
|
+
...new Set([
|
|
417
|
+
...detectedTypes,
|
|
418
|
+
...retained.flatMap(entry => entry.forProjectTypes.filter(type => type !== "*")),
|
|
419
|
+
]),
|
|
420
|
+
];
|
|
421
|
+
const scratch = await mkdtemp(path.join(codexDir, ".compat-rules-"));
|
|
422
|
+
try {
|
|
423
|
+
const rules = await mirrorLisaRules(lisaDir, scratch, ruleTypes, "link");
|
|
424
|
+
const copied = await Promise.all(rules.map(async (relativeRule) => {
|
|
425
|
+
const relative = path.join(LISA_RULES_SUBDIR, relativeRule);
|
|
426
|
+
const destination = path.join(codexDir, relative);
|
|
427
|
+
const stat = await lstat(destination).catch(() => undefined);
|
|
428
|
+
const source = await readlink(path.join(scratch, relativeRule));
|
|
429
|
+
const linkedRule = stat?.isSymbolicLink() &&
|
|
430
|
+
(await isManagedSourceLink(destination, source, lisaDir, path.dirname(codexDir)));
|
|
431
|
+
if (stat && !linkedRule && !owned.has(relative))
|
|
432
|
+
return undefined;
|
|
433
|
+
await fse.ensureDir(path.dirname(destination));
|
|
434
|
+
await copyManagedCompatibility(path.join(scratch, relativeRule), destination);
|
|
435
|
+
return relative;
|
|
436
|
+
}));
|
|
437
|
+
return copied.filter((file) => file !== undefined);
|
|
438
|
+
}
|
|
439
|
+
finally {
|
|
440
|
+
await rm(scratch, { recursive: true, force: true });
|
|
441
|
+
}
|
|
442
|
+
}
|
|
443
|
+
/**
|
|
444
|
+
* Admit links to known Lisa sources, not host paths with similar suffixes.
|
|
445
|
+
* Canonical installed-package paths also recover genuinely dangling links.
|
|
446
|
+
* @param destination Host script path.
|
|
447
|
+
* @param source Exact shipped source.
|
|
448
|
+
* @param lisaDir Verified Lisa package root.
|
|
449
|
+
* @param destDir Host root.
|
|
450
|
+
* @returns Whether the catalog owns this legacy representation.
|
|
451
|
+
*/
|
|
452
|
+
async function isManagedSourceLink(destination, source, lisaDir, destDir) {
|
|
453
|
+
const stat = await lstat(destination).catch(() => undefined);
|
|
454
|
+
if (!stat?.isSymbolicLink())
|
|
455
|
+
return false;
|
|
456
|
+
const target = path.resolve(path.dirname(destination), await readlink(destination));
|
|
457
|
+
const relative = path.relative(lisaDir, source);
|
|
458
|
+
if (target === path.resolve(source))
|
|
459
|
+
return true;
|
|
460
|
+
if (relative.startsWith(`..${path.sep}`) || path.isAbsolute(relative))
|
|
461
|
+
return false;
|
|
462
|
+
const variants = sourceLocationVariants(relative);
|
|
463
|
+
if (variants.some(file => target === path.resolve(lisaDir, file)))
|
|
464
|
+
return true;
|
|
465
|
+
const installedRoot = path.join(destDir, "node_modules/@codyswann/lisa");
|
|
466
|
+
return isLisaPackageTarget(target, variants, installedRoot);
|
|
467
|
+
}
|
|
468
|
+
/**
|
|
469
|
+
* Source and compiled trees contain the same legacy bundled scripts.
|
|
470
|
+
* @param relative Source path within the verified Lisa package.
|
|
471
|
+
* @returns Exact supported source locations within that package.
|
|
472
|
+
*/
|
|
473
|
+
function sourceLocationVariants(relative) {
|
|
474
|
+
const tree = ["src", "dist"].find(directory => relative.startsWith(path.join(directory, "codex", "scripts") + path.sep));
|
|
475
|
+
return tree === undefined
|
|
476
|
+
? [relative]
|
|
477
|
+
: [
|
|
478
|
+
relative,
|
|
479
|
+
path.join(tree === "src" ? "dist" : "src", "codex", "scripts", path.basename(relative)),
|
|
480
|
+
];
|
|
481
|
+
}
|
|
482
|
+
/**
|
|
483
|
+
* Verify old package/store roots rather than relying on their directory layout.
|
|
484
|
+
* @param target Resolved legacy link target.
|
|
485
|
+
* @param variants Exact supported paths within a Lisa package.
|
|
486
|
+
* @param installedRoot Canonical host package path, including dangling installs.
|
|
487
|
+
* @returns Whether positive package identity owns this expected source path.
|
|
488
|
+
*/
|
|
489
|
+
async function isLisaPackageTarget(target, variants, installedRoot) {
|
|
490
|
+
const roots = variants
|
|
491
|
+
.filter(file => target.endsWith(path.sep + file))
|
|
492
|
+
.map(file => target.slice(0, -(file.length + 1)));
|
|
493
|
+
const verified = await Promise.all(roots.map(async (root) => {
|
|
494
|
+
if (root === path.resolve(installedRoot) && !(await fse.pathExists(root)))
|
|
495
|
+
return true;
|
|
496
|
+
const metadata = await readFile(path.join(root, "package.json"), "utf8")
|
|
497
|
+
.then(raw => JSON.parse(raw))
|
|
498
|
+
.catch(() => undefined);
|
|
499
|
+
return (typeof metadata === "object" &&
|
|
500
|
+
metadata !== null &&
|
|
501
|
+
"name" in metadata &&
|
|
502
|
+
metadata.name === "@codyswann/lisa");
|
|
503
|
+
}));
|
|
504
|
+
return verified.some(Boolean);
|
|
505
|
+
}
|
|
506
|
+
/**
|
|
507
|
+
* Replace a managed representation with executable regular source bytes.
|
|
508
|
+
* @param source Functional shipped implementation.
|
|
509
|
+
* @param destination Old loaded-command path.
|
|
510
|
+
*/
|
|
511
|
+
async function copyManagedCompatibility(source, destination) {
|
|
512
|
+
const content = await readFile(source);
|
|
513
|
+
const scratch = await mkdtemp(path.join(path.dirname(destination), ".compat-file-"));
|
|
514
|
+
try {
|
|
515
|
+
const replacement = path.join(scratch, "replacement");
|
|
516
|
+
await writeFile(replacement, content, { mode: 0o755 });
|
|
517
|
+
await rename(replacement, destination);
|
|
518
|
+
}
|
|
519
|
+
finally {
|
|
520
|
+
await rm(scratch, { force: true, recursive: true });
|
|
521
|
+
}
|
|
522
|
+
}
|
|
282
523
|
/** Project-local directory prefixes wholly owned by the hook installer. */
|
|
283
524
|
const MANAGED_HOOK_PREFIXES = [
|
|
284
525
|
`${LISA_HOOKS_SUBDIR}${path.sep}`,
|
|
@@ -374,7 +615,17 @@ function resolveHookScript(lisaDir, entry) {
|
|
|
374
615
|
* @returns Managed paths relative to `.codex/`.
|
|
375
616
|
*/
|
|
376
617
|
async function linkHarperSupportFiles(lisaDir, hooksDir) {
|
|
377
|
-
const sources =
|
|
618
|
+
const sources = harperSupportSources(lisaDir);
|
|
619
|
+
await Promise.all(sources.map(({ source, filename }) => linkManagedFile(source, path.join(hooksDir, filename))));
|
|
620
|
+
return sources.map(({ filename }) => path.join(LISA_HOOKS_SUBDIR, filename));
|
|
621
|
+
}
|
|
622
|
+
/**
|
|
623
|
+
* Companion sources shared by linked installation and copied compatibility.
|
|
624
|
+
* @param lisaDir Lisa package root.
|
|
625
|
+
* @returns Complete Harper companion list.
|
|
626
|
+
*/
|
|
627
|
+
function harperSupportSources(lisaDir) {
|
|
628
|
+
return [
|
|
378
629
|
{
|
|
379
630
|
source: path.join(lisaDir, "plugins", HARPER_PLUGIN, "hooks", "enforce-config-extensions.mjs"),
|
|
380
631
|
filename: "enforce-config-extensions.mjs",
|
|
@@ -384,8 +635,6 @@ async function linkHarperSupportFiles(lisaDir, hooksDir) {
|
|
|
384
635
|
filename: "generated-artifact-globs.txt",
|
|
385
636
|
},
|
|
386
637
|
];
|
|
387
|
-
await Promise.all(sources.map(({ source, filename }) => linkManagedFile(source, path.join(hooksDir, filename))));
|
|
388
|
-
return sources.map(({ filename }) => path.join(LISA_HOOKS_SUBDIR, filename));
|
|
389
638
|
}
|
|
390
639
|
/**
|
|
391
640
|
* Replace a Lisa-owned project file with a link to its package source.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks-installer.js","sourceRoot":"","sources":["../../src/codex/hooks-installer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hooks-installer.js","sourceRoot":"","sources":["../../src/codex/hooks-installer.ts"],"names":[],"mappings":"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"}
|
package/dist/codex/manifest.d.ts
CHANGED
|
@@ -7,6 +7,8 @@ export interface LisaManagedManifest {
|
|
|
7
7
|
* Used to identify which files to delete when they stop being shipped.
|
|
8
8
|
*/
|
|
9
9
|
readonly files: readonly string[];
|
|
10
|
+
/** Intentional copied commands/data retained for already-loaded sessions. */
|
|
11
|
+
readonly hookCompatibilityFiles?: readonly string[];
|
|
10
12
|
}
|
|
11
13
|
/**
|
|
12
14
|
* Read the Lisa-managed manifest from `<destDir>/.codex/.lisa-managed.json`.
|
|
@@ -19,8 +21,9 @@ export declare function readManagedManifest(destDir: string): Promise<LisaManage
|
|
|
19
21
|
* Write the Lisa-managed manifest to disk, replacing any existing content.
|
|
20
22
|
* @param destDir - Absolute path to the destination project root
|
|
21
23
|
* @param files - Sorted list of relative-to-`.codex/` file paths Lisa shipped
|
|
24
|
+
* @param hookCompatibilityFiles Intentional copied legacy paths.
|
|
22
25
|
*/
|
|
23
|
-
export declare function writeManagedManifest(destDir: string, files: readonly string[]): Promise<void>;
|
|
26
|
+
export declare function writeManagedManifest(destDir: string, files: readonly string[], hookCompatibilityFiles?: readonly string[]): Promise<void>;
|
|
24
27
|
/**
|
|
25
28
|
* Compute the set of stale files: in the previous manifest but not in the
|
|
26
29
|
* new shipment. These are candidates for deletion.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/codex/manifest.ts"],"names":[],"mappings":"AAuBA,mEAAmE;AACnE,eAAO,MAAM,8BAA8B,uBAAuB,CAAC;AAEnE,4CAA4C;AAC5C,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/codex/manifest.ts"],"names":[],"mappings":"AAuBA,mEAAmE;AACnE,eAAO,MAAM,8BAA8B,uBAAuB,CAAC;AAEnE,4CAA4C;AAC5C,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,6EAA6E;IAC7E,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACrD;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,mBAAmB,CAAC,CAY9B;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,sBAAsB,GAAE,SAAS,MAAM,EAAO,GAC7C,OAAO,CAAC,IAAI,CAAC,CAef;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,mBAAmB,EAC7B,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,SAAS,MAAM,EAAE,CAGnB"}
|
package/dist/codex/manifest.js
CHANGED
|
@@ -41,13 +41,17 @@ export async function readManagedManifest(destDir) {
|
|
|
41
41
|
* Write the Lisa-managed manifest to disk, replacing any existing content.
|
|
42
42
|
* @param destDir - Absolute path to the destination project root
|
|
43
43
|
* @param files - Sorted list of relative-to-`.codex/` file paths Lisa shipped
|
|
44
|
+
* @param hookCompatibilityFiles Intentional copied legacy paths.
|
|
44
45
|
*/
|
|
45
|
-
export async function writeManagedManifest(destDir, files) {
|
|
46
|
+
export async function writeManagedManifest(destDir, files, hookCompatibilityFiles = []) {
|
|
46
47
|
const codexDir = path.join(destDir, ".codex");
|
|
47
48
|
await fse.ensureDir(codexDir);
|
|
48
49
|
const manifestPath = path.join(codexDir, LISA_MANAGED_MANIFEST_FILENAME);
|
|
49
50
|
const manifest = {
|
|
50
51
|
files: [...files].sort((a, b) => a.localeCompare(b)),
|
|
52
|
+
...(hookCompatibilityFiles.length > 0
|
|
53
|
+
? { hookCompatibilityFiles: [...hookCompatibilityFiles] }
|
|
54
|
+
: {}),
|
|
51
55
|
};
|
|
52
56
|
await writeFile(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`, "utf8");
|
|
53
57
|
}
|
|
@@ -81,6 +85,18 @@ function validateManifest(parsed, manifestPath) {
|
|
|
81
85
|
if (files.length !== obj.files.length) {
|
|
82
86
|
throw new Error(`Invalid Lisa-managed manifest at ${manifestPath}: "files" must contain only strings`);
|
|
83
87
|
}
|
|
84
|
-
|
|
88
|
+
if (obj.hookCompatibilityFiles !== undefined &&
|
|
89
|
+
(!Array.isArray(obj.hookCompatibilityFiles) ||
|
|
90
|
+
obj.hookCompatibilityFiles.some(file => typeof file !== "string" || !files.includes(file)))) {
|
|
91
|
+
throw new Error(`Invalid Lisa-managed manifest at ${manifestPath}: compatibility files must be managed files`);
|
|
92
|
+
}
|
|
93
|
+
return {
|
|
94
|
+
files: Object.freeze(files),
|
|
95
|
+
...(obj.hookCompatibilityFiles !== undefined
|
|
96
|
+
? {
|
|
97
|
+
hookCompatibilityFiles: Object.freeze(obj.hookCompatibilityFiles),
|
|
98
|
+
}
|
|
99
|
+
: {}),
|
|
100
|
+
};
|
|
85
101
|
}
|
|
86
102
|
//# sourceMappingURL=manifest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/codex/manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,mEAAmE;AACnE,MAAM,CAAC,MAAM,8BAA8B,GAAG,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/codex/manifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,10 @@ export interface ProjectHooksCleanupResult {
|
|
|
3
3
|
readonly deleted: readonly string[];
|
|
4
4
|
}
|
|
5
5
|
/**
|
|
6
|
-
* Remove only Lisa-tagged
|
|
6
|
+
* Remove only Lisa-tagged handlers. Loaded commands still need their files.
|
|
7
7
|
* @param destDir Host project root.
|
|
8
|
-
* @param
|
|
8
|
+
* @param _previousManagedFiles Previous `.codex` ownership entries.
|
|
9
9
|
* @returns Removed Lisa-owned paths.
|
|
10
10
|
*/
|
|
11
|
-
export declare function retireProjectHooks(destDir: string,
|
|
11
|
+
export declare function retireProjectHooks(destDir: string, _previousManagedFiles: readonly string[]): Promise<ProjectHooksCleanupResult>;
|
|
12
12
|
//# sourceMappingURL=project-hooks-cleanup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-hooks-cleanup.d.ts","sourceRoot":"","sources":["../../src/codex/project-hooks-cleanup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"project-hooks-cleanup.d.ts","sourceRoot":"","sources":["../../src/codex/project-hooks-cleanup.ts"],"names":[],"mappings":"AAWA,6CAA6C;AAC7C,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,qBAAqB,EAAE,SAAS,MAAM,EAAE,GACvC,OAAO,CAAC,yBAAyB,CAAC,CAQpC"}
|