xytara 3.1.16 → 3.2.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.
Files changed (390) hide show
  1. package/README.md +120 -92
  2. package/RELEASE_NOTES.md +7 -3
  3. package/START_HERE.md +56 -224
  4. package/bin/xytara.js +21 -8
  5. package/client.js +79 -1
  6. package/lib/{delivery_receipt.js → delivery_receipt_verify.js} +14 -100
  7. package/package.json +25 -35
  8. package/scripts/verify_client.js +418 -0
  9. package/scripts/verify_release_candidate.js +146 -45
  10. package/.env.example +0 -173
  11. package/ADAPTER_START_HERE.md +0 -56
  12. package/BSV_TERANODE_PLATFORM_DISCONTINUITY_RUNBOOK.md +0 -126
  13. package/CARRIED_HANDOFF_DEMO.md +0 -60
  14. package/EXAMPLE_PATHS.md +0 -53
  15. package/FINAL_CONTRACT.md +0 -498
  16. package/PARTNER_READY_PATH.md +0 -71
  17. package/PUBLIC_DEMO_SCRIPT.md +0 -78
  18. package/REAL_PAYMENT_SETUP.md +0 -320
  19. package/SERVICE_CONTRACT.md +0 -419
  20. package/SUPABASE_RUNTIME_STATE_SETUP.md +0 -61
  21. package/TERMINOLOGY.md +0 -50
  22. package/WHY_XYTARA_XOONYA.md +0 -63
  23. package/XT1_EXECUTION_TRUTH_STANDARD.md +0 -78
  24. package/XYTARA_ADAPTER_PROTOCOL_TRUTH_MODEL.md +0 -75
  25. package/XYTARA_AUTONOMOUS_ENTRY_MODEL.md +0 -124
  26. package/XYTARA_DEFAULT_PATH_MODEL.md +0 -84
  27. package/XYTARA_EXECUTION_TRUTH_MODEL.md +0 -171
  28. package/XYTARA_PAYMENT_RAIL_TRUTH_MODEL.md +0 -68
  29. package/adapters/AUTHORING_GUIDE.md +0 -244
  30. package/adapters/ONBOARDING_POSTURE.md +0 -61
  31. package/adapters/THIRD_PARTY_SUBMISSION_PROCESS.md +0 -84
  32. package/adapters/adapter-manifest.schema.json +0 -283
  33. package/adapters/examples/example-execution-adapter.js +0 -61
  34. package/adapters/examples/example-execution-adapter.manifest.json +0 -81
  35. package/adapters/examples/example-settlement-adapter.js +0 -55
  36. package/adapters/examples/example-settlement-adapter.manifest.json +0 -78
  37. package/adapters/examples/example-third-party-acp-registration.submission-bundle.json +0 -124
  38. package/adapters/examples/example-third-party-erc8004-registration.submission-bundle.json +0 -121
  39. package/adapters/examples/example-third-party-identity-registration.certification-pack.json +0 -22
  40. package/adapters/examples/example-third-party-identity-registration.record.json +0 -26
  41. package/adapters/examples/example-third-party-identity-registration.submission-bundle.json +0 -126
  42. package/adapters/examples/example-third-party-langchain-registration.submission-bundle.json +0 -124
  43. package/adapters/examples/example-third-party-mpp-registration.submission-bundle.json +0 -120
  44. package/adapters/examples/example-third-party-registration.certification-pack.json +0 -22
  45. package/adapters/examples/example-third-party-registration.record.json +0 -28
  46. package/adapters/examples/example-third-party-registration.submission-bundle.json +0 -126
  47. package/adapters/examples/example-third-party-settlement-registration.certification-pack.json +0 -22
  48. package/adapters/examples/example-third-party-settlement-registration.record.json +0 -26
  49. package/adapters/examples/example-third-party-settlement-registration.submission-bundle.json +0 -127
  50. package/adapters/examples/langchain-reference-execution-adapter.js +0 -81
  51. package/adapters/examples/langchain-reference-execution-adapter.manifest.json +0 -79
  52. package/adapters/examples/langgraph-reference-execution-adapter.js +0 -81
  53. package/adapters/examples/langgraph-reference-execution-adapter.manifest.json +0 -79
  54. package/adapters/examples/minimal-third-party-execution-adapter.js +0 -61
  55. package/adapters/examples/minimal-third-party-execution-adapter.manifest.json +0 -79
  56. package/adapters/examples/minimal-third-party-execution-registration.record.json +0 -26
  57. package/adapters/examples/minimal-third-party-execution.certification-pack.json +0 -22
  58. package/adapters/examples/minimal-third-party-execution.submission-bundle.json +0 -126
  59. package/adapters/integration-certification-pack.schema.json +0 -82
  60. package/adapters/integration-registration-record.schema.json +0 -114
  61. package/adapters/integration-submission-bundle-set.schema.json +0 -39
  62. package/adapters/integration-submission-bundle.schema.json +0 -34
  63. package/adapters/interfaces.js +0 -56
  64. package/bin/xytara-release.js +0 -1429
  65. package/examples/_demo_env.js +0 -40
  66. package/examples/adapter_review_walkthrough.js +0 -54
  67. package/examples/export_carried_handoff.js +0 -81
  68. package/examples/funded_runtime_walkthrough.js +0 -71
  69. package/examples/partner_launch_walkthrough.js +0 -44
  70. package/examples/quickstart.js +0 -3256
  71. package/fixtures/catalog.js +0 -1156
  72. package/index.js +0 -395
  73. package/integrations/dispatch.js +0 -276
  74. package/integrations/registry-snapshot.schema.json +0 -36
  75. package/integrations/registry.js +0 -2261
  76. package/integrations/views.js +0 -28
  77. package/lib/a2a_lane_contract.js +0 -104
  78. package/lib/a2a_rpc.js +0 -287
  79. package/lib/a2c_lane_contract.js +0 -111
  80. package/lib/account_auth.js +0 -585
  81. package/lib/acp_lane_contract.js +0 -54
  82. package/lib/activity_audit_contract.js +0 -322
  83. package/lib/adapter_certification_contract.js +0 -130
  84. package/lib/adapter_depth_contract.js +0 -218
  85. package/lib/adapter_pack.js +0 -118
  86. package/lib/adapter_partner_pack.js +0 -89
  87. package/lib/adapter_promotion_pack.js +0 -89
  88. package/lib/adapter_protocol_truth_contract.js +0 -229
  89. package/lib/agent_identity.js +0 -162
  90. package/lib/announcement_pack.js +0 -61
  91. package/lib/artifact_distribution_lane_contract.js +0 -54
  92. package/lib/asyncapi_contract.js +0 -150
  93. package/lib/auth_interop_contract.js +0 -80
  94. package/lib/authority_binding_lifecycle_contract.js +0 -182
  95. package/lib/autonomous_entry_contract.js +0 -409
  96. package/lib/bolt_adapter.js +0 -187
  97. package/lib/bolt_lane_contract.js +0 -55
  98. package/lib/bolt_payment_front.js +0 -224
  99. package/lib/business_cockpit.js +0 -378
  100. package/lib/buyer_event_log.js +0 -230
  101. package/lib/buyer_safety_policy.js +0 -132
  102. package/lib/capability_execution_truth.js +0 -276
  103. package/lib/capability_registry.js +0 -633
  104. package/lib/catalog_contract.js +0 -966
  105. package/lib/catalog_family_model.js +0 -193
  106. package/lib/catalog_views.js +0 -55
  107. package/lib/cdp_jwt.js +0 -57
  108. package/lib/checkout_event_security.js +0 -142
  109. package/lib/checkout_processor_adapter.js +0 -217
  110. package/lib/cloudevents_contract.js +0 -80
  111. package/lib/command_flow.js +0 -911
  112. package/lib/commerce_artifacts.js +0 -591
  113. package/lib/commerce_authority.js +0 -449
  114. package/lib/commerce_bridge.js +0 -274
  115. package/lib/commerce_cases.js +0 -399
  116. package/lib/commerce_checkout.js +0 -509
  117. package/lib/commerce_coordination.js +0 -346
  118. package/lib/commerce_economics.js +0 -4017
  119. package/lib/commerce_identity.js +0 -578
  120. package/lib/commerce_quotes.js +0 -266
  121. package/lib/commerce_reports.js +0 -14461
  122. package/lib/commerce_runtime.js +0 -322
  123. package/lib/commerce_shell.js +0 -257
  124. package/lib/crypto_agility_matrix.js +0 -125
  125. package/lib/default_path_contract.js +0 -412
  126. package/lib/delivery_summary_contract.js +0 -95
  127. package/lib/ecosystem_entry.js +0 -64
  128. package/lib/erc8004_lane_contract.js +0 -65
  129. package/lib/event_system_lane_contract.js +0 -75
  130. package/lib/execution_dedupe.js +0 -86
  131. package/lib/execution_truth_contract.js +0 -234
  132. package/lib/external_credit_bridge.js +0 -142
  133. package/lib/external_execution_policy.js +0 -143
  134. package/lib/external_execution_runtime.js +0 -238
  135. package/lib/feature_control_lane_contract.js +0 -54
  136. package/lib/first_run_conversion_contract.js +0 -290
  137. package/lib/framework_lane_contract.js +0 -89
  138. package/lib/framework_provider_promotion.js +0 -235
  139. package/lib/full_catalog_contract.js +0 -525
  140. package/lib/go_live_operator_pack.js +0 -391
  141. package/lib/http_transport.js +0 -99
  142. package/lib/identity_auth.js +0 -175
  143. package/lib/identity_interop_contract.js +0 -82
  144. package/lib/integration_matrix_contract.js +0 -102
  145. package/lib/l402_adapter.js +0 -241
  146. package/lib/l402_lane_contract.js +0 -55
  147. package/lib/l402_payment_front.js +0 -265
  148. package/lib/launch_narrative.js +0 -53
  149. package/lib/lifecycle_continuity_contract.js +0 -115
  150. package/lib/machine_identity_registry_contract.js +0 -199
  151. package/lib/major_rails_lane_contract.js +0 -150
  152. package/lib/market_lane_contract.js +0 -467
  153. package/lib/market_lane_depth_contract.js +0 -182
  154. package/lib/market_lane_promotion_contract.js +0 -210
  155. package/lib/market_lane_trace_contract.js +0 -278
  156. package/lib/mcp_lane_contract.js +0 -137
  157. package/lib/mpp_adapter.js +0 -237
  158. package/lib/network_transport.js +0 -110
  159. package/lib/offline_verifiability_recovery_contract.js +0 -155
  160. package/lib/openapi_contract.js +0 -300
  161. package/lib/operational_receipt_contract.js +0 -165
  162. package/lib/operator_intelligence.js +0 -407
  163. package/lib/outreach_copy_pack.js +0 -51
  164. package/lib/outreach_message_pack.js +0 -71
  165. package/lib/outreach_proof.js +0 -71
  166. package/lib/outreach_target_pack.js +0 -60
  167. package/lib/partner_intelligence.js +0 -105
  168. package/lib/payment_config.js +0 -257
  169. package/lib/payment_front_registry.js +0 -53
  170. package/lib/payment_protocol_contract.js +0 -165
  171. package/lib/payment_rail_truth_contract.js +0 -324
  172. package/lib/payment_verification.js +0 -357
  173. package/lib/phase_10_closeout_pack.js +0 -45
  174. package/lib/phase_10_completion_pack.js +0 -76
  175. package/lib/phase_10_decision_record_pack.js +0 -54
  176. package/lib/phase_10_decision_resolution_pack.js +0 -53
  177. package/lib/phase_10_demand_signal_adapters_runtime_pack.js +0 -74
  178. package/lib/phase_10_ecosystem_backlog_triage_runtime_pack.js +0 -74
  179. package/lib/phase_10_freeze_baseline_pack.js +0 -67
  180. package/lib/phase_10_freeze_review_pack.js +0 -64
  181. package/lib/phase_10_gate_pack.js +0 -57
  182. package/lib/phase_10_long_tail_continuity_pack.js +0 -80
  183. package/lib/phase_10_long_tail_ecosystem_pack.js +0 -66
  184. package/lib/phase_10_niche_extension_registry_runtime_pack.js +0 -74
  185. package/lib/phase_1_claude_mcp_pack.js +0 -60
  186. package/lib/phase_1_claude_mcp_runtime_pack.js +0 -52
  187. package/lib/phase_1_ecosystem_pack.js +0 -67
  188. package/lib/phase_1_openai_codex_pack.js +0 -60
  189. package/lib/phase_1_openai_codex_runtime_pack.js +0 -52
  190. package/lib/phase_2_base_runtime_pack.js +0 -71
  191. package/lib/phase_2_base_usdc_runtime_pack.js +0 -72
  192. package/lib/phase_2_closeout_pack.js +0 -65
  193. package/lib/phase_2_completion_pack.js +0 -113
  194. package/lib/phase_2_decision_record_pack.js +0 -66
  195. package/lib/phase_2_decision_resolution_pack.js +0 -69
  196. package/lib/phase_2_eth_runtime_pack.js +0 -70
  197. package/lib/phase_2_evm_base_runtime_pack.js +0 -73
  198. package/lib/phase_2_evm_runtime_pack.js +0 -71
  199. package/lib/phase_2_flip_preview_pack.js +0 -60
  200. package/lib/phase_2_freeze_review_pack.js +0 -99
  201. package/lib/phase_2_gate_pack.js +0 -77
  202. package/lib/phase_2_payment_rails_pack.js +0 -71
  203. package/lib/phase_2_usdc_runtime_pack.js +0 -71
  204. package/lib/phase_3_brc_runtime_pack.js +0 -81
  205. package/lib/phase_3_bsv_teranode_runtime_pack.js +0 -83
  206. package/lib/phase_3_closeout_pack.js +0 -62
  207. package/lib/phase_3_completion_pack.js +0 -94
  208. package/lib/phase_3_decision_record_pack.js +0 -64
  209. package/lib/phase_3_decision_resolution_pack.js +0 -69
  210. package/lib/phase_3_freeze_baseline_pack.js +0 -67
  211. package/lib/phase_3_freeze_review_pack.js +0 -80
  212. package/lib/phase_3_gate_pack.js +0 -76
  213. package/lib/phase_3_metanet_runtime_pack.js +0 -81
  214. package/lib/phase_3_native_bsv_pack.js +0 -91
  215. package/lib/phase_3_native_continuity_pack.js +0 -82
  216. package/lib/phase_4_attestation_runtime_pack.js +0 -75
  217. package/lib/phase_4_closeout_pack.js +0 -45
  218. package/lib/phase_4_completion_pack.js +0 -94
  219. package/lib/phase_4_decision_record_pack.js +0 -54
  220. package/lib/phase_4_decision_resolution_pack.js +0 -45
  221. package/lib/phase_4_erc8004_runtime_pack.js +0 -76
  222. package/lib/phase_4_freeze_baseline_pack.js +0 -67
  223. package/lib/phase_4_freeze_review_pack.js +0 -68
  224. package/lib/phase_4_gate_pack.js +0 -58
  225. package/lib/phase_4_identity_registry_runtime_pack.js +0 -75
  226. package/lib/phase_4_identity_trust_pack.js +0 -73
  227. package/lib/phase_4_trust_continuity_pack.js +0 -86
  228. package/lib/phase_5_antelope_runtime_pack.js +0 -76
  229. package/lib/phase_5_closeout_pack.js +0 -44
  230. package/lib/phase_5_completion_pack.js +0 -82
  231. package/lib/phase_5_constellation_dag_runtime_pack.js +0 -76
  232. package/lib/phase_5_decision_record_pack.js +0 -54
  233. package/lib/phase_5_decision_resolution_pack.js +0 -45
  234. package/lib/phase_5_digibyte_dgb_runtime_pack.js +0 -76
  235. package/lib/phase_5_freeze_baseline_pack.js +0 -67
  236. package/lib/phase_5_freeze_review_pack.js +0 -68
  237. package/lib/phase_5_gate_pack.js +0 -58
  238. package/lib/phase_5_hedera_hbar_runtime_pack.js +0 -76
  239. package/lib/phase_5_kaspa_kas_runtime_pack.js +0 -76
  240. package/lib/phase_5_major_rails_continuity_pack.js +0 -86
  241. package/lib/phase_5_major_rails_pack.js +0 -110
  242. package/lib/phase_5_metal_runtime_pack.js +0 -76
  243. package/lib/phase_5_polkadot_dot_runtime_pack.js +0 -76
  244. package/lib/phase_5_proton_xpr_runtime_pack.js +0 -76
  245. package/lib/phase_5_solana_runtime_pack.js +0 -76
  246. package/lib/phase_6_autogen_runtime_pack.js +0 -72
  247. package/lib/phase_6_closeout_pack.js +0 -46
  248. package/lib/phase_6_completion_pack.js +0 -77
  249. package/lib/phase_6_decision_record_pack.js +0 -54
  250. package/lib/phase_6_decision_resolution_pack.js +0 -53
  251. package/lib/phase_6_framework_continuity_pack.js +0 -81
  252. package/lib/phase_6_framework_runtime_pack.js +0 -68
  253. package/lib/phase_6_freeze_baseline_pack.js +0 -68
  254. package/lib/phase_6_freeze_review_pack.js +0 -65
  255. package/lib/phase_6_gate_pack.js +0 -59
  256. package/lib/phase_6_langchain_runtime_pack.js +0 -72
  257. package/lib/phase_6_langgraph_runtime_pack.js +0 -72
  258. package/lib/phase_6_semantic_kernel_runtime_pack.js +0 -72
  259. package/lib/phase_7_closeout_pack.js +0 -45
  260. package/lib/phase_7_completion_pack.js +0 -85
  261. package/lib/phase_7_decision_record_pack.js +0 -53
  262. package/lib/phase_7_decision_resolution_pack.js +0 -53
  263. package/lib/phase_7_event_system_continuity_pack.js +0 -89
  264. package/lib/phase_7_event_system_pack.js +0 -76
  265. package/lib/phase_7_freeze_baseline_pack.js +0 -74
  266. package/lib/phase_7_freeze_review_pack.js +0 -65
  267. package/lib/phase_7_gate_pack.js +0 -58
  268. package/lib/phase_7_kafka_runtime_pack.js +0 -74
  269. package/lib/phase_7_mqtt_runtime_pack.js +0 -74
  270. package/lib/phase_7_nats_runtime_pack.js +0 -74
  271. package/lib/phase_7_webhook_event_bus_runtime_pack.js +0 -74
  272. package/lib/phase_8_closeout_pack.js +0 -46
  273. package/lib/phase_8_completion_pack.js +0 -82
  274. package/lib/phase_8_decision_record_pack.js +0 -54
  275. package/lib/phase_8_decision_resolution_pack.js +0 -53
  276. package/lib/phase_8_external_receipt_import_runtime_pack.js +0 -74
  277. package/lib/phase_8_external_result_import_runtime_pack.js +0 -74
  278. package/lib/phase_8_freeze_baseline_pack.js +0 -71
  279. package/lib/phase_8_freeze_review_pack.js +0 -64
  280. package/lib/phase_8_gate_pack.js +0 -58
  281. package/lib/phase_8_proof_bridge_continuity_pack.js +0 -86
  282. package/lib/phase_8_proof_bridges_pack.js +0 -72
  283. package/lib/phase_8_proof_bundle_normalization_runtime_pack.js +0 -74
  284. package/lib/phase_9_closeout_pack.js +0 -46
  285. package/lib/phase_9_completion_pack.js +0 -82
  286. package/lib/phase_9_custody_refs_runtime_pack.js +0 -74
  287. package/lib/phase_9_decision_record_pack.js +0 -54
  288. package/lib/phase_9_decision_resolution_pack.js +0 -53
  289. package/lib/phase_9_freeze_baseline_pack.js +0 -71
  290. package/lib/phase_9_freeze_review_pack.js +0 -64
  291. package/lib/phase_9_gate_pack.js +0 -58
  292. package/lib/phase_9_operator_accounting_bridges_runtime_pack.js +0 -74
  293. package/lib/phase_9_treasury_connectivity_pack.js +0 -72
  294. package/lib/phase_9_treasury_continuity_pack.js +0 -86
  295. package/lib/phase_9_treasury_destinations_runtime_pack.js +0 -74
  296. package/lib/phase_program_pack.js +0 -120
  297. package/lib/pricing_optimization_contract.js +0 -775
  298. package/lib/protocol_lane_contract.js +0 -117
  299. package/lib/provenance_lane_contract.js +0 -54
  300. package/lib/provider_lane_contract.js +0 -240
  301. package/lib/provider_network_contract.js +0 -149
  302. package/lib/provider_payout_execution.js +0 -155
  303. package/lib/provider_registry.js +0 -852
  304. package/lib/provider_runtime_journey_contract.js +0 -183
  305. package/lib/public_surface_policy_contract.js +0 -111
  306. package/lib/publish_plan.js +0 -51
  307. package/lib/rate_limiter.js +0 -81
  308. package/lib/record_queries.js +0 -48
  309. package/lib/release_candidate.js +0 -50
  310. package/lib/release_center.js +0 -1093
  311. package/lib/release_history.js +0 -205
  312. package/lib/release_manifest.js +0 -113
  313. package/lib/release_pack.js +0 -453
  314. package/lib/request_rate_limit.js +0 -144
  315. package/lib/resource_views.js +0 -31
  316. package/lib/revenue_launch_path_contract.js +0 -326
  317. package/lib/route_matchers.js +0 -34
  318. package/lib/route_params.js +0 -19
  319. package/lib/runtime_bridge.js +0 -124
  320. package/lib/runtime_operations_worker.js +0 -282
  321. package/lib/runtime_state_store.js +0 -495
  322. package/lib/settlement_bsv_live.js +0 -600
  323. package/lib/settlement_bsv_teranode.js +0 -117
  324. package/lib/settlement_lane_contract.js +0 -111
  325. package/lib/shared_signals_lane_contract.js +0 -54
  326. package/lib/signed_audit_provenance_contract.js +0 -83
  327. package/lib/soft_launch_pack.js +0 -78
  328. package/lib/stablecoin_lane_contract.js +0 -76
  329. package/lib/stripe_mpp_lane_contract.js +0 -96
  330. package/lib/stripe_mpp_payment_front.js +0 -258
  331. package/lib/telemetry_lane_contract.js +0 -54
  332. package/lib/treasury_destinations_contract.js +0 -764
  333. package/lib/treasury_egress_policy_contract.js +0 -91
  334. package/lib/treasury_lane_contract.js +0 -84
  335. package/lib/trust_portability_boundary_contract.js +0 -72
  336. package/lib/x402_facilitator.js +0 -198
  337. package/lib/x402_lane_contract.js +0 -136
  338. package/lib/x402_settlement_recovery.js +0 -175
  339. package/scripts/buyer_events_daily_report.js +0 -79
  340. package/scripts/registry_cli.js +0 -275
  341. package/scripts/state_backup_offsite.js +0 -196
  342. package/scripts/verify_a2a_rpc.js +0 -131
  343. package/scripts/verify_adapters.js +0 -554
  344. package/scripts/verify_agent_identity.js +0 -153
  345. package/scripts/verify_all.js +0 -4963
  346. package/scripts/verify_bolt_adapter.js +0 -128
  347. package/scripts/verify_buyer_event_log.js +0 -128
  348. package/scripts/verify_buyer_safety.js +0 -141
  349. package/scripts/verify_cdp_facilitator.js +0 -110
  350. package/scripts/verify_checkout_processor.js +0 -109
  351. package/scripts/verify_commerce_bridge.js +0 -177
  352. package/scripts/verify_control_plane_contracts.js +0 -34
  353. package/scripts/verify_control_plane_routes.js +0 -70
  354. package/scripts/verify_delivery_summary.js +0 -112
  355. package/scripts/verify_examples.js +0 -19
  356. package/scripts/verify_execution_dedupe.js +0 -189
  357. package/scripts/verify_execution_surfacing.js +0 -76
  358. package/scripts/verify_external_execution_retry.js +0 -140
  359. package/scripts/verify_final_activation.js +0 -191
  360. package/scripts/verify_first_run_conversions.js +0 -81
  361. package/scripts/verify_framework_provider_promotion.js +0 -152
  362. package/scripts/verify_full_catalog.js +0 -174
  363. package/scripts/verify_integrations.js +0 -620
  364. package/scripts/verify_l402_adapter.js +0 -86
  365. package/scripts/verify_lifecycle_continuity.js +0 -96
  366. package/scripts/verify_lifecycle_spend_binding.js +0 -88
  367. package/scripts/verify_market_lane_depth.js +0 -94
  368. package/scripts/verify_market_lane_promotion.js +0 -103
  369. package/scripts/verify_market_lane_traces.js +0 -98
  370. package/scripts/verify_market_lanes.js +0 -102
  371. package/scripts/verify_mpp_adapter.js +0 -128
  372. package/scripts/verify_operator_observability_boundary.js +0 -83
  373. package/scripts/verify_pricing_experiment_plan.js +0 -124
  374. package/scripts/verify_production_readiness.js +0 -268
  375. package/scripts/verify_provider_network.js +0 -819
  376. package/scripts/verify_provider_runtime_breadth.js +0 -109
  377. package/scripts/verify_provider_runtime_journeys.js +0 -111
  378. package/scripts/verify_rate_limiter.js +0 -52
  379. package/scripts/verify_refund_credit.js +0 -106
  380. package/scripts/verify_revenue_launch_paths.js +0 -105
  381. package/scripts/verify_runtime_durability.js +0 -52
  382. package/scripts/verify_runtime_state_guard.js +0 -117
  383. package/scripts/verify_service.js +0 -15421
  384. package/scripts/verify_settlement.js +0 -116
  385. package/scripts/verify_tooling.js +0 -1412
  386. package/scripts/verify_treasury_public_boundary.js +0 -97
  387. package/scripts/verify_verify_execute_settle.js +0 -209
  388. package/scripts/verify_x402_facilitator.js +0 -307
  389. package/scripts/verify_x402_settlement_recovery.js +0 -153
  390. package/server.js +0 -12245
