@codyswann/lisa 4.17.19 → 4.18.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/cli/ui-config-write-document.d.ts +53 -0
- package/dist/cli/ui-config-write-document.d.ts.map +1 -0
- package/dist/cli/ui-config-write-document.js +212 -0
- package/dist/cli/ui-config-write-document.js.map +1 -0
- package/dist/cli/ui-config-write-patch-plan.d.ts +30 -0
- package/dist/cli/ui-config-write-patch-plan.d.ts.map +1 -0
- package/dist/cli/ui-config-write-patch-plan.js +151 -0
- package/dist/cli/ui-config-write-patch-plan.js.map +1 -0
- package/dist/cli/ui-config-write-persistence.d.ts +19 -0
- package/dist/cli/ui-config-write-persistence.d.ts.map +1 -0
- package/dist/cli/ui-config-write-persistence.js +294 -0
- package/dist/cli/ui-config-write-persistence.js.map +1 -0
- package/dist/cli/ui-config-write-property-edits.d.ts +40 -0
- package/dist/cli/ui-config-write-property-edits.d.ts.map +1 -0
- package/dist/cli/ui-config-write-property-edits.js +250 -0
- package/dist/cli/ui-config-write-property-edits.js.map +1 -0
- package/dist/cli/ui-config-write-provenance.d.ts +12 -0
- package/dist/cli/ui-config-write-provenance.d.ts.map +1 -0
- package/dist/cli/ui-config-write-provenance.js +29 -0
- package/dist/cli/ui-config-write-provenance.js.map +1 -0
- package/dist/cli/ui-config-write-root-identity.d.ts +25 -0
- package/dist/cli/ui-config-write-root-identity.d.ts.map +1 -0
- package/dist/cli/ui-config-write-root-identity.js +66 -0
- package/dist/cli/ui-config-write-root-identity.js.map +1 -0
- package/dist/cli/ui-config-write.d.ts.map +1 -1
- package/dist/cli/ui-config-write.js +47 -92
- package/dist/cli/ui-config-write.js.map +1 -1
- package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
- package/dist/core/upstream-evidence-manifest.js +7 -1
- package/dist/core/upstream-evidence-manifest.js.map +1 -1
- package/dist/sync/json-path.d.ts +10 -0
- package/dist/sync/json-path.d.ts.map +1 -1
- package/dist/sync/json-path.js +14 -0
- package/dist/sync/json-path.js.map +1 -1
- package/dist/sync/sync-population.d.ts +6 -0
- package/dist/sync/sync-population.d.ts.map +1 -1
- package/dist/sync/sync-population.js +8 -0
- package/dist/sync/sync-population.js.map +1 -1
- package/dist/utils/atomic-file-write.d.ts +5 -4
- package/dist/utils/atomic-file-write.d.ts.map +1 -1
- package/dist/utils/atomic-file-write.js +3 -0
- package/dist/utils/atomic-file-write.js.map +1 -1
- package/package.json +2 -2
- 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/ui/README.md +62 -8
package/dist/sync/json-path.d.ts
CHANGED
|
@@ -28,6 +28,16 @@ export declare function isJsonObject(value: unknown): value is JsonObject;
|
|
|
28
28
|
* @returns The value at the path, or undefined when any segment is missing
|
|
29
29
|
*/
|
|
30
30
|
export declare function getAtPath(root: unknown, dotPath: string): JsonValue | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* Read an exact property path without interpreting dots inside a segment.
|
|
33
|
+
*
|
|
34
|
+
* Callers that already decoded a structural path must retain those boundaries;
|
|
35
|
+
* joining and reparsing them can redirect a lookup to a nested lookalike.
|
|
36
|
+
* @param root - Object to inspect
|
|
37
|
+
* @param propertyPath - Exact decoded property names
|
|
38
|
+
* @returns Value at the path, or undefined when any segment is absent
|
|
39
|
+
*/
|
|
40
|
+
export declare function getAtPropertyPath(root: unknown, propertyPath: readonly string[]): JsonValue | undefined;
|
|
31
41
|
/**
|
|
32
42
|
* Return a copy of a JSON object with the value at a dot path replaced.
|
|
33
43
|
* Missing intermediate objects are created; existing siblings are preserved.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-path.d.ts","sourceRoot":"","sources":["../../src/sync/json-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,iCAAiC;AACjC,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,EAAE,GACX;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAE1C,kDAAkD;AAClD,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAE/D;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAEhE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,MAAM,GACd,SAAS,GAAG,SAAS,CAYvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,GACf,UAAU,CAkBZ;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAe1D;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,GAAG,SAAS,EAC5B,QAAQ,EAAE,SAAS,GAClB,SAAS,CAoBX"}
|
|
1
|
+
{"version":3,"file":"json-path.d.ts","sourceRoot":"","sources":["../../src/sync/json-path.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,iCAAiC;AACjC,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,EAAE,GACX;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAE1C,kDAAkD;AAClD,MAAM,MAAM,UAAU,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAE/D;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAEhE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,MAAM,GACd,SAAS,GAAG,SAAS,CAYvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,EACb,YAAY,EAAE,SAAS,MAAM,EAAE,GAC9B,SAAS,GAAG,SAAS,CAQvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,SAAS,GACf,UAAU,CAkBZ;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAe1D;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,GAAG,SAAS,EAC5B,QAAQ,EAAE,SAAS,GAClB,SAAS,CAoBX"}
|
package/dist/sync/json-path.js
CHANGED
|
@@ -30,6 +30,20 @@ export function getAtPath(root, dotPath) {
|
|
|
30
30
|
? node[segment]
|
|
31
31
|
: undefined, root);
|
|
32
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Read an exact property path without interpreting dots inside a segment.
|
|
35
|
+
*
|
|
36
|
+
* Callers that already decoded a structural path must retain those boundaries;
|
|
37
|
+
* joining and reparsing them can redirect a lookup to a nested lookalike.
|
|
38
|
+
* @param root - Object to inspect
|
|
39
|
+
* @param propertyPath - Exact decoded property names
|
|
40
|
+
* @returns Value at the path, or undefined when any segment is absent
|
|
41
|
+
*/
|
|
42
|
+
export function getAtPropertyPath(root, propertyPath) {
|
|
43
|
+
return propertyPath.reduce((node, segment) => isJsonObject(node)
|
|
44
|
+
? node[segment]
|
|
45
|
+
: undefined, root);
|
|
46
|
+
}
|
|
33
47
|
/**
|
|
34
48
|
* Return a copy of a JSON object with the value at a dot path replaced.
|
|
35
49
|
* Missing intermediate objects are created; existing siblings are preserved.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-path.js","sourceRoot":"","sources":["../../src/sync/json-path.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"json-path.js","sourceRoot":"","sources":["../../src/sync/json-path.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
* @module sync/sync-population
|
|
4
4
|
*/
|
|
5
5
|
import { type JsonObject, type JsonValue } from "./json-path.js";
|
|
6
|
+
/**
|
|
7
|
+
* Address one literal provenance property without interpreting dots in its key.
|
|
8
|
+
* @param key - Registry key stored literally under `_lisaSync.populated`
|
|
9
|
+
* @returns Exact JSON property path to the provenance record
|
|
10
|
+
*/
|
|
11
|
+
export declare function populationPropertyPath(key: string): readonly string[];
|
|
6
12
|
/**
|
|
7
13
|
* Read recorded sync provenance for one literal config key.
|
|
8
14
|
* @param committed - Committed config object
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-population.d.ts","sourceRoot":"","sources":["../../src/sync/sync-population.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,gBAAgB,CAAC;AAIxB;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,UAAU,EACrB,GAAG,EAAE,MAAM,GACV,SAAS,GAAG,SAAS,CAGvB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,UAAU,EACrB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,GACf,UAAU,CAOZ;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,UAAU,EACrB,GAAG,EAAE,MAAM,GACV,UAAU,CAOZ"}
|
|
1
|
+
{"version":3,"file":"sync-population.d.ts","sourceRoot":"","sources":["../../src/sync/sync-population.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,SAAS,EACf,MAAM,gBAAgB,CAAC;AAIxB;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAErE;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,UAAU,EACrB,GAAG,EAAE,MAAM,GACV,SAAS,GAAG,SAAS,CAGvB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,UAAU,EACrB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,GACf,UAAU,CAOZ;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,UAAU,EACrB,GAAG,EAAE,MAAM,GACV,UAAU,CAOZ"}
|
|
@@ -4,6 +4,14 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { getAtPath, isJsonObject, setAtPath, } from "./json-path.js";
|
|
6
6
|
const SYNC_METADATA_KEY = "_lisaSync";
|
|
7
|
+
/**
|
|
8
|
+
* Address one literal provenance property without interpreting dots in its key.
|
|
9
|
+
* @param key - Registry key stored literally under `_lisaSync.populated`
|
|
10
|
+
* @returns Exact JSON property path to the provenance record
|
|
11
|
+
*/
|
|
12
|
+
export function populationPropertyPath(key) {
|
|
13
|
+
return [SYNC_METADATA_KEY, "populated", key];
|
|
14
|
+
}
|
|
7
15
|
/**
|
|
8
16
|
* Read recorded sync provenance for one literal config key.
|
|
9
17
|
* @param committed - Committed config object
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-population.js","sourceRoot":"","sources":["../../src/sync/sync-population.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,SAAS,EACT,YAAY,EACZ,SAAS,GAGV,MAAM,gBAAgB,CAAC;AAExB,MAAM,iBAAiB,GAAG,WAAW,CAAC;AAEtC;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAAqB,EACrB,GAAW;IAEX,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,CAAC,CAAC;IACzE,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAAqB,EACrB,GAAW,EACX,KAAgB;IAEhB,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,CAAC,CAAC;IACzE,MAAM,eAAe,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,OAAO,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,EAAE;QAC5D,GAAG,eAAe;QAClB,CAAC,GAAG,CAAC,EAAE,KAAK;KACb,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAAqB,EACrB,GAAW;IAEX,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,CAAC,CAAC;IACzE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;QAC/D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,SAAS,CAAC;IACpD,OAAO,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,EAAE,SAAS,CAAC,CAAC;AAC3E,CAAC"}
|
|
1
|
+
{"version":3,"file":"sync-population.js","sourceRoot":"","sources":["../../src/sync/sync-population.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,SAAS,EACT,YAAY,EACZ,SAAS,GAGV,MAAM,gBAAgB,CAAC;AAExB,MAAM,iBAAiB,GAAG,WAAW,CAAC;AAEtC;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,OAAO,CAAC,iBAAiB,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAAqB,EACrB,GAAW;IAEX,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,CAAC,CAAC;IACzE,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAAqB,EACrB,GAAW,EACX,KAAgB;IAEhB,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,CAAC,CAAC;IACzE,MAAM,eAAe,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,OAAO,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,EAAE;QAC5D,GAAG,eAAe;QAClB,CAAC,GAAG,CAAC,EAAE,KAAK;KACb,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAAqB,EACrB,GAAW;IAEX,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,CAAC,CAAC;IACzE,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;QAC/D,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,GAAG,SAAS,CAAC;IACpD,OAAO,SAAS,CAAC,SAAS,EAAE,GAAG,iBAAiB,YAAY,EAAE,SAAS,CAAC,CAAC;AAC3E,CAAC"}
|
|
@@ -2,10 +2,11 @@ import { type OpenDirectory } from "./directory-sync.js";
|
|
|
2
2
|
/** Injectable collaborators and per-call policy for {@link writeFileAtomically}. */
|
|
3
3
|
export interface AtomicWriteOptions {
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
5
|
+
* Exact POSIX permission bits for the published file. Explicit modes are
|
|
6
|
+
* applied after creation so umask cannot narrow an existing permissive mode.
|
|
7
|
+
* Omit to keep the platform default (`0o666` minus umask) — the learnings
|
|
8
|
+
* ledger is a committed, human-read file, and forcing `0o600` would silently
|
|
9
|
+
* tighten its permissions on the next write.
|
|
9
10
|
*/
|
|
10
11
|
readonly mode?: number;
|
|
11
12
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-file-write.d.ts","sourceRoot":"","sources":["../../src/utils/atomic-file-write.ts"],"names":[],"mappings":"AAqBA,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,qBAAqB,CAAC;AAE7B,oFAAoF;AACpF,MAAM,WAAW,kBAAkB;IACjC
|
|
1
|
+
{"version":3,"file":"atomic-file-write.d.ts","sourceRoot":"","sources":["../../src/utils/atomic-file-write.ts"],"names":[],"mappings":"AAqBA,OAAO,EAEL,KAAK,aAAa,EACnB,MAAM,qBAAqB,CAAC;AAE7B,oFAAoF;AACpF,MAAM,WAAW,kBAAkB;IACjC;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,+EAA+E;IAC/E,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,2EAA2E;IAC3E,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3C;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAcf"}
|
|
@@ -51,6 +51,9 @@ async function writeDurableTemporary(temporary, content, options) {
|
|
|
51
51
|
: await open(temporary, "wx", options.mode);
|
|
52
52
|
try {
|
|
53
53
|
await handle.writeFile(content, "utf8");
|
|
54
|
+
if (options.mode !== undefined) {
|
|
55
|
+
await handle.chmod(options.mode);
|
|
56
|
+
}
|
|
54
57
|
await handle.sync();
|
|
55
58
|
await options.onFileSync?.();
|
|
56
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-file-write.js","sourceRoot":"","sources":["../../src/utils/atomic-file-write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EACL,uBAAuB,GAExB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"atomic-file-write.js","sourceRoot":"","sources":["../../src/utils/atomic-file-write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EACL,uBAAuB,GAExB,MAAM,qBAAqB,CAAC;AAyB7B;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAc,EACd,OAAe,EACf,UAA8B,EAAE;IAEhC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,SAAS,EACT,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,UAAU,EAAE,MAAM,CACtE,CAAC;IACF,IAAI,CAAC;QACH,MAAM,qBAAqB,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACzD,MAAM,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;QAC/B,MAAM,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAChC,MAAM,uBAAuB,CAAC,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAClE,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,qBAAqB,CAClC,SAAiB,EACjB,OAAe,EACf,OAA2B;IAE3B,MAAM,MAAM,GACV,OAAO,CAAC,IAAI,KAAK,SAAS;QACxB,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC;QAC7B,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACxC,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,MAAM,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;IAC/B,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -153,7 +153,7 @@
|
|
|
153
153
|
"zod-validation-error": "^4.0.0"
|
|
154
154
|
},
|
|
155
155
|
"name": "@codyswann/lisa",
|
|
156
|
-
"version": "4.
|
|
156
|
+
"version": "4.18.0",
|
|
157
157
|
"description": "Claude Code governance framework that applies guardrails, guidance, and automated enforcement to projects",
|
|
158
158
|
"main": "dist/index.js",
|
|
159
159
|
"exports": {
|
|
@@ -292,5 +292,5 @@
|
|
|
292
292
|
"vite": "^8.0.16"
|
|
293
293
|
},
|
|
294
294
|
"type": "module",
|
|
295
|
-
"lisaReleaseCommit": "
|
|
295
|
+
"lisaReleaseCommit": "95eda2c247990719c0ddce609e8f895cb25b148a"
|
|
296
296
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.18.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.18.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, across Claude and Codex.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.18.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.18.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.18.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|