xoonya 2.0.0 → 2.1.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.
@@ -0,0 +1,391 @@
1
+ "use strict";
2
+
3
+ const packageJson = require("../package.json");
4
+ const proofSdk = require("../proof_sdk");
5
+ const { summarizeIntegrations } = require("../integrations/registry");
6
+
7
+ function buildComparisonPack() {
8
+ return {
9
+ ok: true,
10
+ product: packageJson.name,
11
+ category: "proof-comparison",
12
+ comparisons: [
13
+ {
14
+ alternative: "runtime_only_result_logs",
15
+ missing_capabilities: [
16
+ "deterministic_canonical_event_model",
17
+ "portable_receipt_boundary",
18
+ "proof_bundle_verification",
19
+ "proof_side_review_before_followthrough",
20
+ "replayable_evidence_contract"
21
+ ],
22
+ xoonya_advantage: "runtime output becomes durable proof material instead of unstructured logs"
23
+ },
24
+ {
25
+ alternative: "receipt_only_minimalism",
26
+ missing_capabilities: [
27
+ "proof_bundle_layer",
28
+ "bridge_carry_for_runtime_context",
29
+ "governance_and_operator_review_surfaces",
30
+ "result_package_handoff_review",
31
+ "proof_side_default_loops"
32
+ ],
33
+ xoonya_advantage: "keeps base proof narrow while still supporting richer portable verification and review flows"
34
+ },
35
+ {
36
+ alternative: "settlement_specific_proof_system",
37
+ missing_capabilities: [
38
+ "settlement_agnostic_proof_core",
39
+ "workflow_agnostic_proof_contract",
40
+ "bridge_for_multiple_runtime_sources",
41
+ "cross_runtime_replay_posture",
42
+ "adapter_friendly_handoff_boundary"
43
+ ],
44
+ xoonya_advantage: "one proof contract can survive changing payment rails, runtimes, and adapters"
45
+ }
46
+ ],
47
+ strongest_reasons_to_try: [
48
+ "one-line proof-side review for carried handoff bundles",
49
+ "canonical proof contract independent of payment and settlement churn",
50
+ "bridge/governance surfaces for real operator review instead of opaque proof blobs",
51
+ "deterministic carry of runtime economics and settlement refs without widening proof scope"
52
+ ]
53
+ };
54
+ }
55
+
56
+ function summarizeComparisonPack() {
57
+ const pack = buildComparisonPack();
58
+ return {
59
+ ok: true,
60
+ product: pack.product,
61
+ comparison_count: pack.comparisons.length,
62
+ strongest_reason_count: pack.strongest_reasons_to_try.length,
63
+ alternatives: pack.comparisons.map((entry) => entry.alternative)
64
+ };
65
+ }
66
+
67
+ function buildAdoptionPack() {
68
+ return {
69
+ ok: true,
70
+ product: packageJson.name,
71
+ category: "proof-adoption",
72
+ positioning_line: "proof spine for machine systems that need deterministic evidence, reviewable handoff, and replayable verification",
73
+ best_initial_wedge: "proof-side review and verification for machine actions that cross trust boundaries",
74
+ initial_adoption_targets: [
75
+ {
76
+ target: "runtime_builders_needing_proof_followthrough",
77
+ why_now: "many systems can execute work, but far fewer can hand runtime results into a stable proof-native contract"
78
+ },
79
+ {
80
+ target: "operators_needing_reviewable_machine_evidence",
81
+ why_now: "bridge and governance surfaces help teams inspect proof posture instead of trusting opaque receipts"
82
+ },
83
+ {
84
+ target: "adapter_integrators_with_multiple_runtime_sources",
85
+ why_now: "a narrow proof core is more durable when runtimes, payment rails, or settlement modes change"
86
+ },
87
+ {
88
+ target: "cross_runtime_replay_and_audit_flows",
89
+ why_now: "deterministic carry and replayable bundles matter when machine actions may later be disputed or verified"
90
+ }
91
+ ],
92
+ target_ecosystems: [
93
+ "runtime_verifiers",
94
+ "proof_operators",
95
+ "agent_builders",
96
+ "cross_runtime_audit_teams",
97
+ "adapter_integrators"
98
+ ],
99
+ first_success_paths: [
100
+ {
101
+ path: "carried_handoff_review",
102
+ start_with: "xoonya-review",
103
+ success_condition: "review summary exposes proof readiness and carried economic context from one handoff bundle"
104
+ },
105
+ {
106
+ path: "proof_center_default_loop",
107
+ start_with: "/v1/proof-center/default-loops/run",
108
+ success_condition: "builder creates and verifies a proof bundle through the default proof-native loop"
109
+ },
110
+ {
111
+ path: "result_package_handoff_followthrough",
112
+ start_with: "/v1/proof-center/result-package-handoff/review/summary",
113
+ success_condition: "runtime result package becomes a stable proof-side continuation instead of dead-end output"
114
+ }
115
+ ],
116
+ what_to_say_publicly: [
117
+ "deterministic proof contract independent of runtime churn",
118
+ "reviewable handoff before proof-native continuation",
119
+ "portable proof bundles instead of opaque logs",
120
+ "bridge and governance surfaces for real operator trust"
121
+ ],
122
+ what_not_to_lead_with: [
123
+ "proof only for one settlement rail",
124
+ "workflow-specific proof lock-in",
125
+ "receipt-only minimalism as the whole story",
126
+ "opaque cryptographic branding without machine usability"
127
+ ]
128
+ };
129
+ }
130
+
131
+ function summarizeAdoptionPack() {
132
+ const pack = buildAdoptionPack();
133
+ return {
134
+ ok: true,
135
+ product: pack.product,
136
+ wedge: pack.best_initial_wedge,
137
+ target_count: pack.initial_adoption_targets.length,
138
+ ecosystem_count: pack.target_ecosystems.length,
139
+ first_success_path_count: pack.first_success_paths.length,
140
+ lead_message_count: pack.what_to_say_publicly.length
141
+ };
142
+ }
143
+
144
+ function buildScenarioPack() {
145
+ return {
146
+ ok: true,
147
+ product: packageJson.name,
148
+ category: "proof-scenarios",
149
+ scenarios: [
150
+ {
151
+ scenario_ref: "scenario.carried_handoff.review",
152
+ title: "Carried Handoff Review",
153
+ intended_for: "first_proof_side_intake",
154
+ why_it_matters: "shows how a machine runtime handoff becomes a reviewable proof-side boundary",
155
+ steps: [
156
+ "take one handoff bundle from xytara or inline json",
157
+ "run xoonya-review --summary",
158
+ "inspect proof readiness and economic audit carry"
159
+ ],
160
+ entrypoint: "xoonya-review --file ./handoff.json --summary",
161
+ surfaces: [
162
+ "/v1/proof-center/result-package-handoff/review/summary",
163
+ "/v1/proof-center/result-package-handoff/review/bridge-summary"
164
+ ],
165
+ success_signals: [
166
+ "review accepted",
167
+ "run_ready true",
168
+ "economic audit summary preserved"
169
+ ]
170
+ },
171
+ {
172
+ scenario_ref: "scenario.default_proof.loop",
173
+ title: "Default Proof Loop",
174
+ intended_for: "proof_native_builder",
175
+ why_it_matters: "shows the narrow proof-native path without requiring the full commerce stack first",
176
+ steps: [
177
+ "construct one canonical event",
178
+ "run default proof loop",
179
+ "verify bundle and receipt"
180
+ ],
181
+ entrypoint: "POST /v1/proof-center/default-loops/run",
182
+ surfaces: [
183
+ "/v1/proof-center/summary",
184
+ "/v1/proof-center/default-loops",
185
+ "/v1/proof-center/default-loops/run"
186
+ ],
187
+ success_signals: [
188
+ "proof bundle created",
189
+ "receipt verified",
190
+ "bundle verification valid"
191
+ ]
192
+ },
193
+ {
194
+ scenario_ref: "scenario.result_package.followthrough",
195
+ title: "Result Package Followthrough",
196
+ intended_for: "runtime_to_proof_continuation",
197
+ why_it_matters: "shows that xoonya can become the stable proof continuation for runtime outputs from other systems",
198
+ steps: [
199
+ "receive a result package handoff",
200
+ "review continuation posture",
201
+ "run proof-native continuation"
202
+ ],
203
+ entrypoint: "POST /v1/proof-center/result-package-handoff/review/summary",
204
+ surfaces: [
205
+ "/v1/proof-center/result-package-handoff",
206
+ "/v1/proof-center/result-package-handoff/review/summary",
207
+ "/v1/proof-center/result-package-handoff/run"
208
+ ],
209
+ success_signals: [
210
+ "stable handoff contract visible",
211
+ "proof continuation path clear",
212
+ "bridge and governance followthrough available"
213
+ ]
214
+ }
215
+ ]
216
+ };
217
+ }
218
+
219
+ function summarizeScenarioPack() {
220
+ const pack = buildScenarioPack();
221
+ return {
222
+ ok: true,
223
+ product: pack.product,
224
+ scenario_count: pack.scenarios.length,
225
+ scenario_refs: pack.scenarios.map((entry) => entry.scenario_ref),
226
+ first_entrypoint: pack.scenarios[0] ? pack.scenarios[0].entrypoint : null
227
+ };
228
+ }
229
+
230
+ function buildLaunchPack() {
231
+ const releaseSummary = summarizeReleasePack();
232
+ const comparisonSummary = summarizeComparisonPack();
233
+ const adoptionSummary = summarizeAdoptionPack();
234
+ const scenarioSummary = summarizeScenarioPack();
235
+ return {
236
+ ok: true,
237
+ product: packageJson.name,
238
+ category: "proof-launch-pack",
239
+ launch_readiness: {
240
+ release_summary: releaseSummary,
241
+ comparison_summary: comparisonSummary,
242
+ adoption_summary: adoptionSummary,
243
+ scenario_summary: scenarioSummary,
244
+ proof_posture: {
245
+ proof_center_surface: "/v1/proof-center/summary",
246
+ bridge_surface: "/v1/proof-center/bridge/summary",
247
+ governance_surface: "/v1/proof-center/governance/summary"
248
+ }
249
+ },
250
+ launch_operator_checks: [
251
+ "release summary is reachable",
252
+ "comparison summary is reachable",
253
+ "adoption summary is reachable",
254
+ "scenario summary is reachable",
255
+ "proof center summary is reachable",
256
+ "bridge summary is reachable",
257
+ "governance summary is reachable"
258
+ ],
259
+ first_public_pointer: "/v1/release-pack/launch/summary"
260
+ };
261
+ }
262
+
263
+ function summarizeLaunchPack() {
264
+ const pack = buildLaunchPack();
265
+ return {
266
+ ok: true,
267
+ product: pack.product,
268
+ category: pack.category,
269
+ integration_count: pack.launch_readiness.release_summary.integration_count,
270
+ comparison_count: pack.launch_readiness.comparison_summary.comparison_count,
271
+ target_count: pack.launch_readiness.adoption_summary.target_count,
272
+ scenario_count: pack.launch_readiness.scenario_summary.scenario_count,
273
+ operator_check_count: pack.launch_operator_checks.length,
274
+ proof_bundle_version: pack.launch_readiness.release_summary.proof_bundle_version
275
+ };
276
+ }
277
+
278
+ function buildReleasePack() {
279
+ const proofCenterSummary = proofSdk.summarizeDefaultProofCenter();
280
+ const proofLoopSummary = proofSdk.summarizeDefaultProofLoops();
281
+ const transactionHandoffSummary = proofSdk.summarizeTransactionProofHandoffCenter();
282
+ const interactionSpineHandoffSummary = proofSdk.summarizeInteractionSpineProofHandoffCenter();
283
+ const resultPackageHandoffSummary = proofSdk.summarizeInteractionResultPackageHandoffCenter();
284
+ const bridgeSummary = proofSdk.summarizeBridgeCenter();
285
+ const governanceSummary = proofSdk.summarizeGovernanceCenter();
286
+ const integrationSummary = summarizeIntegrations();
287
+
288
+ return {
289
+ ok: true,
290
+ product: {
291
+ name: packageJson.name,
292
+ version: packageJson.version,
293
+ description: packageJson.description,
294
+ homepage: packageJson.homepage,
295
+ repository: packageJson.repository && packageJson.repository.url ? packageJson.repository.url : null,
296
+ license: packageJson.license
297
+ },
298
+ positioning: {
299
+ category: "proof-spine",
300
+ primary_audiences: [
301
+ "agent_builders",
302
+ "runtime_verifiers",
303
+ "proof_operators",
304
+ "adapter_integrators"
305
+ ],
306
+ core_claims: [
307
+ "deterministic_canonical_event_and_receipt_model",
308
+ "portable_proof_bundle_verification",
309
+ "replayable_machine_evidence",
310
+ "narrow_bridge_for_runtime_carry",
311
+ "result_package_handoff_review_and_run"
312
+ ]
313
+ },
314
+ first_contact: {
315
+ install: "npm install xoonya",
316
+ review_cli: "xoonya-review --file ./handoff.json --summary",
317
+ proof_center_surface: "/v1/proof-center/summary",
318
+ handoff_review_surface: "/v1/proof-center/result-package-handoff/review/summary",
319
+ handoff_run_surface: "/v1/proof-center/result-package-handoff/run",
320
+ bridge_surface: "/v1/proof-center/bridge/summary"
321
+ },
322
+ package_usage: {
323
+ install_command: "npm install xoonya",
324
+ verify_command: "npm run verify:all",
325
+ local_service_command: "npm start",
326
+ release_cli: "xoonya-release --summary",
327
+ docs: [
328
+ "README.md",
329
+ "START_HERE.md",
330
+ "FINAL_CONTRACT.md",
331
+ "SERVICE_CONTRACT.md",
332
+ "CROSS_RUNTIME_POSTURE.md",
333
+ "COMPATIBILITY_NOTE.md"
334
+ ]
335
+ },
336
+ proof_model: proofCenterSummary,
337
+ proof_loop_summary: proofLoopSummary,
338
+ transaction_handoff_summary: transactionHandoffSummary,
339
+ interaction_spine_handoff_summary: interactionSpineHandoffSummary,
340
+ result_package_handoff_summary: resultPackageHandoffSummary,
341
+ bridge_summary: bridgeSummary,
342
+ governance_summary: governanceSummary,
343
+ integration_summary: integrationSummary
344
+ };
345
+ }
346
+
347
+ function summarizeReleasePack() {
348
+ const pack = buildReleasePack();
349
+ return {
350
+ ok: true,
351
+ product: pack.product.name,
352
+ version: pack.product.version,
353
+ category: pack.positioning.category,
354
+ primary_audience_count: pack.positioning.primary_audiences.length,
355
+ core_claim_count: pack.positioning.core_claims.length,
356
+ proof_bundle_version: pack.proof_model.proof_bundle_version,
357
+ helper_count: pack.proof_model.helper_count,
358
+ loop_count: pack.proof_loop_summary.loop_count,
359
+ transaction_handoff_source_count: pack.transaction_handoff_summary.supported_source_ref_count,
360
+ interaction_spine_source_count: pack.interaction_spine_handoff_summary.supported_source_ref_count,
361
+ result_package_source_count: pack.result_package_handoff_summary.supported_source_ref_count,
362
+ integration_count: pack.integration_summary.integration_count,
363
+ production_default_integration_count: pack.integration_summary.production_default_count,
364
+ first_contact_cli: pack.first_contact.review_cli,
365
+ install_command: pack.package_usage.install_command,
366
+ verify_command: pack.package_usage.verify_command,
367
+ release_cli: pack.package_usage.release_cli,
368
+ doc_count: pack.package_usage.docs.length,
369
+ comparison_surface: "/v1/release-pack/comparison",
370
+ comparison_cli: "xoonya-release --comparison",
371
+ adoption_surface: "/v1/release-pack/adoption",
372
+ adoption_cli: "xoonya-release --adoption",
373
+ scenario_surface: "/v1/release-pack/scenarios",
374
+ scenario_cli: "xoonya-release --scenarios",
375
+ launch_surface: "/v1/release-pack/launch",
376
+ launch_cli: "xoonya-release --launch"
377
+ };
378
+ }
379
+
380
+ module.exports = {
381
+ buildReleasePack,
382
+ summarizeReleasePack,
383
+ buildComparisonPack,
384
+ summarizeComparisonPack,
385
+ buildAdoptionPack,
386
+ summarizeAdoptionPack,
387
+ buildScenarioPack,
388
+ summarizeScenarioPack,
389
+ buildLaunchPack,
390
+ summarizeLaunchPack
391
+ };
package/package.json CHANGED
@@ -1,8 +1,12 @@
1
1
  {
2
2
  "name": "xoonya",
3
- "version": "2.0.0",
3
+ "version": "2.1.0",
4
4
  "description": "Deterministic proof SDK for canonical events, receipts, proof bundles, and verification.",
5
5
  "main": "index.js",
6
+ "bin": {
7
+ "xoonya-review": "./bin/xoonya-review.js",
8
+ "xoonya-release": "./bin/xoonya-release.js"
9
+ },
6
10
  "type": "commonjs",
7
11
  "license": "Apache-2.0",
8
12
  "homepage": "https://xoonya.com",
@@ -24,8 +28,13 @@
24
28
  "index.js",
25
29
  "proof_sdk.js",
26
30
  "server.js",
31
+ "bin/",
32
+ "lib/",
27
33
  "integrations/",
28
34
  "vectors/",
35
+ "RELEASE_NOTES.md",
36
+ "RELEASE_CHECKLIST.md",
37
+ "PUBLISH_PLAN.md",
29
38
  ".env.example",
30
39
  "README.md",
31
40
  "START_HERE.md",
@@ -38,6 +47,9 @@
38
47
  "NOTICE"
39
48
  ],
