@ai-ecoverse/slicc-kernel 1.164.0 → 1.164.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.
@@ -387,18 +387,18 @@ var init_changes = __esm({
387
387
  renames() {
388
388
  return this.view.length > RENAMES ? capturedAtomics.load(this.view, RENAMES) : 0;
389
389
  }
390
- awaitRename(seen, ms) {
391
- if (this.view.length > RENAMES) capturedAtomics.wait(this.view, RENAMES, seen, ms);
390
+ awaitRename(seen2, ms) {
391
+ if (this.view.length > RENAMES) capturedAtomics.wait(this.view, RENAMES, seen2, ms);
392
392
  return this.renames();
393
393
  }
394
- changedSince(seen, path) {
394
+ changedSince(seen2, path) {
395
395
  const now = capturedAtomics.load(this.view, GEN);
396
- const distance = now - seen >>> 0;
396
+ const distance = now - seen2 >>> 0;
397
397
  if (distance === 0) return { now, changed: false };
398
398
  if (distance > RING_SIZE) return { now, changed: true };
399
399
  const hash = changeHash(normal(path));
400
400
  for (let i = 1; i <= distance; i++) {
401
- const g = seen + i | 0;
401
+ const g = seen2 + i | 0;
402
402
  const at = RING + (g & RING_SIZE - 1) * SLOT;
403
403
  if (capturedAtomics.load(this.view, at) !== g) return { now, changed: true };
404
404
  const hit = capturedAtomics.load(this.view, at + 1) === hash;
@@ -608,7 +608,7 @@ function linkedWatch(watch, st) {
608
608
  watch.sig = signatureOf(st);
609
609
  return watch;
610
610
  }
611
- function viaAlias(watch, seen, path) {
611
+ function viaAlias(watch, seen2, path) {
612
612
  if (watch.resolved === void 0) {
613
613
  let real;
614
614
  try {
@@ -617,7 +617,7 @@ function viaAlias(watch, seen, path) {
617
617
  }
618
618
  watch.resolved = real && real !== path ? real : null;
619
619
  }
620
- return watch.resolved !== null && watch.view.changedSince(seen, watch.resolved).changed;
620
+ return watch.resolved !== null && watch.view.changedSince(seen2, watch.resolved).changed;
621
621
  }
622
622
  function viaLink(watch, path) {
623
623
  if (!watch.linked) return false;
@@ -631,10 +631,10 @@ function viaLink(watch, path) {
631
631
  watch.sig = sig;
632
632
  return true;
633
633
  }
634
- function watchedChange(watch, seen, path) {
635
- const said = watch.view.changedSince(seen, path);
636
- if (said.changed || said.now === seen) return said;
637
- return { now: said.now, changed: viaAlias(watch, seen, path) || viaLink(watch, path) };
634
+ function watchedChange(watch, seen2, path) {
635
+ const said = watch.view.changedSince(seen2, path);
636
+ if (said.changed || said.now === seen2) return said;
637
+ return { now: said.now, changed: viaAlias(watch, seen2, path) || viaLink(watch, path) };
638
638
  }
639
639
  var signatureOf, RangedFile;
640
640
  var init_ranged = __esm({
@@ -944,23 +944,23 @@ function copying(bridge, mutating, entry) {
944
944
  copy: (from, to, mode, exclusive) => mutating(() => copy2.call(bridge, from, to, mode, exclusive), ...entry(to))
945
945
  };
946
946
  }
947
- function listed({ cache, seen, filled: filled2 }, p, list, gen, asked) {
947
+ function listed({ cache, seen: seen2, filled: filled2 }, p, list, gen, asked) {
948
948
  const base = p === "/" ? "" : p;
949
949
  for (const [name2, st] of list) {
950
950
  if (!st) continue;
951
951
  filled2.set(st, asked);
952
952
  const at = `${base}/${name2}`;
953
953
  cache.put(cache.lstats, at, st);
954
- if (gen !== void 0) seen.saw(cache.lstats, at, gen);
954
+ if (gen !== void 0) seen2.saw(cache.lstats, at, gen);
955
955
  if (st.isSymbolicLink) continue;
956
956
  cache.put(cache.stats, at, st);
957
- if (gen !== void 0) seen.saw(cache.stats, at, gen);
957
+ if (gen !== void 0) seen2.saw(cache.stats, at, gen);
958
958
  }
959
959
  }
960
960
  function fetched({
961
961
  view,
962
962
  now,
963
- seen,
963
+ seen: seen2,
964
964
  filled: filled2,
965
965
  cache
966
966
  }, map, path, get) {
@@ -969,7 +969,7 @@ function fetched({
969
969
  let hit;
970
970
  try {
971
971
  hit = get();
972
- if (gen !== void 0) seen.saw(map, path, gen);
972
+ if (gen !== void 0) seen2.saw(map, path, gen);
973
973
  } catch (e) {
974
974
  hit = { error: e, until: asked + MISS_TTL_MS, ...gen !== void 0 ? { gen } : {} };
975
975
  }
@@ -985,14 +985,14 @@ function cachingBridge(bridge, now = () => capturedperformance.now(), shared) {
985
985
  const filled2 = new Fills(view, now);
986
986
  const young2 = (entry2) => filled2.young(entry2);
987
987
  const live = (miss, path) => miss.until > now() && young2(miss) && (view === void 0 || miss.gen === void 0 || !view.changedSince(miss.gen, path).changed);
988
- const seen = new SeenAt(view, lstats);
989
- const kept = remember(cache, seen, blind, (entry2) => filled2.set(entry2));
988
+ const seen2 = new SeenAt(view, lstats);
989
+ const kept = remember(cache, seen2, blind, (entry2) => filled2.set(entry2));
990
990
  const gone2 = (path) => goneAbove([lstats, stats], live, path);
991
991
  const usable = (map, path) => {
992
992
  const hit = map.get(path);
993
993
  if (hit === void 0) return void 0;
994
994
  if ("until" in hit) return live(hit, path) ? hit : void 0;
995
- return young2(hit) && !seen.changed(map, path) ? hit : void 0;
995
+ return young2(hit) && !seen2.changed(map, path) ? hit : void 0;
996
996
  };
997
997
  const cached2 = (map, path, get) => {
998
998
  if (blind) return get();
@@ -1001,7 +1001,7 @@ function cachingBridge(bridge, now = () => capturedperformance.now(), shared) {
1001
1001
  if (hit === void 0) {
1002
1002
  const missing2 = gone2(path);
1003
1003
  if (missing2) throw missing2.error;
1004
- hit = fetched({ view, now, seen, filled: filled2, cache }, map, path, get);
1004
+ hit = fetched({ view, now, seen: seen2, filled: filled2, cache }, map, path, get);
1005
1005
  }
1006
1006
  if ("until" in hit) throw hit.error;
1007
1007
  return hit;
@@ -1061,12 +1061,12 @@ function cachingBridge(bridge, now = () => capturedperformance.now(), shared) {
1061
1061
  const gen = view?.now();
1062
1062
  const asked = now();
1063
1063
  const list = bridge.readdirStat(p);
1064
- if (!blind) listed({ cache, seen, filled: filled2 }, p, list, gen, asked);
1064
+ if (!blind) listed({ cache, seen: seen2, filled: filled2 }, p, list, gen, asked);
1065
1065
  return list;
1066
1066
  },
1067
1067
  readlink: (p) => {
1068
1068
  const known = blind ? void 0 : (cache.fresh(), lstats.get(p));
1069
- const gen = seen.lstat(p);
1069
+ const gen = seen2.lstat(p);
1070
1070
  const current2 = view !== void 0 && gen !== void 0 && !view.changedSince(gen, p).changed;
1071
1071
  if (known && current2 && !("until" in known) && young2(known) && !known.isSymbolicLink) {
1072
1072
  throw syncError("EINVAL", `'${p}' is not a symbolic link`);
@@ -1559,26 +1559,26 @@ var init_wasi_files = __esm({
1559
1559
  return this.links.get(path);
1560
1560
  }
1561
1561
  saw(map, path, gen) {
1562
- const seen = this.of(map);
1563
- if (seen.size >= SEEN_CAP) seen.clear();
1564
- seen.set(path, gen);
1562
+ const seen2 = this.of(map);
1563
+ if (seen2.size >= SEEN_CAP) seen2.clear();
1564
+ seen2.set(path, gen);
1565
1565
  }
1566
1566
  changed(map, path) {
1567
1567
  if (this.view === void 0) return false;
1568
- const seen = this.of(map);
1569
- const gen = seen.get(path);
1568
+ const seen2 = this.of(map);
1569
+ const gen = seen2.get(path);
1570
1570
  if (gen === void 0) return true;
1571
1571
  const since = this.view.changedSince(gen, path);
1572
- if (!since.changed) seen.set(path, since.now);
1572
+ if (!since.changed) seen2.set(path, since.now);
1573
1573
  return since.changed;
1574
1574
  }
1575
1575
  };
1576
- remember = (cache, seen, blind, fill) => (path, made) => {
1576
+ remember = (cache, seen2, blind, fill) => (path, made) => {
1577
1577
  if (!made || blind) return made;
1578
1578
  const { seen: at, ...st } = made;
1579
1579
  fill(st);
1580
1580
  cache.put(cache.stats, path, st);
1581
- if (at !== void 0) seen.saw(cache.stats, path, at);
1581
+ if (at !== void 0) seen2.saw(cache.stats, path, at);
1582
1582
  return made;
1583
1583
  };
1584
1584
  Fills = class {
@@ -2173,8 +2173,8 @@ function errnoError(code2, path, direct) {
2173
2173
  const err = syncError(code2, `sync-sab bridge, '${path}'`);
2174
2174
  return direct ? capturedObject.assign(err, { direct }) : err;
2175
2175
  }
2176
- function holdSeen(seen) {
2177
- return { gen: seen.gen, ino: seen.ino, ...seen.nofollow ? { nofollow: true } : {} };
2176
+ function holdSeen(seen2) {
2177
+ return { gen: seen2.gen, ino: seen2.ino, ...seen2.nofollow ? { nofollow: true } : {} };
2178
2178
  }
2179
2179
  function createSyncFsSabBridge(transport, opts = {}) {
2180
2180
  const direct = opts.direct ? { direct: true } : {};
@@ -2324,8 +2324,8 @@ function createSyncFsSabBridge(transport, opts = {}) {
2324
2324
  if (!r.ok || r.kind !== "json") return void 0;
2325
2325
  const st = parseSyncFsStat(r.json);
2326
2326
  if (!st) return void 0;
2327
- const { seen } = r.json;
2328
- return typeof seen === "number" ? { ...st, seen } : st;
2327
+ const { seen: seen2 } = r.json;
2328
+ return typeof seen2 === "number" ? { ...st, seen: seen2 } : st;
2329
2329
  },
2330
2330
  chown: (path, uid, gid, follow3, handle) => {
2331
2331
  const ids = { ...uid !== void 0 ? { uid } : {}, ...gid !== void 0 ? { gid } : {} };
@@ -2345,10 +2345,10 @@ function createSyncFsSabBridge(transport, opts = {}) {
2345
2345
  access: (path, mode, kind = "access", nofollow) => {
2346
2346
  run({ op: "access", path, mode, arg2: kind, ...nofollow ? { nofollow } : {} }, path);
2347
2347
  },
2348
- hold: (path, held2, open, handle, want = 0, seen = {}) => {
2348
+ hold: (path, held2, open, handle, want = 0, seen2 = {}) => {
2349
2349
  const mode = (held2 ? 1 : 0) | (open ? 2 : 0);
2350
2350
  if (mode === 3) {
2351
- return json2({ op: "hold", path, mode: mode | want, ...holdSeen(seen) }, path);
2351
+ return json2({ op: "hold", path, mode: mode | want, ...holdSeen(seen2) }, path);
2352
2352
  }
2353
2353
  run({ op: "hold", path, mode, ...handle !== void 0 ? { handle } : {} }, path);
2354
2354
  return void 0;
@@ -2382,8 +2382,8 @@ var init_sync_sab_bridge = __esm({
2382
2382
  });
2383
2383
 
2384
2384
  // src/process/js/async-sab.ts
2385
- async function changed(header, index3, seen, waitAsync = defaultWaitAsync) {
2386
- const waited = waitAsync(header, index3, seen);
2385
+ async function changed(header, index3, seen2, waitAsync = defaultWaitAsync) {
2386
+ const waited = waitAsync(header, index3, seen2);
2387
2387
  if (waited.async) await waited.value;
2388
2388
  }
2389
2389
  function createAsyncSabTransport(sab, port3, waitAsync = defaultWaitAsync) {
@@ -2595,14 +2595,14 @@ var init_js_kernel = __esm({
2595
2595
  }
2596
2596
  async settled(id, signal) {
2597
2597
  for (; ; ) {
2598
- const seen = capturedAtomics.load(this.header, SAB_I_ASYNC);
2598
+ const seen2 = capturedAtomics.load(this.header, SAB_I_ASYNC);
2599
2599
  const taken = await this.raw({ op: "async-take", id });
2600
2600
  if (taken.ok || taken.errno !== "EAGAIN") return taken;
2601
2601
  if (signal?.aborted) {
2602
2602
  await this.raw({ op: "async-cancel", id });
2603
2603
  throw signal.reason;
2604
2604
  }
2605
- await untilAborted(changed(this.header, SAB_I_ASYNC, seen, this.waitAsync), signal);
2605
+ await untilAborted(changed(this.header, SAB_I_ASYNC, seen2, this.waitAsync), signal);
2606
2606
  }
2607
2607
  }
2608
2608
  deliver() {
@@ -3390,14 +3390,14 @@ var init_wasi_cred = __esm({
3390
3390
  return this.cred;
3391
3391
  }
3392
3392
  change(apply4) {
3393
- const seen = this.gen();
3393
+ const seen2 = this.gen();
3394
3394
  const cred = apply4();
3395
3395
  if (!this.shared) {
3396
3396
  this.cred = cred;
3397
3397
  return cred;
3398
3398
  }
3399
3399
  const was = capturedAtomics.add(this.shared, CRED_GEN, 1);
3400
- this.cred = was === seen ? cred : void 0;
3400
+ this.cred = was === seen2 ? cred : void 0;
3401
3401
  this.stamp = was + 1;
3402
3402
  return cred;
3403
3403
  }
@@ -3423,9 +3423,9 @@ var init_wasi_cred = __esm({
3423
3423
  return this.mask;
3424
3424
  }
3425
3425
  for (; ; ) {
3426
- const seen = capturedAtomics.load(shared, UMASK);
3427
- if (seen & LOCKED) capturedAtomics.wait(shared, UMASK, seen);
3428
- else if (seen & KNOWN) return seen & 511;
3426
+ const seen2 = capturedAtomics.load(shared, UMASK);
3427
+ if (seen2 & LOCKED) capturedAtomics.wait(shared, UMASK, seen2);
3428
+ else if (seen2 & KNOWN) return seen2 & 511;
3429
3429
  else {
3430
3430
  const mask = this.call();
3431
3431
  if (capturedAtomics.compareExchange(shared, UMASK, 0, mask | KNOWN) === 0) return mask;
@@ -3446,8 +3446,8 @@ var init_wasi_cred = __esm({
3446
3446
  this.mask = mask & 511;
3447
3447
  return old;
3448
3448
  }
3449
- const seen = this.lock(shared);
3450
- let next2 = seen;
3449
+ const seen2 = this.lock(shared);
3450
+ let next2 = seen2;
3451
3451
  try {
3452
3452
  const old = this.call(mask);
3453
3453
  next2 = mask & 511 | KNOWN;
@@ -3459,9 +3459,9 @@ var init_wasi_cred = __esm({
3459
3459
  }
3460
3460
  lock(shared) {
3461
3461
  for (; ; ) {
3462
- const seen = capturedAtomics.load(shared, UMASK);
3463
- if (seen & LOCKED) capturedAtomics.wait(shared, UMASK, seen);
3464
- else if (capturedAtomics.compareExchange(shared, UMASK, seen, seen | LOCKED) === seen) return seen;
3462
+ const seen2 = capturedAtomics.load(shared, UMASK);
3463
+ if (seen2 & LOCKED) capturedAtomics.wait(shared, UMASK, seen2);
3464
+ else if (capturedAtomics.compareExchange(shared, UMASK, seen2, seen2 | LOCKED) === seen2) return seen2;
3465
3465
  }
3466
3466
  }
3467
3467
  };
@@ -3634,8 +3634,8 @@ var init_wasi_fds = __esm({
3634
3634
  this.renamesSeen = now;
3635
3635
  return false;
3636
3636
  }
3637
- const { now: seen, renames } = this.fs.renames(this.renamesSeen, held2);
3638
- this.renamesSeen = seen;
3637
+ const { now: seen2, renames } = this.fs.renames(this.renamesSeen, held2);
3638
+ this.renamesSeen = seen2;
3639
3639
  for (const [from, to] of renames) this.renamed(from, to, void 0, true);
3640
3640
  return renames.length > 0;
3641
3641
  }
@@ -4372,7 +4372,7 @@ var init_wasi_fds = __esm({
4372
4372
  this.made = void 0;
4373
4373
  const empty = made || (oflags & OFLAGS.TRUNC) !== 0;
4374
4374
  if (existing?.ranged) this.fs.invalidate?.();
4375
- const seen = reply ? reply.seen : this.fs.changes?.now();
4375
+ const seen2 = reply ? reply.seen : this.fs.changes?.now();
4376
4376
  const st = reply?.st ?? (existing?.ranged || !existing ? this.fs.stat(path) : existing);
4377
4377
  const ranged = st.ranged ? st.size : void 0;
4378
4378
  const asked = (want & 4 ? HOLD_READ : 0) | (want & 2 ? HOLD_WRITE : 0) | (made ? HOLD_CREATED : 0);
@@ -4387,7 +4387,7 @@ var init_wasi_fds = __esm({
4387
4387
  {
4388
4388
  view,
4389
4389
  ino: st.ino,
4390
- seen,
4390
+ seen: seen2,
4391
4391
  stat: (at) => {
4392
4392
  this.fs.invalidate?.();
4393
4393
  return this.fs.stat(at);
@@ -4825,7 +4825,7 @@ var init_wasi_sigmask = __esm({
4825
4825
  publish(set);
4826
4826
  try {
4827
4827
  for (; ; ) {
4828
- const seen = capturedAtomics.load(this.header, SAB_I_SIGNALS);
4828
+ const seen2 = capturedAtomics.load(this.header, SAB_I_SIGNALS);
4829
4829
  const sig = this.take(set);
4830
4830
  if (sig !== 0) {
4831
4831
  took(sig);
@@ -4834,7 +4834,7 @@ var init_wasi_sigmask = __esm({
4834
4834
  if (entered || this.deliverUnblocked() || this.interrupted()) return E.INTR;
4835
4835
  const left = deadline - capturedperformance.now();
4836
4836
  if (left <= 0) return E.AGAIN;
4837
- capturedAtomics.wait(this.header, SAB_I_SIGNALS, seen, capturedMath.min(left, POLL_MS));
4837
+ capturedAtomics.wait(this.header, SAB_I_SIGNALS, seen2, capturedMath.min(left, POLL_MS));
4838
4838
  }
4839
4839
  } finally {
4840
4840
  publish(0);
@@ -7365,7 +7365,7 @@ var init_version = __esm({
7365
7365
  "src/version.ts"() {
7366
7366
  "use strict";
7367
7367
  init_captured_globals();
7368
- KERNEL_VERSION = true ? "1.164.0" : "0.0.0-dev";
7368
+ KERNEL_VERSION = true ? "1.164.2" : "0.0.0-dev";
7369
7369
  OS_RELEASE = "6.0.0-slicc";
7370
7370
  }
7371
7371
  });
@@ -8835,10 +8835,10 @@ function loadedWatch(bridge, call3, path, st) {
8835
8835
  return view && linkedWatch({ view, stat: () => call3(() => bridge.stat(path())) }, st);
8836
8836
  }
8837
8837
  function rangedFileOf(bridge, call3, path, io) {
8838
- const seen = bridge.changes?.now();
8838
+ const seen2 = bridge.changes?.now();
8839
8839
  const stat = () => call3(() => bridge.stat(path()));
8840
8840
  const st = stat();
8841
- const watch = bridge.changes && linkedWatch({ view: bridge.changes, ino: st.ino, seen, stat }, st);
8841
+ const watch = bridge.changes && linkedWatch({ view: bridge.changes, ino: st.ino, seen: seen2, stat }, st);
8842
8842
  return new RangedFile(io, path(), st.size, st.version, watch);
8843
8843
  }
8844
8844
  function unlessIo(op) {
@@ -9001,18 +9001,18 @@ function relinked(Fs, moving, to) {
9001
9001
  }
9002
9002
  function renameFollower(Fs, bridgeOf, call3) {
9003
9003
  const open = new capturedSet();
9004
- const seen = new capturedMap();
9004
+ const seen2 = new capturedMap();
9005
9005
  const follow3 = (node, missing2 = false) => {
9006
9006
  const bridge = bridgeOf(node);
9007
9007
  const view = bridge.changes;
9008
- const since = seen.get(bridge);
9008
+ const since = seen2.get(bridge);
9009
9009
  let now = view?.renames() ?? 0;
9010
9010
  if (missing2 && view && now === since) now = view.awaitRename(now, RENAME_WAIT_MS);
9011
9011
  const ask = bridge.renames?.bind(bridge);
9012
9012
  if (since === void 0 || now === since || !ask) return false;
9013
9013
  const held2 = [...open].filter((n) => !n.live.orphan && bridgeOf(n) === bridge);
9014
9014
  if (held2.length === 0) {
9015
- seen.set(bridge, now);
9015
+ seen2.set(bridge, now);
9016
9016
  return false;
9017
9017
  }
9018
9018
  const reply = call3(
@@ -9021,7 +9021,7 @@ function renameFollower(Fs, bridgeOf, call3) {
9021
9021
  held2.map((n) => liveNodePath(n))
9022
9022
  )
9023
9023
  );
9024
- seen.set(bridge, reply.now);
9024
+ seen2.set(bridge, reply.now);
9025
9025
  for (const [from, to] of reply.renames) {
9026
9026
  for (const n of held2) {
9027
9027
  const moving = heldUnder(n, from);
@@ -9043,12 +9043,12 @@ function renameFollower(Fs, bridgeOf, call3) {
9043
9043
  open.add(node);
9044
9044
  },
9045
9045
  watchRenames(bridge) {
9046
- if (!seen.has(bridge)) seen.set(bridge, bridge.changes?.renames() ?? 0);
9046
+ if (!seen2.has(bridge)) seen2.set(bridge, bridge.changes?.renames() ?? 0);
9047
9047
  },
9048
9048
  ownRename(bridge, seq) {
9049
- const since = seen.get(bridge);
9049
+ const since = seen2.get(bridge);
9050
9050
  if (seq !== void 0 && since !== void 0 && seq === (since + 1 | 0))
9051
- seen.set(bridge, seq);
9051
+ seen2.set(bridge, seq);
9052
9052
  }
9053
9053
  };
9054
9054
  }
@@ -9500,8 +9500,8 @@ function appendThrough(h, stream, bytes) {
9500
9500
  }
9501
9501
  function holdLive(bridge, node, on, want) {
9502
9502
  const s = node.live;
9503
- const seen = on && s.stat ? { gen: s.stat.gen, ...s.stat.ino !== void 0 ? { ino: s.stat.ino } : {} } : void 0;
9504
- return bridge.hold?.(liveNodePath(node), on, true, s.handle, want, seen);
9503
+ const seen2 = on && s.stat ? { gen: s.stat.gen, ...s.stat.ino !== void 0 ? { ino: s.stat.ino } : {} } : void 0;
9504
+ return bridge.hold?.(liveNodePath(node), on, true, s.handle, want, seen2);
9505
9505
  }
9506
9506
  function dropOpen(s) {
9507
9507
  if (s.openCount === 0) return false;
@@ -10437,10 +10437,10 @@ function syscallOf(glue, name2, value2) {
10437
10437
  function wrapCloexecSyscalls(imports, glue, deps) {
10438
10438
  if (!glue) return;
10439
10439
  const factories = wrapperFactories(deps);
10440
- const seen = new capturedSet();
10440
+ const seen2 = new capturedSet();
10441
10441
  for (const namespace of capturedObject.values(imports)) {
10442
- if (!namespace || typeof namespace !== "object" || seen.has(namespace)) continue;
10443
- seen.add(namespace);
10442
+ if (!namespace || typeof namespace !== "object" || seen2.has(namespace)) continue;
10443
+ seen2.add(namespace);
10444
10444
  for (const [name2, value2] of capturedObject.entries(namespace)) {
10445
10445
  const key = syscallOf(glue, name2, value2);
10446
10446
  const wrap2 = key && factories[key];
@@ -10558,11 +10558,11 @@ function persistsItself(stream) {
10558
10558
  return typeof type?.syncfs === "function";
10559
10559
  }
10560
10560
  function namespaces(imports) {
10561
- const seen = new capturedSet();
10561
+ const seen2 = new capturedSet();
10562
10562
  for (const namespace of capturedObject.values(imports)) {
10563
- if (namespace && typeof namespace === "object") seen.add(namespace);
10563
+ if (namespace && typeof namespace === "object") seen2.add(namespace);
10564
10564
  }
10565
- return [...seen];
10565
+ return [...seen2];
10566
10566
  }
10567
10567
  function keyOf(namespace, name2, glue) {
10568
10568
  const own2 = glue?.[name2];
@@ -11755,13 +11755,13 @@ function frozen(bytes) {
11755
11755
  }
11756
11756
  function physicalProc(fs, now = () => capturedperformance.now()) {
11757
11757
  const view = fs.changes;
11758
- let seen;
11758
+ let seen2;
11759
11759
  return () => {
11760
- if (seen && view && (!view.foreign() || now() - seen.at < SHARED_TTL_MS)) {
11761
- const proc = view.changedSince(seen.gen, "/proc");
11762
- if (!proc.changed && !view.changedSince(seen.gen, "/").changed) {
11763
- seen.gen = proc.now;
11764
- return seen.physical;
11760
+ if (seen2 && view && (!view.foreign() || now() - seen2.at < SHARED_TTL_MS)) {
11761
+ const proc = view.changedSince(seen2.gen, "/proc");
11762
+ if (!proc.changed && !view.changedSince(seen2.gen, "/").changed) {
11763
+ seen2.gen = proc.now;
11764
+ return seen2.physical;
11765
11765
  }
11766
11766
  }
11767
11767
  const gen = view?.now();
@@ -11773,12 +11773,12 @@ function physicalProc(fs, now = () => capturedperformance.now()) {
11773
11773
  } catch (err) {
11774
11774
  const code2 = err.code;
11775
11775
  if (code2 !== "ENOENT" && code2 !== "ENOTDIR") {
11776
- seen = void 0;
11776
+ seen2 = void 0;
11777
11777
  return false;
11778
11778
  }
11779
11779
  physical2 = false;
11780
11780
  }
11781
- seen = gen === void 0 ? void 0 : { gen, physical: physical2, at };
11781
+ seen2 = gen === void 0 ? void 0 : { gen, physical: physical2, at };
11782
11782
  return physical2;
11783
11783
  };
11784
11784
  }
@@ -11946,10 +11946,10 @@ function procfsBridge(fs, tree) {
11946
11946
  ],
11947
11947
  () => fs.link(from, to, follow3)
11948
11948
  ),
11949
- hold: (p, held2, open, handle, want, seen) => {
11949
+ hold: (p, held2, open, handle, want, seen2) => {
11950
11950
  if (handle !== void 0 && snapshots.delete(handle)) return void 0;
11951
11951
  if (!held2) return fs.hold?.(p, held2, open, handle);
11952
- return via(p, snapshot2, () => fs.hold?.(p, held2, open, void 0, want, seen) ?? late(p));
11952
+ return via(p, snapshot2, () => fs.hold?.(p, held2, open, void 0, want, seen2) ?? late(p));
11953
11953
  },
11954
11954
  kept: (handle) => snapshots.has(handle) || fs.kept?.(handle) === true,
11955
11955
  escape: (p) => inProc(p) ? current(fs, tree, p) : void 0,
@@ -14033,12 +14033,12 @@ function restarted2(issue) {
14033
14033
  }
14034
14034
  function forkRestarted(deps, state, snapshotAt) {
14035
14035
  let memory = state.memory;
14036
- let seen = snapshotAt;
14036
+ let seen2 = snapshotAt;
14037
14037
  return restarted2(() => {
14038
14038
  const streams2 = deps.describeFork();
14039
14039
  const now = deps.deliveries?.();
14040
- if (now !== seen) {
14041
- seen = now;
14040
+ if (now !== seen2) {
14041
+ seen2 = now;
14042
14042
  const live = deps.memory?.();
14043
14043
  if (live) memory = new capturedUint8Array(live.buffer).slice();
14044
14044
  }
@@ -18236,13 +18236,13 @@ var init_wasix_linker = __esm({
18236
18236
  }
18237
18237
  return void 0;
18238
18238
  }
18239
- findIn(m, name2, seen) {
18240
- if (seen.has(m.handle)) return void 0;
18241
- seen.add(m.handle);
18239
+ findIn(m, name2, seen2) {
18240
+ if (seen2.has(m.handle)) return void 0;
18241
+ seen2.add(m.handle);
18242
18242
  const v = m.instance.exports[name2];
18243
18243
  if (v !== void 0) return [m.handle, v];
18244
18244
  for (const h of m.needed) {
18245
- const found2 = this.findIn(this.module(h), name2, seen);
18245
+ const found2 = this.findIn(this.module(h), name2, seen2);
18246
18246
  if (found2) return found2;
18247
18247
  }
18248
18248
  return void 0;
@@ -19739,11 +19739,20 @@ function keptFrames(trace) {
19739
19739
  }
19740
19740
  var formatter = null;
19741
19741
  var formatting = false;
19742
- var tops = new capturedWeakMap();
19743
- function stackDispatcher(fallback) {
19742
+ var seen = new capturedWeakMap();
19743
+ function positionsAt(positions, error, site) {
19744
+ if (positions === void 0 || !keptFrame(site)) return void 0;
19745
+ try {
19746
+ return positions(error);
19747
+ } catch {
19748
+ return void 0;
19749
+ }
19750
+ }
19751
+ function stackDispatcher(fallback, positions) {
19744
19752
  return (error, trace) => {
19745
19753
  if (typeof error === "object" && error !== null && trace.length > 0) {
19746
- apply(mapSet, tops, [error, trace[0]]);
19754
+ const site = trace[0];
19755
+ apply(mapSet, seen, [error, { site, at: positionsAt(positions, error, site) }]);
19747
19756
  }
19748
19757
  const fn = formatter;
19749
19758
  if (fn === null || formatting) return apply(fallback, void 0, [error, trace]);
@@ -19759,7 +19768,7 @@ function stackDispatcher(fallback) {
19759
19768
  };
19760
19769
  }
19761
19770
  var found = internals();
19762
- if (found) found.setInternalPrepareStackTrace(stackDispatcher(found.fallback));
19771
+ if (found) found.setInternalPrepareStackTrace(stackDispatcher(found.fallback, found.positions));
19763
19772
  var nodeStackFormatter = found ? (fn) => {
19764
19773
  if (fn !== null && typeof fn !== "function") {
19765
19774
  throw new capturedTypeError("setStackFormatter needs a function or null");
@@ -19768,16 +19777,16 @@ var nodeStackFormatter = found ? (fn) => {
19768
19777
  formatter = fn;
19769
19778
  return previous;
19770
19779
  } : void 0;
19771
- function errorSourceOf(positions2, error) {
19780
+ function errorSourceOf(error) {
19772
19781
  if (typeof error !== "object" || error === null || !isNativeError(error)) return void 0;
19773
19782
  try {
19774
19783
  void error.stack;
19775
19784
  } catch {
19776
19785
  return void 0;
19777
19786
  }
19778
- const site = apply(mapGet, tops, [error]);
19779
- if (site === void 0 || !keptFrame(site)) return void 0;
19780
- const at = positions2(error);
19787
+ const got = apply(mapGet, seen, [error]);
19788
+ if (got === void 0 || !keptFrame(got.site)) return void 0;
19789
+ const { site, at } = got;
19781
19790
  if (!at || typeof at.sourceLine !== "string" || typeof at.lineNumber !== "number")
19782
19791
  return void 0;
19783
19792
  if (apply(setHas, ownNames, [at.scriptResourceName]) === true) return void 0;
@@ -19789,8 +19798,7 @@ function errorSourceOf(positions2, error) {
19789
19798
  out.startColumn = typeof at.startColumn === "number" ? at.startColumn : 0;
19790
19799
  return freeze(out);
19791
19800
  }
19792
- var positions = found?.positions;
19793
- var nodeErrorSource = positions ? (error) => errorSourceOf(positions, error) : void 0;
19801
+ var nodeErrorSource = found?.positions ? errorSourceOf : void 0;
19794
19802
 
19795
19803
  // src/node-lockdown.ts
19796
19804
  init_lockdown();