@ai-ecoverse/slicc-kernel 1.147.6 → 1.147.7

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.
@@ -7157,7 +7157,7 @@ var KERNEL_VERSION, OS_RELEASE;
7157
7157
  var init_version = __esm({
7158
7158
  "src/version.ts"() {
7159
7159
  "use strict";
7160
- KERNEL_VERSION = true ? "1.147.6" : "0.0.0-dev";
7160
+ KERNEL_VERSION = true ? "1.147.7" : "0.0.0-dev";
7161
7161
  OS_RELEASE = "6.0.0-slicc";
7162
7162
  }
7163
7163
  });
package/dist/node.js CHANGED
@@ -3305,7 +3305,7 @@ function satisfies(version, range2) {
3305
3305
  }
3306
3306
 
3307
3307
  // src/version.ts
3308
- var KERNEL_VERSION = true ? "1.147.6" : "0.0.0-dev";
3308
+ var KERNEL_VERSION = true ? "1.147.7" : "0.0.0-dev";
3309
3309
  var OS_RELEASE = "6.0.0-slicc";
3310
3310
  function procVersion() {
3311
3311
  return `Linux version ${OS_RELEASE} (slicc-kernel ${KERNEL_VERSION}) #1 SMP PREEMPT_DYNAMIC
@@ -5539,6 +5539,7 @@ var RealmProxy = class {
5539
5539
  const stopping = () => socket.close(1001, "the proxy is stopping");
5540
5540
  stop.addEventListener("abort", stopping, { once: true });
5541
5541
  let guestDone = false;
5542
+ let guestClosed = false;
5542
5543
  let closeSent = false;
5543
5544
  const outbound2 = (async () => {
5544
5545
  for await (const data of socket.messages) {
@@ -5552,6 +5553,7 @@ var RealmProxy = class {
5552
5553
  if (guestDone) return;
5553
5554
  closeSent = true;
5554
5555
  await toGuest(closeFrame(wireCode(closed.code), closed.reason));
5556
+ if (guestClosed) return;
5555
5557
  AbortSignal.timeout(this.limits.closeWaitMs).addEventListener("abort", () => done4.abort(), {
5556
5558
  once: true
5557
5559
  });
@@ -5566,15 +5568,13 @@ var RealmProxy = class {
5566
5568
  continue;
5567
5569
  }
5568
5570
  if (event.kind === "close") {
5569
- guestDone = true;
5570
5571
  if (closeSent) break;
5572
+ guestClosed = true;
5571
5573
  const code = wireCode(event.code);
5572
5574
  socket.close(code, event.reason);
5573
- const reply = await Promise.race([
5574
- socket.closed,
5575
- quietly(this.limits.closeWaitMs).then(() => ({ code, reason: event.reason }))
5576
- ]);
5577
- await toGuest(closeFrame(wireCode(reply.code), reply.reason));
5575
+ await Promise.race([outbound2, quietly(this.limits.closeWaitMs)]);
5576
+ guestDone = true;
5577
+ if (!closeSent) await toGuest(closeFrame(code, event.reason));
5578
5578
  break;
5579
5579
  }
5580
5580
  while (socket.buffered > SEND_BUFFER && !reading.aborted) await quietly(10);
@@ -29145,9 +29145,18 @@ var Launcher = class {
29145
29145
  return id2().then(
29146
29146
  (before) => read().then(
29147
29147
  (first) => id2().then(
29148
- (after) => after.exeId === before.exeId ? [first, after] : this.reread(target, read).then(
29149
- (again) => id2().then((last) => [again, last])
29150
- )
29148
+ (after) => {
29149
+ if (after.exeId === before.exeId) return [first, after];
29150
+ const gone = [
29151
+ first,
29152
+ { exeId: `gone:${crypto.randomUUID()}` }
29153
+ ];
29154
+ if (after.exeId === void 0) return gone;
29155
+ return this.reread(target, read).then(
29156
+ (again) => id2().then((last) => [again, last]),
29157
+ () => gone
29158
+ );
29159
+ }
29151
29160
  )
29152
29161
  )
29153
29162
  );