@@ -1,525 +0,0 @@
1
- "use strict";
2
-
3
- const packageJson = require("../package.json");
4
- const { catalog } = require("../fixtures/catalog");
5
- const {
6
- buildCatalogResponse,
7
- summarizeCatalog,
8
- buildDefaultTransactionTaskPackCatalog,
9
- buildTransactionClassPackCatalog,
10
- buildPrecommitInteractionPackCatalog,
11
- buildInteractionSpinePathCatalog,
12
- buildDefaultTransactionGuidedLoopCatalog,
13
- buildInteractionResultPackageCatalog,
14
- buildInteractionResultPackageContinuationCatalog
15
- } = require("./catalog_contract");
16
- const { buildAdapterDepthPack } = require("./adapter_depth_contract");
17
- const { buildProtocolLanePack } = require("./protocol_lane_contract");
18
- const { buildFrameworkLanePack } = require("./framework_lane_contract");
19
- const { buildMajorRailsLanePack } = require("./major_rails_lane_contract");
20
- const {
21
- buildMarketLaneActivationPack,
22
- buildMarketLanePack,
23
- summarizeMarketLaneActivationPack,
24
- summarizeMarketLanePack
25
- } = require("./market_lane_contract");
26
- const {
27
- buildMarketLaneDepthPack,
28
- summarizeMarketLaneDepthPack
29
- } = require("./market_lane_depth_contract");
30
- const {
31
- buildMarketLaneTracePack,
32
- summarizeMarketLaneTracePack
33
- } = require("./market_lane_trace_contract");
34
- const {
35
- buildMarketLanePromotionPack,
36
- summarizeMarketLanePromotionPack
37
- } = require("./market_lane_promotion_contract");
38
- const {
39
- FAMILY_DEFINITIONS,
40
- LIFECYCLE_STAGE_DEFINITIONS,
41
- MARKET_CLASS_DEFINITIONS,
42
- decorateAdapterMetadata,
43
- definitionLabel
44
- } = require("./catalog_family_model");
45
-
46
- function uniqueSorted(values) {
47
- return Array.from(new Set((Array.isArray(values) ? values : []).filter(Boolean))).sort();
48
- }
49
-
50
- function countBy(rows, field) {
51
- const counts = new Map();
52
- for (const row of Array.isArray(rows) ? rows : []) {
53
- const key = row && row[field] ? row[field] : "unknown";
54
- counts.set(key, Number(counts.get(key) || 0) + 1);
55
- }
56
- return counts;
57
- }
58
-
59
- function buildAdapterMetadataList() {
60
- return uniqueSorted(catalog.adapters).map((adapter_id) => ({
61
- adapter_id,
62
- ...decorateAdapterMetadata(adapter_id)
63
- }));
64
- }
65
-
66
- function buildFamilyOperations() {
67
- const defaultTaskPacks = buildDefaultTransactionTaskPackCatalog();
68
- const classPacks = buildTransactionClassPackCatalog();
69
- const precommitPacks = buildPrecommitInteractionPackCatalog();
70
- const spinePaths = buildInteractionSpinePathCatalog();
71
- const loops = buildDefaultTransactionGuidedLoopCatalog();
72
- const resultPackages = buildInteractionResultPackageCatalog();
73
- const continuations = buildInteractionResultPackageContinuationCatalog();
74
-
75
- return [
76
- {
77
- operation_ref: "family.discover",
78
- task_family: "discovery",
79
- lifecycle_stage: "discover",
80
- market_class: "data",
81
- claim_status: "bounded_live",
82
- evidence_status: "first_party_runtime",
83
- call_surface: "/v1/catalog/task?ref=zones.list",
84
- task_refs: ["zones.list"],
85
- workflow_ref: null
86
- },
87
- {
88
- operation_ref: "family.negotiate",
89
- task_family: "negotiation",
90
- lifecycle_stage: "negotiate",
91
- market_class: "messaging",
92
- claim_status: "bounded_live",
93
- evidence_status: "first_party_runtime",
94
- call_surface: "/v1/transaction-center/precommit-packs/run",
95
- task_refs: ["a2a.negotiate"],
96
- workflow_ref: "a2a.settlement.flow",
97
- recommended_pack_ref: precommitPacks.precommit_packs.find((entry) => entry.precommit_pack_ref === "precommit.a2a.settlement.readiness")?.precommit_pack_ref || null
98
- },
99
- {
100
- operation_ref: "family.quote_commit",
101
- task_family: "negotiation",
102
- lifecycle_stage: "quote_commit",
103
- market_class: "compute",
104
- claim_status: "bounded_live",
105
- evidence_status: "first_party_runtime",
106
- call_surface: "/v1/transaction-center/transaction-class-packs/run",
107
- task_refs: ["jobs.quote", "jobs.reserve", "jobs.commit"],
108
- workflow_ref: classPacks.class_packs.find((entry) => entry.class_pack_ref === "transaction.job.commitment")?.workflow_ref || "job.commitment.flow"
109
- },
110
- {
111
- operation_ref: "family.invoke",
112
- task_family: "invocation",
113
- lifecycle_stage: "invoke",
114
- market_class: "compute",
115
- claim_status: "live",
116
- evidence_status: "provider_live",
117
- call_surface: "/v1/transaction-center/task-packs/invoke",
118
- task_refs: ["adapter.mcp.invoke"],
119
- workflow_ref: loops.loops.find((entry) => entry.loop_ref === "default.mcp.loop")?.workflow_ref || null,
120
- recommended_pack_ref: defaultTaskPacks.packs.find((entry) => entry.pack_ref === "default.mcp.tool.invoke")?.pack_ref || null
121
- },
122
- {
123
- operation_ref: "family.session_send_close",
124
- task_family: "sessions_messaging",
125
- lifecycle_stage: "session_send_close",
126
- market_class: "messaging",
127
- claim_status: "bounded_live",
128
- evidence_status: "first_party_runtime",
129
- call_surface: "/v1/transaction-center/task-packs/invoke",
130
- task_refs: ["a2c.session.open", "a2c.pack.preview"],
131
- workflow_ref: "a2c.tooling.flow",
132
- recommended_pack_ref: defaultTaskPacks.packs.find((entry) => entry.pack_ref === "default.a2c.tooling.run")?.pack_ref || null
133
- },
134
- {
135
- operation_ref: "family.meter",
136
- task_family: "payments_metering",
137
- lifecycle_stage: "meter",
138
- market_class: "treasury_payments",
139
- claim_status: "bounded_live",
140
- evidence_status: "first_party_ledger",
141
- call_surface: "/v1/credits/packs",
142
- task_refs: ["credits.preview"],
143
- workflow_ref: null
144
- },
145
- {
146
- operation_ref: "family.deliver",
147
- task_family: "delivery",
148
- lifecycle_stage: "deliver",
149
- market_class: "data",
150
- claim_status: "bounded_live",
151
- evidence_status: "proof_handoff_ready",
152
- call_surface: "/v1/transaction-center/result-packages/export",
153
- task_refs: ["runtime.emit", "jobs.release", "registry.pack.bundle"],
154
- workflow_ref: resultPackages.result_packages.find((entry) => entry.result_package_ref === "result.spine.a2c.tooling")?.source_ref || "runtime.consequence.flow"
155
- },
156
- {
157
- operation_ref: "family.settlement_intent",
158
- task_family: "payments_metering",
159
- lifecycle_stage: "settlement_intent",
160
- market_class: "treasury_payments",
161
- claim_status: "bounded_live",
162
- evidence_status: "first_party_policy_preview",
163
- call_surface: "/v1/transaction-center/precommit-packs/run",
164
- task_refs: ["policy.simulate", "admission.preview"],
165
- workflow_ref: "admission.settlement.flow",
166
- recommended_pack_ref: precommitPacks.precommit_packs.find((entry) => entry.precommit_pack_ref === "precommit.a2a.settlement.readiness")?.precommit_pack_ref || null
167
- },
168
- {
169
- operation_ref: "family.settle_reconcile",
170
- task_family: "payments_metering",
171
- lifecycle_stage: "settle_reconcile",
172
- market_class: "treasury_payments",
173
- claim_status: "bounded_live",
174
- evidence_status: "first_party_settlement",
175
- call_surface: "/v1/settlement/bsv-teranode",
176
- task_refs: ["settlement.submit", "credits.apply"],
177
- workflow_ref: "policy.transaction.flow"
178
- },
179
- {
180
- operation_ref: "family.anchor",
181
- task_family: "anchoring_finality",
182
- lifecycle_stage: "anchor",
183
- market_class: "storage",
184
- claim_status: "bounded_live",
185
- evidence_status: "proof_handoff_ready",
186
- call_surface: "/v1/transaction-center/transaction-class-packs/run",
187
- task_refs: ["anchoring.submit", "runtime.anchor"],
188
- workflow_ref: "registry.anchor.flow"
189
- },
190
- {
191
- operation_ref: "family.dispute_open",
192
- task_family: "disputes",
193
- lifecycle_stage: "dispute_open",
194
- market_class: "data",
195
- claim_status: "review_handoff",
196
- evidence_status: "xoonya_followthrough",
197
- call_surface: "/v1/transaction-center/result-package-continuations/prepare/handoff-summary",
198
- task_refs: [],
199
- workflow_ref: continuations.continuations.find((entry) => entry.continuation_ref === "continue.result.spine.a2a.settlement")?.continuation_ref || null,
200
- proof_followthrough_ref: "https://xoonya.onrender.com/v1/proof-center/governance/disputes/summary"
201
- },
202
- {
203
- operation_ref: "family.dispute_fetch",
204
- task_family: "disputes",
205
- lifecycle_stage: "dispute_fetch",
206
- market_class: "data",
207
- claim_status: "review_handoff",
208
- evidence_status: "xoonya_followthrough",
209
- call_surface: "/v1/transaction-center/result-package-continuations/prepare/handoff-package-summary",
210
- task_refs: [],
211
- workflow_ref: spinePaths.spine_paths.find((entry) => entry.spine_path_ref === "spine.a2a.settlement")?.spine_path_ref || null,
212
- proof_followthrough_ref: "https://xoonya.onrender.com/v1/proof-center/governance/disputes/case-review"
213
- },
214
- {
215
- operation_ref: "xoonya.bundle_verify",
216
- task_family: "disputes",
217
- lifecycle_stage: "verify",
218
- market_class: "data",
219
- claim_status: "review_handoff",
220
- evidence_status: "xoonya_followthrough",
221
- call_surface: "https://xoonya.onrender.com/v1/proof-center/verification-services/summary",
222
- task_refs: [],
223
- workflow_ref: "xoonya.bundle_verify",
224
- proof_followthrough_ref: "https://xoonya.onrender.com/v1/proof-center/governance/disputes/summary"
225
- }
226
- ];
227
- }
228
-
229
- function buildFamilyMatrix(tasks, familyOperations) {
230
- const protocolLane = buildProtocolLanePack();
231
- const frameworkLane = buildFrameworkLanePack();
232
- const majorRails = buildMajorRailsLanePack();
233
- const adapterDepth = buildAdapterDepthPack();
234
- const familyCounts = countBy(tasks, "task_family");
235
-
236
- const coverageByFamily = {
237
- identity: {
238
- surfaced_task_refs: tasks.filter((entry) => entry.task_family === "identity").map((entry) => entry.public_task_ref),
239
- supporting_surfaces: ["/v1/identity-interop", "/v1/auth-interop", "/v1/transaction-center/transaction-class-packs/summary"]
240
- },
241
- discovery: {
242
- surfaced_task_refs: tasks.filter((entry) => entry.task_family === "discovery").map((entry) => entry.public_task_ref),
243
- supporting_surfaces: ["/v1/catalog/summary", "/v1/providers/summary", "/v1/frameworks/summary"]
244
- },
245
- negotiation: {
246
- surfaced_task_refs: tasks.filter((entry) => entry.task_family === "negotiation").map((entry) => entry.public_task_ref),
247
- supporting_surfaces: ["/v1/transaction-center/precommit-packs/summary", "/v1/transaction-center/transaction-class-packs/summary"]
248
- },
249
- invocation: {
250
- surfaced_task_refs: tasks.filter((entry) => entry.task_family === "invocation").map((entry) => entry.public_task_ref),
251
- supporting_surfaces: ["/v1/adapter-depth/summary", "/v1/capability-registry/execution-truth/summary"]
252
- },
253
- sessions_messaging: {
254
- surfaced_task_refs: tasks.filter((entry) => entry.task_family === "sessions_messaging").map((entry) => entry.public_task_ref),
255
- supporting_surfaces: ["/v1/protocols/summary", "/v1/transaction-center/task-packs/summary"]
256
- },
257
- payments_metering: {
258
- surfaced_task_refs: tasks.filter((entry) => entry.task_family === "payments_metering").map((entry) => entry.public_task_ref),
259
- supporting_surfaces: ["/v1/settlement/bsv-teranode", "/v1/pricing-optimization/revenue-signal-summary", "/v1/payment-ledger"]
260
- },
261
- delivery: {
262
- surfaced_task_refs: tasks.filter((entry) => entry.task_family === "delivery").map((entry) => entry.public_task_ref),
263
- supporting_surfaces: ["/v1/transaction-center/result-packages/summary", "/v1/deliveries", "/v1/activity-ledger/summary"]
264
- },
265
- disputes: {
266
- surfaced_task_refs: [],
267
- supporting_surfaces: [
268
- "/v1/transaction-center/result-package-continuations/prepare/handoff-summary",
269
- "https://xoonya.onrender.com/v1/proof-center/governance/disputes/summary"
270
- ]
271
- },
272
- anchoring_finality: {
273
- surfaced_task_refs: tasks.filter((entry) => entry.task_family === "anchoring_finality").map((entry) => entry.public_task_ref),
274
- supporting_surfaces: ["/v1/settlement/bsv-teranode", "/v1/transaction-center/spine-paths/summary"]
275
- }
276
- };
277
-
278
- return FAMILY_DEFINITIONS.map((definition) => {
279
- const operationCount = familyOperations.filter((entry) => entry.task_family === definition.family_id).length;
280
- const categoryCoverage = coverageByFamily[definition.family_id] || {};
281
- const claimStatus = definition.family_id === "invocation"
282
- ? (adapterDepth.public_claim_boundary.deep_provider_claim_allowed ? "live" : "bounded_live")
283
- : definition.family_id === "disputes"
284
- ? "review_handoff"
285
- : "bounded_live";
286
- const evidenceStatus = definition.family_id === "invocation"
287
- ? adapterDepth.adapter_depth_state
288
- : definition.family_id === "disputes"
289
- ? "xoonya_followthrough"
290
- : "first_party_runtime";
291
- const familySpecificLanes = definition.family_id === "sessions_messaging"
292
- ? uniqueSorted([
293
- ...Object.keys(protocolLane.featured_protocols || {}).filter((entry) => ["a2a", "a2c", "mqtt", "kafka", "nats", "ros2"].includes(entry)),
294
- ...Object.keys(frameworkLane.featured_frameworks || {})
295
- ])
296
- : definition.family_id === "payments_metering"
297
- ? uniqueSorted(Object.keys(majorRails.featured_lanes || {}))
298
- : [];
299
- return {
300
- family_id: definition.family_id,
301
- family_label: definition.label,
302
- surfaced_task_count: Number(familyCounts.get(definition.family_id) || 0),
303
- surfaced_operation_count: operationCount,
304
- claim_status: claimStatus,
305
- evidence_status: evidenceStatus,
306
- surfaced_task_refs: uniqueSorted(categoryCoverage.surfaced_task_refs || []),
307
- supporting_surfaces: uniqueSorted(categoryCoverage.supporting_surfaces || []),
308
- family_specific_lanes: familySpecificLanes,
309
- claim_boundary: definition.family_id === "disputes"
310
- ? "claim_disputes_as_xytara_to_xoonya_followthrough_not_standalone_runtime_truth"
311
- : definition.family_id === "invocation"
312
- ? "claim_live_only_for_provider_bound_task_refs_listed_by_adapter_depth"
313
- : "claim_as_first_party_bounded_family_only_for_listed_surfaces"
314
- };
315
- });
316
- }
317
-
318
- function buildLifecycleMatrix(familyOperations) {
319
- const operationCounts = countBy(familyOperations, "lifecycle_stage");
320
- return LIFECYCLE_STAGE_DEFINITIONS.map((definition) => ({
321
- lifecycle_stage: definition.lifecycle_stage,
322
- lifecycle_label: definition.label,
323
- operation_count: Number(operationCounts.get(definition.lifecycle_stage) || 0),
324
- operation_refs: familyOperations
325
- .filter((entry) => entry.lifecycle_stage === definition.lifecycle_stage)
326
- .map((entry) => entry.operation_ref),
327
- fully_surfaced: Number(operationCounts.get(definition.lifecycle_stage) || 0) > 0
328
- }));
329
- }
330
-
331
- function buildMarketMatrix(tasks) {
332
- const protocolLane = buildProtocolLanePack();
333
- const frameworkLane = buildFrameworkLanePack();
334
- const majorRails = buildMajorRailsLanePack();
335
- const taskCounts = countBy(tasks, "market_class");
336
- const coverage = {
337
- compute: {
338
- surfaced_task_refs: tasks.filter((entry) => entry.market_class === "compute").map((entry) => entry.public_task_ref),
339
- supporting_lanes: uniqueSorted(Object.keys(frameworkLane.featured_frameworks || {}))
340
- },
341
- data: {
342
- surfaced_task_refs: tasks.filter((entry) => entry.market_class === "data").map((entry) => entry.public_task_ref),
343
- supporting_lanes: ["/v1/catalog/summary", "/v1/transaction-center/result-packages/summary"]
344
- },
345
- storage: {
346
- surfaced_task_refs: tasks.filter((entry) => entry.market_class === "storage").map((entry) => entry.public_task_ref),
347
- supporting_lanes: ["/v1/artifact-distribution/summary", "/v1/provenance/summary"]
348
- },
349
- messaging: {
350
- surfaced_task_refs: tasks.filter((entry) => entry.market_class === "messaging").map((entry) => entry.public_task_ref),
351
- supporting_lanes: uniqueSorted(Object.keys(protocolLane.featured_protocols || {}).filter((entry) => ["a2a", "a2c", "kafka", "nats", "mqtt", "webhook_event_bus"].includes(entry)))
352
- },
353
- device_robotics: {
354
- surfaced_task_refs: [],
355
- supporting_lanes: uniqueSorted(Object.keys(protocolLane.featured_protocols || {}).filter((entry) => ["mqtt", "ros2"].includes(entry)))
356
- },
357
- treasury_payments: {
358
- surfaced_task_refs: tasks.filter((entry) => entry.market_class === "treasury_payments").map((entry) => entry.public_task_ref),
359
- supporting_lanes: uniqueSorted(Object.keys(majorRails.featured_lanes || {}))
360
- }
361
- };
362
- return MARKET_CLASS_DEFINITIONS.map((definition) => ({
363
- market_class: definition.market_class,
364
- market_label: definition.label,
365
- surfaced_task_count: Number(taskCounts.get(definition.market_class) || 0),
366
- surfaced_task_refs: uniqueSorted((coverage[definition.market_class] || {}).surfaced_task_refs || []),
367
- supporting_lanes: uniqueSorted((coverage[definition.market_class] || {}).supporting_lanes || []),
368
- claim_status: definition.market_class === "device_robotics" ? "bounded_live" : "bounded_live"
369
- }));
370
- }
371
-
372
- function buildFamilyPromotionPack() {
373
- const tasks = buildCatalogResponse().tasks || [];
374
- const familyOperations = buildFamilyOperations();
375
- const familyMatrix = buildFamilyMatrix(tasks, familyOperations);
376
- const adapterDepth = buildAdapterDepthPack();
377
- const promotionFamilies = familyMatrix.map((family) => ({
378
- family_id: family.family_id,
379
- family_label: family.family_label,
380
- promotion_state: family.claim_status === "live"
381
- ? "promotion_gate_passed"
382
- : family.claim_status === "review_handoff"
383
- ? "cross_package_followthrough"
384
- : "bounded_live_promotion_passed",
385
- auth_gate: family.family_id === "invocation" ? adapterDepth.public_claim_boundary.live_provider_claim_allowed : true,
386
- health_gate: family.family_id === "invocation" ? adapterDepth.counts.configured_execution_target_count >= 1 : true,
387
- failure_gate: true,
388
- latency_gate: true,
389
- proof_fact_gate: family.family_id === "disputes" ? true : true,
390
- operator_evidence_gate: family.family_id === "disputes" ? false : true,
391
- claim_boundary: family.claim_boundary
392
- }));
393
- return {
394
- ok: true,
395
- product: packageJson.name,
396
- category: "machine-commerce-family-promotion-pack",
397
- pack_version: "xytara-family-promotion-pack-v1",
398
- promotion_family_count: promotionFamilies.length,
399
- promotion_families: promotionFamilies,
400
- live_family_count: promotionFamilies.filter((entry) => entry.promotion_state === "promotion_gate_passed").length,
401
- bounded_live_family_count: promotionFamilies.filter((entry) => entry.promotion_state === "bounded_live_promotion_passed").length,
402
- cross_package_followthrough_count: promotionFamilies.filter((entry) => entry.promotion_state === "cross_package_followthrough").length,
403
- linked_surfaces: {
404
- full_catalog_ref: "/v1/full-catalog",
405
- full_catalog_summary_ref: "/v1/full-catalog/summary",
406
- adapter_depth_summary_ref: "/v1/adapter-depth/summary",
407
- capability_registry_summary_ref: "/v1/capability-registry/summary"
408
- }
409
- };
410
- }
411
-
412
- function summarizeFamilyPromotionPack() {
413
- const pack = buildFamilyPromotionPack();
414
- return {
415
- ok: true,
416
- product: pack.product,
417
- category: "machine-commerce-family-promotion-summary",
418
- summary_version: "xytara-family-promotion-summary-v1",
419
- promotion_family_count: pack.promotion_family_count,
420
- live_family_count: pack.live_family_count,
421
- bounded_live_family_count: pack.bounded_live_family_count,
422
- cross_package_followthrough_count: pack.cross_package_followthrough_count,
423
- linked_surfaces: pack.linked_surfaces
424
- };
425
- }
426
-
427
- function buildFullCatalogPack() {
428
- const catalogResponse = buildCatalogResponse();
429
- const catalogSummary = summarizeCatalog();
430
- const familyOperations = buildFamilyOperations();
431
- const familyMatrix = buildFamilyMatrix(catalogResponse.tasks || [], familyOperations);
432
- const lifecycleMatrix = buildLifecycleMatrix(familyOperations);
433
- const marketMatrix = buildMarketMatrix(catalogResponse.tasks || []);
434
- const marketLanePack = buildMarketLanePack();
435
- const marketLaneActivationPack = buildMarketLaneActivationPack();
436
- const marketLaneDepthPack = buildMarketLaneDepthPack();
437
- const marketLaneTracePack = buildMarketLaneTracePack();
438
- const marketLanePromotionPack = buildMarketLanePromotionPack();
439
- const adapterMetadata = buildAdapterMetadataList();
440
- return {
441
- ok: true,
442
- product: packageJson.name,
443
- category: "machine-commerce-full-catalog",
444
- pack_version: "xytara-full-catalog-pack-v1",
445
- doctrine: "full_major_family_coverage_inside_current_canon_not_infinite_vendor_breadth",
446
- counts: {
447
- public_task_count: Array.isArray(catalogResponse.tasks) ? catalogResponse.tasks.length : 0,
448
- public_workflow_count: Array.isArray(catalogResponse.workflows) ? catalogResponse.workflows.length : 0,
449
- family_count: familyMatrix.length,
450
- lifecycle_stage_count: lifecycleMatrix.length,
451
- market_class_count: marketMatrix.length,
452
- family_operation_count: familyOperations.length
453
- },
454
- catalog_summary: catalogSummary,
455
- family_matrix: familyMatrix,
456
- lifecycle_matrix: lifecycleMatrix,
457
- market_matrix: marketMatrix,
458
- market_lanes: marketLanePack.market_lanes,
459
- market_lane_summary: summarizeMarketLanePack(),
460
- market_lane_activation_summary: summarizeMarketLaneActivationPack(),
461
- market_lane_activations: marketLaneActivationPack.market_lanes,
462
- market_lane_depth_summary: summarizeMarketLaneDepthPack(),
463
- market_lane_depths: marketLaneDepthPack.market_lane_depths,
464
- market_lane_trace_summary: summarizeMarketLaneTracePack(),
465
- market_lane_traces: marketLaneTracePack.market_lane_traces,
466
- market_lane_promotion_summary: summarizeMarketLanePromotionPack(),
467
- market_lane_promotions: marketLanePromotionPack.promotion_lanes,
468
- family_operations: familyOperations,
469
- adapters: adapterMetadata,
470
- public_claim_boundaries: [
471
- "claim_full_major_family_coverage_not_infinite_vendor_breadth",
472
- "claim_invocation_live_only_for_provider_bound_task_refs_listed_by_adapter_depth",
473
- "claim_disputes_as_xytara_to_xoonya_followthrough_not_standalone_runtime_truth",
474
- "claim_device_and_robotics_coverage_only_for_protocol_anchor_lanes_explicitly_listed",
475
- "claim_market_class_coverage_only_when_family_and_lane_surfaces_are_publicly_inspectable"
476
- ],
477
- linked_surfaces: {
478
- catalog_ref: "/v1/catalog",
479
- catalog_summary_ref: "/v1/catalog/summary",
480
- task_packs_summary_ref: "/v1/transaction-center/task-packs/summary",
481
- precommit_packs_summary_ref: "/v1/transaction-center/precommit-packs/summary",
482
- result_packages_summary_ref: "/v1/transaction-center/result-packages/summary",
483
- result_package_continuations_summary_ref: "/v1/transaction-center/result-package-continuations/summary",
484
- market_lanes_ref: "/v1/full-catalog/market-lanes",
485
- market_lanes_summary_ref: "/v1/full-catalog/market-lanes/summary",
486
- market_lane_activation_ref: "/v1/full-catalog/market-lanes/activation",
487
- market_lane_activation_summary_ref: "/v1/full-catalog/market-lanes/activation/summary",
488
- market_lane_depth_ref: "/v1/full-catalog/market-lanes/depth",
489
- market_lane_depth_summary_ref: "/v1/full-catalog/market-lanes/depth/summary",
490
- market_lane_trace_ref: "/v1/full-catalog/market-lanes/traces",
491
- market_lane_trace_summary_ref: "/v1/full-catalog/market-lanes/traces/summary",
492
- market_lane_promotion_ref: "/v1/full-catalog/market-lanes/promotion",
493
- market_lane_promotion_summary_ref: "/v1/full-catalog/market-lanes/promotion/summary",
494
- family_promotions_ref: "/v1/full-catalog/family-promotions",
495
- family_promotions_summary_ref: "/v1/full-catalog/family-promotions/summary"
496
- }
497
- };
498
- }
499
-
500
- function summarizeFullCatalogPack() {
501
- const pack = buildFullCatalogPack();
502
- return {
503
- ok: true,
504
- product: pack.product,
505
- category: "machine-commerce-full-catalog-summary",
506
- summary_version: "xytara-full-catalog-summary-v1",
507
- public_task_count: pack.counts.public_task_count,
508
- public_workflow_count: pack.counts.public_workflow_count,
509
- family_count: pack.counts.family_count,
510
- lifecycle_stage_count: pack.counts.lifecycle_stage_count,
511
- market_class_count: pack.counts.market_class_count,
512
- live_family_count: pack.family_matrix.filter((entry) => entry.claim_status === "live").length,
513
- bounded_live_family_count: pack.family_matrix.filter((entry) => entry.claim_status === "bounded_live").length,
514
- review_handoff_family_count: pack.family_matrix.filter((entry) => entry.claim_status === "review_handoff").length,
515
- fully_surfaced_lifecycle_count: pack.lifecycle_matrix.filter((entry) => entry.fully_surfaced).length,
516
- linked_surfaces: pack.linked_surfaces
517
- };
518
- }
519
-
520
- module.exports = {
521
- buildFamilyPromotionPack,
522
- summarizeFamilyPromotionPack,
523
- buildFullCatalogPack,
524
- summarizeFullCatalogPack
525
- };