@ai-ecoverse/slicc-kernel 1.108.3 → 1.108.5

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/node.js CHANGED
@@ -6435,7 +6435,7 @@ function satisfies(version, range2) {
6435
6435
  }
6436
6436
 
6437
6437
  // src/version.ts
6438
- var KERNEL_VERSION = true ? "1.108.3" : "0.0.0-dev";
6438
+ var KERNEL_VERSION = true ? "1.108.5" : "0.0.0-dev";
6439
6439
  var OS_RELEASE = "6.0.0-slicc";
6440
6440
  function procVersion() {
6441
6441
  return `Linux version ${OS_RELEASE} (slicc-kernel ${KERNEL_VERSION}) #1 SMP PREEMPT_DYNAMIC
@@ -11391,12 +11391,11 @@ function attachSyncSabResponder(port, sab, token, opts) {
11391
11391
  if (disposed) return;
11392
11392
  const { status, payload } = encodeSabResult(result);
11393
11393
  drop(id2);
11394
- const entry = {
11395
- status,
11396
- payload,
11397
- timer: setTimeout(() => drop(id2), PENDING_TTL_MS)
11398
- };
11399
- pending.set(id2, entry);
11394
+ const entry = { status, payload };
11395
+ if (payload.byteLength > window.byteLength) {
11396
+ entry.timer = setTimeout(() => drop(id2), PENDING_TTL_MS);
11397
+ pending.set(id2, entry);
11398
+ }
11400
11399
  publish(id2, entry, 0);
11401
11400
  }
11402
11401
  const handler = (event) => {
@@ -12106,6 +12105,8 @@ var AsyncRangedFile = class {
12106
12105
 
12107
12106
  // src/realm/sync-sab-bridge.ts
12108
12107
  var PATH_OPS = new Set(SYNC_FS_OPS);
12108
+ var SPIN_CORES = 4;
12109
+ var spinning = (globalThis.navigator?.hardwareConcurrency ?? 0) >= SPIN_CORES;
12109
12110
 
12110
12111
  // src/realm/live-vfs-fs.ts
12111
12112
  var EARLY_WHOLE_FILE = 64 * 1024;
@@ -12338,7 +12339,9 @@ function normalize(path) {
12338
12339
  var RING2 = 8;
12339
12340
  var RING_SIZE2 = 64;
12340
12341
  var SLOT2 = 3;
12341
- var SHARED_IDS_BYTES = (RING2 + RING_SIZE2 * SLOT2) * 4;
12342
+ var FD_RING = RING2 + RING_SIZE2 * SLOT2;
12343
+ var FD_RING_SIZE = 64;
12344
+ var SHARED_IDS_BYTES = (FD_RING + FD_RING_SIZE * 2) * 4;
12342
12345
 
12343
12346
  // src/process/wasi/wasi-procfs.ts
12344
12347
  var DIR_MODE = 16749;
@@ -16778,6 +16781,16 @@ var WasmProcess = class {
16778
16781
  sendDeath(target, sig) {
16779
16782
  void Promise.resolve(this.options.kill?.(target, sig)).catch(() => void 0);
16780
16783
  }
16784
+ selfKill(req) {
16785
+ if (req.dry) return Promise.resolve(this.spares(req.sig));
16786
+ return this.killSelf(req.sig, req.target, req.probe);
16787
+ }
16788
+ spares(sig) {
16789
+ const { caught, ignored } = this.signalMasks();
16790
+ const bit = isSignal(sig) ? sigbit(sig) : 0;
16791
+ const answer = (ignored & bit) !== 0 ? "ignore" : (caught & bit) !== 0 ? "spare" : "terminate";
16792
+ return { ok: true, kind: "json", json: answer };
16793
+ }
16781
16794
  async killSelf(sig, target, probe2) {
16782
16795
  if (!this.options.exitSignal) throw new KernelError("ENOSYS");
16783
16796
  if (!isSignal(sig) || defaultAction(sig) !== "terminate") throw new KernelError("EINVAL");
@@ -17679,7 +17692,7 @@ var WasmProcess = class {
17679
17692
  this.options.exitNow(req.status & 255);
17680
17693
  return DYING;
17681
17694
  case "proc-kill-self":
17682
- return this.killSelf(req.sig, req.target, req.probe);
17695
+ return this.selfKill(req);
17683
17696
  case "proc-identity":
17684
17697
  return { ok: true, kind: "json", json: await this.options.identity?.() ?? null };
17685
17698
  case "proc-exec": {