40
49
  "sideEffects": false,
50
+ "publishConfig": {
51
+ "access": "public"
52
+ },
41
53
  "keywords": [
42
54
  "proof",
43
55
  "receipt",
@@ -55,6 +67,8 @@
55
67
  "verify:vectors": "node scripts/verify_vectors.js",
56
68
  "verify:examples": "node scripts/verify_examples.js",
57
69
  "verify:service": "node scripts/verify_service.js",
58
- "verify:all": "node scripts/verify_all.js && node scripts/verify_integrations.js && node scripts/verify_tooling.js && node scripts/verify_vectors.js && node scripts/verify_examples.js && node scripts/verify_service.js"
70
+ "verify:release-candidate": "node scripts/verify_release_candidate.js",
71
+ "verify:all": "node scripts/verify_all.js && node scripts/verify_integrations.js && node scripts/verify_tooling.js && node scripts/verify_vectors.js && node scripts/verify_examples.js && node scripts/verify_service.js",
72
+ "prepublishOnly": "npm run verify:release-candidate"
59
73
  }
60
74
  }
package/proof_sdk.js CHANGED
@@ -1093,6 +1093,23 @@ function extractEconomicConsequenceCarry(handoff) {
1093
1093
  usage_units: conformance.deterministic_consequence.usage_units,
1094
1094
  pricing_band: conformance.deterministic_consequence.pricing_band,
1095
1095
  meter_profile_ref: conformance.deterministic_consequence.meter_profile_ref,
1096
+ economic_audit_summary: {
1097
+ account_ref: conformance.deterministic_consequence.account_ref,
1098
+ usage_meter_ref: conformance.deterministic_consequence.usage_meter_ref,
1099
+ credit_spend_ref: conformance.deterministic_consequence.credit_spend_ref,
1100
+ usage_units: conformance.deterministic_consequence.usage_units,
1101
+ pricing_band: conformance.deterministic_consequence.pricing_band,
1102
+ meter_profile_ref: conformance.deterministic_consequence.meter_profile_ref,
1103
+ payment_ref: conformance.deterministic_consequence.payment_ref,
1104
+ settlement_ref: conformance.deterministic_consequence.settlement_ref,
1105
+ settlement_txid: conformance.deterministic_consequence.settlement_txid,
1106
+ settlement_status: conformance.deterministic_consequence.settlement_status,
1107
+ settlement_finality_status: conformance.deterministic_consequence.settlement_finality_status,
1108
+ treasury_receipt_ref: conformance.deterministic_consequence.treasury_receipt_ref,
1109
+ proof_ref: conformance.deterministic_consequence.proof_ref,
1110
+ conformance_pack_ref: conformance.conformance_pack_ref,
1111
+ review_summary_surface: conformance.review_summary_surface
1112
+ },
1096
1113
  next_surface: conformance.next_surface,
1097
1114
  review_summary_surface: conformance.review_summary_surface
1098
1115
  }
