@vess-id/vess 0.0.0-dev-20261015223024 โ†’ 0.0.0-dev-20261015225322

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.
@@ -1 +1 @@
1
- {"version":3,"file":"execution-engine.d.ts","sourceRoot":"","sources":["../../src/core/execution-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-engine.d.ts","sourceRoot":"","sources":["../../src/core/execution-engine.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EACL,mBAAmB,EAKpB,MAAM,2BAA2B,CAAA;AAIlC,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAa/D,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE1F,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,mBAAmB,EACjB,eAAe,GACf,iBAAiB,GACjB,kBAAkB,GAClB,cAAc,GACd,mBAAmB,GACnB,YAAY,GACZ,YAAY,GACZ,cAAc,GACd,aAAa,CAChB,CAAA;AA6BD,qBAAa,eAAe;IA4BxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAhCjC,OAAO,CAAC,UAAU,CAAC,CAAmC;IACtD,OAAO,CAAC,eAAe,CAAQ;IAC/B;;;;OAIG;IACH,OAAO,CAAC,yBAAyB,CAAI;IACrC;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB,CAA6B;IACzD,+FAA+F;IAC/F,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;IACrD;;;;;;OAMG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,8BAA8B,CAAQ;gBAG3C,eAAe,EAAE,eAAe,EAChC,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,GAAG,IAAI,EAC/B,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,gBAAgB,EACzB,aAAa,CAAC,EAAE,aAAa,YAAA;IAGhD;;;OAGG;IACH,aAAa,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAI5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACH,OAAO,CAAC,qBAAqB;IAgG7B;;;;;;;;;;OAUG;IACH,IAAI,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAE/C;IAED;;;OAGG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;IAuG9D,qFAAqF;IACrF,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED;;;;;;;;;;;;;;OAcG;IACG,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IAoD7D;;;;;OAKG;IACG,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA0E1D;;;;;;;;;;OAUG;IACH,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,qBAAqB;IAoB7B;;;;;;;;;;;;;OAaG;YACW,iBAAiB;IAmF/B;;;OAGG;IACH,OAAO,CAAC,SAAS;IAejB,iFAAiF;YACnE,MAAM;IAyCpB,8FAA8F;IAC9F,OAAO,CAAC,mBAAmB;IAY3B,oFAAoF;IACpF,OAAO,CAAC,gBAAgB;IAWxB,mGAAmG;IACnG,OAAO,CAAC,kBAAkB;IAS1B,sGAAsG;IACtG,OAAO,CAAC,cAAc;IAUtB;;;;OAIG;YACW,qBAAqB;IA4DnC;;;;;;;;OAQG;YACW,gBAAgB;IAc9B,4FAA4F;YAC9E,gBAAgB;IA6C9B,mGAAmG;IACnG,OAAO,CAAC,aAAa;IAsDrB;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAqBhB,4EAA4E;IAC5E,OAAO,CAAC,QAAQ;IAaV,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC;IAYpD;;;OAGG;YACW,iBAAiB;IA2B/B,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,QAAQ;CA+BjB"}
@@ -312,14 +312,17 @@ class ExecutionEngine {
312
312
  (action === 'os.process.run' ? input.command?.join(' ') : undefined);
313
313
  let normalizedResource;
314
314
  let resourceFingerprint;
315
+ let policyResource;
315
316
  if ((0, executor_registry_1.isLocalAction)(action) && input.file_path) {
316
317
  normalizedResource = (0, resource_canonicalizer_1.canonicalizePath)(input.file_path);
317
318
  resourceFingerprint = (0, resource_canonicalizer_1.computeFingerprint)(normalizedResource, this.context.rootDid);
319
+ // Q22: policy keeps matching the path it matched before (a new file's folders unresolved).
320
+ policyResource = (0, resource_canonicalizer_1.canonicalizePathForPolicy)(input.file_path);
318
321
  }
319
322
  // 3. Policy evaluation (local + org deny check)
320
323
  const policyResult = this.policyEvaluator.evaluate(provider, action.replace(`${provider}.`, ''), {
321
324
  type: this.getResourceType(action),
322
- pattern: normalizedResource || input.file_path,
325
+ pattern: policyResource || input.file_path,
323
326
  });
324
327
  if (!policyResult.allowed) {
325
328
  this.logAudit({
@@ -1 +1 @@
1
- {"version":3,"file":"execution-engine.js","sourceRoot":"","sources":["../../src/core/execution-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-engine.js","sourceRoot":"","sources":["../../src/core/execution-engine.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"secret-file.d.ts","sourceRoot":"","sources":["../../src/executor/secret-file.ts"],"names":[],"mappings":"AA0BA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,EAAE,MAAM,CAAA;IAC1B,mBAAmB,EAAE,MAAM,CAAA;CAC5B;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,gBAAgB,CAmD7F;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,iBAAiB,GACzB,gBAAgB,CAqDlB"}
1
+ {"version":3,"file":"secret-file.d.ts","sourceRoot":"","sources":["../../src/executor/secret-file.ts"],"names":[],"mappings":"AAmDA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,EAAE,MAAM,CAAA;IAC1B,mBAAmB,EAAE,MAAM,CAAA;CAC5B;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,gBAAgB,CAmD7F;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,iBAAiB,GACzB,gBAAgB,CAkElB"}
@@ -39,9 +39,9 @@ const fs = __importStar(require("fs"));
39
39
  const resource_canonicalizer_1 = require("../utils/resource-canonicalizer");
40
40
  /**
41
41
  * ๐Ÿ”ด Never follow a symbolic link at the leaf (B3b security review I-1). `canonicalizePath` resolves
42
- * links with realpath, but a DANGLING link (planted after the approval) cannot be resolved: the path
43
- * comes back unchanged, the `approvedResource` comparison passes, and a plain open would follow the
44
- * link and create / read its target. `O_NOFOLLOW` makes the open itself refuse a link (no gap between
42
+ * links with realpath, but a DANGLING link (planted after the approval) cannot be resolved: its parent
43
+ * folders are resolved but the leaf stays the link's own path, the `approvedResource` comparison
44
+ * passes, and a plain open would follow the link and create / read its target. `O_NOFOLLOW` makes the open itself refuse a link (no gap between
45
45
  * the check and the open); the `lstat` check covers platforms without `O_NOFOLLOW`.
46
46
  */
47
47
  const O_NOFOLLOW = fs.constants.O_NOFOLLOW ?? 0;
@@ -58,6 +58,26 @@ function isLinkOpenError(err) {
58
58
  // O_NOFOLLOW on a link: ELOOP (Linux / macOS); EMLINK on some BSDs.
59
59
  return err?.code === 'ELOOP' || err?.code === 'EMLINK';
60
60
  }
61
+ /** Q-7: mode for a secret file `os.secret.write` creates (an existing file keeps its own mode). */
62
+ const NEW_SECRET_FILE_MODE = 0o600;
63
+ const PARENT_SWAPPED_REFUSED = 'Resource mismatch: the folder of the approved path changed while the file was being opened (no content was written; an empty file may have been created)';
64
+ /**
65
+ * Q22: the re-check right before the write, after the open. The path resolves to the same string as the
66
+ * approved one (no parent folder was swapped in during the open), and the opened file is the one at that
67
+ * path (same device and inode as a fresh stat of it). If either fails, the open went somewhere else.
68
+ */
69
+ function openedFileIsTheApprovedOne(fd, filePath, normalizedResource) {
70
+ if ((0, resource_canonicalizer_1.canonicalizePath)(filePath) !== normalizedResource)
71
+ return false;
72
+ try {
73
+ const opened = fs.fstatSync(fd);
74
+ const atPath = fs.lstatSync(normalizedResource);
75
+ return atPath.isFile() && opened.dev === atPath.dev && opened.ino === atPath.ino;
76
+ }
77
+ catch {
78
+ return false;
79
+ }
80
+ }
61
81
  /**
62
82
  * Read a secret file with resource verification (spec ยง8.3).
63
83
  *
@@ -145,9 +165,22 @@ function writeSecretFile(filePath, content, context) {
145
165
  return { success: false, error: SYMLINK_REFUSED, normalizedResource, resourceFingerprint };
146
166
  }
147
167
  try {
148
- // Same flags and default mode as `writeFileSync(path)` ('w' = create + truncate), plus O_NOFOLLOW.
149
- const fd = fs.openSync(normalizedResource, fs.constants.O_WRONLY | fs.constants.O_CREAT | fs.constants.O_TRUNC | O_NOFOLLOW, 0o666);
168
+ // ๐Ÿ”ด Q-7: a NEW secret file is created 0600 (owner only; the umask can only narrow it further). The
169
+ // mode argument is ignored for a file that already exists, so an existing file keeps its mode.
170
+ // ๐Ÿ”ด Q22: no O_TRUNC here. The parent folder can still be swapped between the check above and this
171
+ // open; the open is checked first (`openedFileIsTheApprovedOne`) and the file is truncated and
172
+ // written only after that check, so a swapped-in target is never truncated or written.
173
+ const fd = fs.openSync(normalizedResource, fs.constants.O_WRONLY | fs.constants.O_CREAT | O_NOFOLLOW, NEW_SECRET_FILE_MODE);
150
174
  try {
175
+ if (!openedFileIsTheApprovedOne(fd, filePath, normalizedResource)) {
176
+ return {
177
+ success: false,
178
+ error: PARENT_SWAPPED_REFUSED,
179
+ normalizedResource,
180
+ resourceFingerprint,
181
+ };
182
+ }
183
+ fs.ftruncateSync(fd, 0);
151
184
  fs.writeFileSync(fd, content, 'utf-8');
152
185
  }
153
186
  finally {
@@ -1 +1 @@
1
- {"version":3,"file":"secret-file.js","sourceRoot":"","sources":["../../src/executor/secret-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"secret-file.js","sourceRoot":"","sources":["../../src/executor/secret-file.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,34 @@
5
5
  * 1. Expand ~ to home directory
6
6
  * 2. Convert to absolute path
7
7
  * 3. Normalize . and ..
8
- * 4. Resolve symlinks (realpath) if file exists
8
+ * 4. Resolve symlinks (realpath). If the file does not exist yet, resolve the deepest folder on the
9
+ * path that does exist and keep the rest of the path as written (Q22, R19)
9
10
  * 5. Normalize case (macOS is case-insensitive)
11
+ *
12
+ * ๐Ÿ”ด Q22 (owner decision 2026-10-15): a file that does not exist yet (a new `os.secret.write`) used to come
13
+ * back as the normalised path, with its parent folders unresolved. The approved path then did not name
14
+ * the real folder, and a symlink swapped in at the parent after the approval produced the same string at
15
+ * execution time. Resolving the existing part freezes the parent's realpath in the approved path; the
16
+ * executor canonicalises again right before the write, and a swapped parent gives a different string.
17
+ * A DANGLING symlink at the leaf is not resolved (realpath fails on it): it stays the link's own path and
18
+ * the executor refuses it (lstat + O_NOFOLLOW, `executor/secret-file.ts`).
10
19
  */
11
20
  export declare function canonicalizePath(filePath: string): string;
21
+ /**
22
+ * The path local / org policy rules are matched against: the realpath when the file exists, otherwise
23
+ * the normalised path as written (no folder resolved). This is what `canonicalizePath` returned for
24
+ * every path before Q22.
25
+ *
26
+ * ๐Ÿ”ด Used for the policy check of the LLM path (`ExecutionEngine.execute`), so that Q22 does not change
27
+ * which deny rules match there: a deny rule written through a symlinked folder (e.g. `/tmp/**` on macOS,
28
+ * where the real folder is `/private/tmp`) still denies a NEW file there, as it did before.
29
+ * NOT covered (raised to the owner with Q22-b, "should policy also match the resolved path"):
30
+ * - the approval pull (`executeApproved`) checks the frozen `file_path`, which for a new file is now
31
+ * resolved; the path as written is not stored with the approval, so it cannot be recovered there.
32
+ * (The legacy offline check that also used `canonicalizePath` was deleted by B4, #2344; after B4 these
33
+ * two are the only policy checks on a local path.)
34
+ */
35
+ export declare function canonicalizePathForPolicy(filePath: string): string;
12
36
  /**
13
37
  * Compute a fingerprint for a resource (spec ยง8.3).
14
38
  *
@@ -1 +1 @@
1
- {"version":3,"file":"resource-canonicalizer.d.ts","sourceRoot":"","sources":["../../src/utils/resource-canonicalizer.ts"],"names":[],"mappings":"AAKA;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAiCzD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,GACf,MAAM,CAYR"}
1
+ {"version":3,"file":"resource-canonicalizer.d.ts","sourceRoot":"","sources":["../../src/utils/resource-canonicalizer.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQlE;AAiDD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAYlF"}
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.canonicalizePath = canonicalizePath;
37
+ exports.canonicalizePathForPolicy = canonicalizePathForPolicy;
37
38
  exports.computeFingerprint = computeFingerprint;
38
39
  const path = __importStar(require("path"));
39
40
  const os = __importStar(require("os"));
@@ -46,10 +47,46 @@ const crypto_1 = require("crypto");
46
47
  * 1. Expand ~ to home directory
47
48
  * 2. Convert to absolute path
48
49
  * 3. Normalize . and ..
49
- * 4. Resolve symlinks (realpath) if file exists
50
+ * 4. Resolve symlinks (realpath). If the file does not exist yet, resolve the deepest folder on the
51
+ * path that does exist and keep the rest of the path as written (Q22, R19)
50
52
  * 5. Normalize case (macOS is case-insensitive)
53
+ *
54
+ * ๐Ÿ”ด Q22 (owner decision 2026-10-15): a file that does not exist yet (a new `os.secret.write`) used to come
55
+ * back as the normalised path, with its parent folders unresolved. The approved path then did not name
56
+ * the real folder, and a symlink swapped in at the parent after the approval produced the same string at
57
+ * execution time. Resolving the existing part freezes the parent's realpath in the approved path; the
58
+ * executor canonicalises again right before the write, and a swapped parent gives a different string.
59
+ * A DANGLING symlink at the leaf is not resolved (realpath fails on it): it stays the link's own path and
60
+ * the executor refuses it (lstat + O_NOFOLLOW, `executor/secret-file.ts`).
51
61
  */
52
62
  function canonicalizePath(filePath) {
63
+ return canonicalize(filePath, realpathOfExistingPart);
64
+ }
65
+ /**
66
+ * The path local / org policy rules are matched against: the realpath when the file exists, otherwise
67
+ * the normalised path as written (no folder resolved). This is what `canonicalizePath` returned for
68
+ * every path before Q22.
69
+ *
70
+ * ๐Ÿ”ด Used for the policy check of the LLM path (`ExecutionEngine.execute`), so that Q22 does not change
71
+ * which deny rules match there: a deny rule written through a symlinked folder (e.g. `/tmp/**` on macOS,
72
+ * where the real folder is `/private/tmp`) still denies a NEW file there, as it did before.
73
+ * NOT covered (raised to the owner with Q22-b, "should policy also match the resolved path"):
74
+ * - the approval pull (`executeApproved`) checks the frozen `file_path`, which for a new file is now
75
+ * resolved; the path as written is not stored with the approval, so it cannot be recovered there.
76
+ * (The legacy offline check that also used `canonicalizePath` was deleted by B4, #2344; after B4 these
77
+ * two are the only policy checks on a local path.)
78
+ */
79
+ function canonicalizePathForPolicy(filePath) {
80
+ return canonicalize(filePath, absPath => {
81
+ try {
82
+ return fs.realpathSync(absPath);
83
+ }
84
+ catch {
85
+ return absPath;
86
+ }
87
+ });
88
+ }
89
+ function canonicalize(filePath, resolveLinks) {
53
90
  let resolved = filePath;
54
91
  // 1. Expand ~
55
92
  if (resolved.startsWith('~/') || resolved === '~') {
@@ -61,13 +98,8 @@ function canonicalizePath(filePath) {
61
98
  }
62
99
  // 3. Normalize . and ..
63
100
  resolved = path.normalize(resolved);
64
- // 4. Resolve symlinks if file exists
65
- try {
66
- resolved = fs.realpathSync(resolved);
67
- }
68
- catch {
69
- // File doesn't exist yet, use normalized path
70
- }
101
+ // 4. Resolve symlinks; for a path that does not exist yet, through its deepest existing folder
102
+ resolved = resolveLinks(resolved);
71
103
  // 5. Case normalization (macOS is case-insensitive)
72
104
  // NOTE: Fingerprints generated on macOS (lowercased) will differ from Linux
73
105
  // (case-preserved) for the same file. This is by design since fingerprints
@@ -78,6 +110,23 @@ function canonicalizePath(filePath) {
78
110
  }
79
111
  return resolved;
80
112
  }
113
+ /**
114
+ * realpath of `absPath`; if it cannot be resolved (it does not exist yet), realpath of its parent with
115
+ * the last component appended, recursively up to the root. Any realpath failure (ENOENT, ENOTDIR,
116
+ * EACCES, ELOOP) falls back to the parent, the same as the earlier "use the normalised path" fallback
117
+ * did for the whole path.
118
+ */
119
+ function realpathOfExistingPart(absPath) {
120
+ try {
121
+ return fs.realpathSync(absPath);
122
+ }
123
+ catch {
124
+ const parent = path.dirname(absPath);
125
+ if (parent === absPath)
126
+ return absPath;
127
+ return path.join(realpathOfExistingPart(parent), path.basename(absPath));
128
+ }
129
+ }
81
130
  /**
82
131
  * Compute a fingerprint for a resource (spec ยง8.3).
83
132
  *
@@ -1 +1 @@
1
- {"version":3,"file":"resource-canonicalizer.js","sourceRoot":"","sources":["../../src/utils/resource-canonicalizer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,4CAiCC;AAQD,gDAeC;AAvED,2CAA4B;AAC5B,uCAAwB;AACxB,uCAAwB;AACxB,mCAAmC;AAEnC;;;;;;;;;GASG;AACH,SAAgB,gBAAgB,CAAC,QAAgB;IAC/C,IAAI,QAAQ,GAAG,QAAQ,CAAA;IAEvB,cAAc;IACd,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QAClD,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IAED,yBAAyB;IACzB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACnC,CAAC;IAED,wBAAwB;IACxB,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAEnC,qCAAqC;IACrC,IAAI,CAAC;QACH,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,8CAA8C;IAChD,CAAC;IAED,oDAAoD;IACpD,4EAA4E;IAC5E,2EAA2E;IAC3E,sEAAsE;IACtE,+BAA+B;IAC/B,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAA;IACnC,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAChC,aAAqB,EACrB,QAAgB;IAEhB,IAAI,KAAK,GAAG,EAAE,CAAA;IACd,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;QACvC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,iCAAiC;IACnC,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,aAAa,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAA;IACpD,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5D,OAAO,UAAU,IAAI,EAAE,CAAA;AACzB,CAAC"}
1
+ {"version":3,"file":"resource-canonicalizer.js","sourceRoot":"","sources":["../../src/utils/resource-canonicalizer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,4CAEC;AAgBD,8DAQC;AAuDD,gDAYC;AArHD,2CAA4B;AAC5B,uCAAwB;AACxB,uCAAwB;AACxB,mCAAmC;AAEnC;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,YAAY,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAA;AACvD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAgB,yBAAyB,CAAC,QAAgB;IACxD,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE;QACtC,IAAI,CAAC;YACH,OAAO,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACjC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,OAAO,CAAA;QAChB,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,QAAgB,EAAE,YAAyC;IAC/E,IAAI,QAAQ,GAAG,QAAQ,CAAA;IAEvB,cAAc;IACd,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;QAClD,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IAED,yBAAyB;IACzB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACnC,CAAC;IAED,wBAAwB;IACxB,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAEnC,+FAA+F;IAC/F,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;IAEjC,oDAAoD;IACpD,4EAA4E;IAC5E,2EAA2E;IAC3E,sEAAsE;IACtE,+BAA+B;IAC/B,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAA;IACnC,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,OAAe;IAC7C,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QACpC,IAAI,MAAM,KAAK,OAAO;YAAE,OAAO,OAAO,CAAA;QACtC,OAAO,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;IAC1E,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,kBAAkB,CAAC,aAAqB,EAAE,QAAgB;IACxE,IAAI,KAAK,GAAG,EAAE,CAAA;IACd,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;QACvC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,iCAAiC;IACnC,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,aAAa,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAA;IACpD,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5D,OAAO,UAAU,IAAI,EAAE,CAAA;AACzB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vess-id/vess",
3
- "version": "0.0.0-dev-20261015223024",
3
+ "version": "0.0.0-dev-20261015225322",
4
4
  "description": "VESS local AI agent runtime โ€” manages agent identity, permissions, and execution boundaries",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -15,7 +15,7 @@
15
15
  "better-sqlite3": "^11.10.0",
16
16
  "commander": "^12.1.0",
17
17
  "zod": "^3.25.76",
18
- "@vess-id/ai-identity": "0.0.0-dev-20261015223024"
18
+ "@vess-id/ai-identity": "0.0.0-dev-20261015225322"
19
19
  },
20
20
  "optionalDependencies": {
21
21
  "node-mac-auth": "^1.1.0"