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.
- package/FINAL_CONTRACT.md +6 -6
- package/PUBLISH_PLAN.md +12 -0
- package/README.md +59 -2
- package/RELEASE_CHECKLIST.md +10 -0
- package/RELEASE_NOTES.md +19 -0
- package/bin/xoonya-release.js +169 -0
- package/bin/xoonya-review.js +70 -0
- package/index.js +11 -1
- package/lib/announcement_pack.js +61 -0
- package/lib/ecosystem_entry.js +64 -0
- package/lib/launch_narrative.js +53 -0
- package/lib/outreach_proof.js +71 -0
- package/lib/publish_plan.js +51 -0
- package/lib/release_candidate.js +50 -0
- package/lib/release_center.js +113 -0
- package/lib/release_history.js +72 -0
- package/lib/release_manifest.js +114 -0
- package/lib/release_pack.js +391 -0
- package/package.json +16 -2
- package/proof_sdk.js +43 -2
- package/server.js +200 -0
|
@@ -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.
|
|
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:
|
|
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",
|