xoonya 1.15.0 → 1.16.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.
package/README.md CHANGED
@@ -143,6 +143,8 @@ Primary proof-model routes:
143
143
  - `POST /v1/proof-center/result-package-handoff/review/bridge-boundary`
144
144
  - `POST /v1/proof-center/result-package-handoff/review/bridge-carry`
145
145
  - `POST /v1/proof-center/result-package-handoff/review/bridge-run`
146
+ - `POST /v1/proof-center/result-package-handoff/review/handoff-continuity`
147
+ - `POST /v1/proof-center/result-package-handoff/review/handoff-run`
146
148
  - `POST /v1/proof-center/result-package-handoff/run`
147
149
 
148
150
  The result-package review surface now also returns a durability summary so the preserved execution, economic, and proof-facing context is easier to inspect before proof-native execution.
@@ -153,6 +155,8 @@ It now also exposes composition-contract summaries so the proof-side default sea
153
155
  It now also exposes compact contract-carry summaries so the stable proof-side contract context is easier to inspect directly without expanding proof scope.
154
156
  It now also exposes bridge summaries, bridge-boundary summaries, and bridge-carry summaries so the proof-side review seam is easier to treat as an adapter-ready bridge without widening proof scope.
155
157
  It now also exposes a bridge-run summary so that same proof-side bridge can be read directly as the final run posture instead of only as review-stage carry.
158
+ It now also exposes a handoff-continuity summary so the proof-side bridge can be treated more clearly as a stable handoff contract into proof-native execution.
159
+ It now also exposes a handoff-run summary so that same handoff contract can be read directly as the final proof-native run posture instead of only as continuity guidance.
156
160
  - `POST /v1/events/canonicalize`
157
161
  - `POST /v1/events/hash`
158
162
  - `POST /v1/receipts/emit`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xoonya",
3
- "version": "1.15.0",
3
+ "version": "1.16.0",
4
4
  "description": "Deterministic proof SDK for canonical events, receipts, proof bundles, and verification.",
5
5
  "main": "index.js",
6
6
  "type": "commonjs",
package/proof_sdk.js CHANGED
@@ -1572,6 +1572,31 @@ function summarizeReviewBridgeRun(input) {
1572
1572
  };
1573
1573
  }
1574
1574
 
1575
+ function summarizeReviewHandoffContinuity(input) {
1576
+ const bridgeRun = summarizeReviewBridgeRun(input);
1577
+ return {
1578
+ ok: bridgeRun.ok === true,
1579
+ adapter_bridge_ref: bridgeRun.adapter_bridge_ref || null,
1580
+ handoff_contract_ref: bridgeRun.adapter_bridge_ref ? `handoff.${bridgeRun.adapter_bridge_ref}` : null,
1581
+ stable_handoff_ids: Array.isArray(bridgeRun.accepted_bridge_ids) ? bridgeRun.accepted_bridge_ids : [],
1582
+ handoff_ready: bridgeRun.bridge_ready === true,
1583
+ run_surface: bridgeRun.run_surface || null,
1584
+ continuity_path_ids: Array.isArray(bridgeRun.run_path_ids) ? bridgeRun.run_path_ids : []
1585
+ };
1586
+ }
1587
+
1588
+ function summarizeReviewHandoffRun(input) {
1589
+ const continuity = summarizeReviewHandoffContinuity(input);
1590
+ return {
1591
+ ok: continuity.ok === true,
1592
+ handoff_contract_ref: continuity.handoff_contract_ref || null,
1593
+ accepted_handoff_ids: Array.isArray(continuity.stable_handoff_ids) ? continuity.stable_handoff_ids : [],
1594
+ handoff_ready: continuity.handoff_ready === true,
1595
+ run_surface: continuity.run_surface || null,
1596
+ run_path_ids: Array.isArray(continuity.continuity_path_ids) ? continuity.continuity_path_ids : []
1597
+ };
1598
+ }
1599
+
1575
1600
  function runDefaultProofLoop(loopRef, input) {
1576
1601
  const loop = getDefaultProofLoop(loopRef);
1577
1602
  if (!loop) {
@@ -1639,6 +1664,8 @@ module.exports = {
1639
1664
  summarizeReviewBridgeBoundary,
1640
1665
  summarizeReviewBridgeCarry,
1641
1666
  summarizeReviewBridgeRun,
1667
+ summarizeReviewHandoffContinuity,
1668
+ summarizeReviewHandoffRun,
1642
1669
  runInteractionResultPackageHandoff,
1643
1670
  runInteractionSpineProofHandoff,
1644
1671
  runTransactionProofHandoff,
package/server.js CHANGED
@@ -325,6 +325,28 @@ async function routeRequest(req, res) {
325
325
  return;
326
326
  }
327
327
 
328
+ if (req.method === 'POST' && url.pathname === '/v1/proof-center/result-package-handoff/review/handoff-continuity') {
329
+ try {
330
+ const body = await readJsonBody(req);
331
+ const result = proofSdk.summarizeReviewHandoffContinuity(body);
332
+ sendJson(res, 200, result);
333
+ } catch (error) {
334
+ sendJson(res, 400, { ok: false, reason: error.message });
335
+ }
336
+ return;
337
+ }
338
+
339
+ if (req.method === 'POST' && url.pathname === '/v1/proof-center/result-package-handoff/review/handoff-run') {
340
+ try {
341
+ const body = await readJsonBody(req);
342
+ const result = proofSdk.summarizeReviewHandoffRun(body);
343
+ sendJson(res, 200, result);
344
+ } catch (error) {
345
+ sendJson(res, 400, { ok: false, reason: error.message });
346
+ }
347
+ return;
348
+ }
349
+
328
350
  if (req.method === 'POST' && url.pathname === '/v1/receipts/verify') {
329
351
  try {
330
352
  const body = await readJsonBody(req);