@@ -1412,6 +1429,9 @@ function summarizeReviewedInteractionResultPackageHandoff(input) {
1412
1429
  economic_consequence_ready: Boolean(review.economic_consequence_review),
1413
1430
  usage_meter_ref: review.economic_consequence_review ? review.economic_consequence_review.usage_meter_ref : null,
1414
1431
  credit_spend_ref: review.economic_consequence_review ? review.economic_consequence_review.credit_spend_ref : null,
1432
+ economic_audit_summary: review.economic_consequence_review
1433
+ ? review.economic_consequence_review.economic_audit_summary || null
1434
+ : null,
1415
1435
  economic_consequence_review: review.economic_consequence_review || null
1416
1436
  };
1417
1437
  }
@@ -2218,6 +2238,13 @@ function buildEconomicConsequenceBridgeHandoff(input) {
2218
2238
  const usageMeterRef = normalizeString(body.usage_meter_ref);
2219
2239
  const meterProfileRef = normalizeString(body.meter_profile_ref);
2220
2240
  const creditSpendRef = normalizeString(body.credit_spend_ref);
2241
+ const paymentRef = normalizeString(body.payment_ref);
2242
+ const settlementRef = normalizeString(body.settlement_ref);
2243
+ const settlementTxid = normalizeString(body.settlement_txid);
2244
+ const settlementStatus = normalizeString(body.settlement_status);
2245
+ const settlementFinalityStatus = normalizeString(body.settlement_finality_status);
2246
+ const treasuryReceiptRef = normalizeString(body.treasury_receipt_ref);
2247
+ const proofRef = normalizeString(body.proof_ref);
2221
2248
  const usageMeter = body.usage_meter && typeof body.usage_meter === "object" && !Array.isArray(body.usage_meter)
2222
2249
  ? body.usage_meter
2223
2250
  : null;
@@ -2249,7 +2276,14 @@ function buildEconomicConsequenceBridgeHandoff(input) {
2249
2276
  meter_profile_ref: meterProfileRef,
2250
2277
  credit_spend_ref: creditSpendRef,
2251
2278
  credit_spend_hash: canonicalJsonSha256Hex(creditSpend),
2252
- credit_spend: creditSpend
2279
+ credit_spend: creditSpend,
2280
+ payment_ref: paymentRef || null,
2281
+ settlement_ref: settlementRef || null,
2282
+ settlement_txid: settlementTxid || null,
2283
+ settlement_status: settlementStatus || null,
2284
+ settlement_finality_status: settlementFinalityStatus || null,
2285
+ treasury_receipt_ref: treasuryReceiptRef || null,
2286
+ proof_ref: proofRef || null
2253
2287
  }
2254
2288
  };
2255
2289
  return {
@@ -2277,7 +2311,14 @@ function buildEconomicConsequenceConformancePack(input) {
2277
2311
  credit_spend_ref: economicsContext.credit_spend_ref,
2278
2312
  usage_units: Number(economicsContext.usage_meter.units || 0),
2279
2313
  pricing_band: normalizeString(economicsContext.usage_meter.pricing_band || null) || null,
2280
- meter_profile_ref: economicsContext.meter_profile_ref
2314
+ meter_profile_ref: economicsContext.meter_profile_ref,
2315
+ payment_ref: economicsContext.payment_ref || null,
2316
+ settlement_ref: economicsContext.settlement_ref || null,
2317
+ settlement_txid: economicsContext.settlement_txid || null,
2318
+ settlement_status: economicsContext.settlement_status || null,
2319
+ settlement_finality_status: economicsContext.settlement_finality_status || null,
2320
+ treasury_receipt_ref: economicsContext.treasury_receipt_ref || null,
2321
+ proof_ref: economicsContext.proof_ref || null
2281
2322
  },
2282
2323
  preserved_routes: [
2283
2324
  "/v1/proof-center/bridge/economic-handoff",