@ai-ecoverse/slicc-kernel 1.140.6 → 1.141.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.
@@ -7128,7 +7128,7 @@ function satisfies(version, range2) {
7128
7128
  }
7129
7129
 
7130
7130
  // src/version.ts
7131
- var KERNEL_VERSION = true ? "1.140.6" : "0.0.0-dev";
7131
+ var KERNEL_VERSION = true ? "1.141.0" : "0.0.0-dev";
7132
7132
  var OS_RELEASE = "6.0.0-slicc";
7133
7133
  function procVersion() {
7134
7134
  return `Linux version ${OS_RELEASE} (slicc-kernel ${KERNEL_VERSION}) #1 SMP PREEMPT_DYNAMIC
@@ -20103,8 +20103,9 @@ var SessionWriter = class {
20103
20103
  return this.proven;
20104
20104
  }
20105
20105
  async mayTouch() {
20106
- if (this.s.verified) return true;
20107
- return (await this.proof("pg"))?.anchor !== void 0;
20106
+ if (this.s.verified) return { touch: true };
20107
+ const proof = await this.proof("pg");
20108
+ return { touch: proof?.anchor !== void 0, binding: proof?.binding };
20108
20109
  }
20109
20110
  async prove(protocol) {
20110
20111
  const s = this.s;
@@ -20118,10 +20119,13 @@ var SessionWriter = class {
20118
20119
  exit: s.exit
20119
20120
  });
20120
20121
  const anchor = found ? await s.anchoring(found) : void 0;
20121
- if (anchor) return { anchor };
20122
+ if (anchor) return this.anchored(anchor);
20122
20123
  }
20123
20124
  return s.verified ? {} : void 0;
20124
20125
  }
20126
+ async anchored(anchor) {
20127
+ return { anchor, binding: await this.s.anchoredBinding?.() };
20128
+ }
20125
20129
  async ask(protocol, position, extra) {
20126
20130
  const s = this.s;
20127
20131
  const proof = await this.proof(protocol);
@@ -20338,7 +20342,11 @@ function sealedConn(conn, s) {
20338
20342
  for (; ; ) {
20339
20343
  const bytes = await conn.read();
20340
20344
  if (!bytes) return bytes;
20341
- if (writer?.sawPg && pg.touch === void 0) pg.touch = await writer.mayTouch();
20345
+ if (writer?.sawPg && pg.touch === void 0) {
20346
+ const may = await writer.mayTouch();
20347
+ pg.touch = may.touch;
20348
+ pg.binding ??= may.binding;
20349
+ }
20342
20350
  const out = writer?.sawPg ? pg.filter(bytes) : bytes;
20343
20351
  if (pg.failed) {
20344
20352
  conn.close();
@@ -20589,7 +20597,8 @@ function anchoringOf(seal, info, servername) {
20589
20597
  const engine = seal.engine;
20590
20598
  if (!engine?.chainVerify || isIP2(servername) || info.peerCertificates.length === 0) return {};
20591
20599
  return {
20592
- anchoring: (found) => anchorFor(engine, info.peerCertificates, servername, found)
20600
+ anchoring: (found) => anchorFor(engine, info.peerCertificates, servername, found),
20601
+ anchoredBinding: () => endPointBinding(info.peerCertificates[0])
20593
20602
  };
20594
20603
  }
20595
20604
  function sealing(seal, raw2, info, servername) {