xoonya 2.1.0 → 2.3.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 (146) hide show
  1. package/CARRIED_HANDOFF_DEMO.md +60 -0
  2. package/EXAMPLE_PATHS.md +53 -0
  3. package/OPERATIONS_RUNBOOK.md +50 -0
  4. package/OPERATOR_START_HERE.md +67 -0
  5. package/PARTNER_READY_PATH.md +67 -0
  6. package/PROGRAM_COMPLETE_RELEASE.md +52 -0
  7. package/PROGRAM_STATUS.md +57 -0
  8. package/PUBLIC_DEMO_SCRIPT.md +79 -0
  9. package/PUBLISH_PLAN.md +7 -5
  10. package/README.md +27 -0
  11. package/RELEASE_CHECKLIST.md +8 -2
  12. package/RELEASE_NOTES.md +18 -8
  13. package/START_HERE.md +28 -0
  14. package/WHY_XYTARA_XOONYA.md +43 -0
  15. package/bin/xoonya-release.js +1181 -1
  16. package/examples/integration_boundary_walkthrough.js +37 -0
  17. package/examples/package_quickstart.js +1007 -0
  18. package/examples/partner_proof_walkthrough.js +68 -0
  19. package/examples/proof_review_walkthrough.js +66 -0
  20. package/examples/review_carried_handoff.js +72 -0
  21. package/lib/bridge_intelligence.js +102 -0
  22. package/lib/governance_intelligence.js +108 -0
  23. package/lib/phase_10_closeout_pack.js +45 -0
  24. package/lib/phase_10_completion_pack.js +76 -0
  25. package/lib/phase_10_decision_record_pack.js +54 -0
  26. package/lib/phase_10_decision_resolution_pack.js +53 -0
  27. package/lib/phase_10_demand_signal_adapters_proof_pack.js +74 -0
  28. package/lib/phase_10_ecosystem_backlog_triage_proof_pack.js +74 -0
  29. package/lib/phase_10_freeze_baseline_pack.js +67 -0
  30. package/lib/phase_10_freeze_review_pack.js +64 -0
  31. package/lib/phase_10_gate_pack.js +57 -0
  32. package/lib/phase_10_long_tail_continuity_pack.js +80 -0
  33. package/lib/phase_10_long_tail_ecosystem_pack.js +68 -0
  34. package/lib/phase_10_niche_extension_registry_proof_pack.js +74 -0
  35. package/lib/phase_1_claude_mcp_pack.js +60 -0
  36. package/lib/phase_1_claude_mcp_proof_pack.js +57 -0
  37. package/lib/phase_1_ecosystem_pack.js +51 -0
  38. package/lib/phase_1_openai_codex_pack.js +60 -0
  39. package/lib/phase_1_openai_codex_proof_pack.js +57 -0
  40. package/lib/phase_2_base_proof_pack.js +71 -0
  41. package/lib/phase_2_base_usdc_proof_pack.js +72 -0
  42. package/lib/phase_2_closeout_pack.js +65 -0
  43. package/lib/phase_2_completion_pack.js +113 -0
  44. package/lib/phase_2_decision_record_pack.js +66 -0
  45. package/lib/phase_2_decision_resolution_pack.js +69 -0
  46. package/lib/phase_2_eth_proof_pack.js +70 -0
  47. package/lib/phase_2_evm_base_proof_pack.js +73 -0
  48. package/lib/phase_2_evm_proof_pack.js +71 -0
  49. package/lib/phase_2_flip_preview_pack.js +60 -0
  50. package/lib/phase_2_freeze_review_pack.js +99 -0
  51. package/lib/phase_2_gate_pack.js +77 -0
  52. package/lib/phase_2_payment_rails_pack.js +71 -0
  53. package/lib/phase_2_usdc_proof_pack.js +71 -0
  54. package/lib/phase_3_brc_proof_pack.js +81 -0
  55. package/lib/phase_3_bsv_teranode_proof_pack.js +81 -0
  56. package/lib/phase_3_closeout_pack.js +62 -0
  57. package/lib/phase_3_completion_pack.js +92 -0
  58. package/lib/phase_3_decision_record_pack.js +64 -0
  59. package/lib/phase_3_decision_resolution_pack.js +69 -0
  60. package/lib/phase_3_freeze_baseline_pack.js +67 -0
  61. package/lib/phase_3_freeze_review_pack.js +80 -0
  62. package/lib/phase_3_gate_pack.js +76 -0
  63. package/lib/phase_3_metanet_proof_pack.js +81 -0
  64. package/lib/phase_3_native_bsv_pack.js +89 -0
  65. package/lib/phase_3_native_continuity_pack.js +82 -0
  66. package/lib/phase_4_attestation_proof_pack.js +75 -0
  67. package/lib/phase_4_closeout_pack.js +45 -0
  68. package/lib/phase_4_completion_pack.js +82 -0
  69. package/lib/phase_4_decision_record_pack.js +54 -0
  70. package/lib/phase_4_decision_resolution_pack.js +45 -0
  71. package/lib/phase_4_erc8004_proof_pack.js +76 -0
  72. package/lib/phase_4_freeze_baseline_pack.js +67 -0
  73. package/lib/phase_4_freeze_review_pack.js +68 -0
  74. package/lib/phase_4_gate_pack.js +58 -0
  75. package/lib/phase_4_identity_registry_proof_pack.js +75 -0
  76. package/lib/phase_4_identity_trust_pack.js +73 -0
  77. package/lib/phase_4_trust_continuity_pack.js +86 -0
  78. package/lib/phase_5_antelope_proof_pack.js +76 -0
  79. package/lib/phase_5_closeout_pack.js +44 -0
  80. package/lib/phase_5_completion_pack.js +82 -0
  81. package/lib/phase_5_decision_record_pack.js +54 -0
  82. package/lib/phase_5_decision_resolution_pack.js +45 -0
  83. package/lib/phase_5_freeze_baseline_pack.js +67 -0
  84. package/lib/phase_5_freeze_review_pack.js +68 -0
  85. package/lib/phase_5_gate_pack.js +58 -0
  86. package/lib/phase_5_major_rails_continuity_pack.js +86 -0
  87. package/lib/phase_5_major_rails_pack.js +74 -0
  88. package/lib/phase_5_proton_xpr_proof_pack.js +76 -0
  89. package/lib/phase_5_solana_proof_pack.js +76 -0
  90. package/lib/phase_6_autogen_proof_pack.js +74 -0
  91. package/lib/phase_6_closeout_pack.js +46 -0
  92. package/lib/phase_6_completion_pack.js +77 -0
  93. package/lib/phase_6_decision_record_pack.js +54 -0
  94. package/lib/phase_6_decision_resolution_pack.js +53 -0
  95. package/lib/phase_6_framework_continuity_pack.js +81 -0
  96. package/lib/phase_6_framework_runtime_pack.js +68 -0
  97. package/lib/phase_6_freeze_baseline_pack.js +68 -0
  98. package/lib/phase_6_freeze_review_pack.js +65 -0
  99. package/lib/phase_6_gate_pack.js +59 -0
  100. package/lib/phase_6_langchain_proof_pack.js +74 -0
  101. package/lib/phase_6_langgraph_proof_pack.js +74 -0
  102. package/lib/phase_6_semantic_kernel_proof_pack.js +74 -0
  103. package/lib/phase_7_closeout_pack.js +45 -0
  104. package/lib/phase_7_completion_pack.js +85 -0
  105. package/lib/phase_7_decision_record_pack.js +53 -0
  106. package/lib/phase_7_decision_resolution_pack.js +53 -0
  107. package/lib/phase_7_event_system_continuity_pack.js +89 -0
  108. package/lib/phase_7_event_system_pack.js +76 -0
  109. package/lib/phase_7_freeze_baseline_pack.js +74 -0
  110. package/lib/phase_7_freeze_review_pack.js +65 -0
  111. package/lib/phase_7_gate_pack.js +58 -0
  112. package/lib/phase_7_kafka_proof_pack.js +76 -0
  113. package/lib/phase_7_mqtt_proof_pack.js +76 -0
  114. package/lib/phase_7_nats_proof_pack.js +76 -0
  115. package/lib/phase_7_webhook_event_bus_proof_pack.js +76 -0
  116. package/lib/phase_8_closeout_pack.js +46 -0
  117. package/lib/phase_8_completion_pack.js +82 -0
  118. package/lib/phase_8_decision_record_pack.js +54 -0
  119. package/lib/phase_8_decision_resolution_pack.js +53 -0
  120. package/lib/phase_8_external_receipt_import_proof_pack.js +74 -0
  121. package/lib/phase_8_external_result_import_proof_pack.js +74 -0
  122. package/lib/phase_8_freeze_baseline_pack.js +71 -0
  123. package/lib/phase_8_freeze_review_pack.js +64 -0
  124. package/lib/phase_8_gate_pack.js +58 -0
  125. package/lib/phase_8_proof_bridge_continuity_pack.js +86 -0
  126. package/lib/phase_8_proof_bridges_pack.js +72 -0
  127. package/lib/phase_8_proof_bundle_normalization_proof_pack.js +74 -0
  128. package/lib/phase_9_closeout_pack.js +46 -0
  129. package/lib/phase_9_completion_pack.js +82 -0
  130. package/lib/phase_9_custody_refs_proof_pack.js +74 -0
  131. package/lib/phase_9_decision_record_pack.js +54 -0
  132. package/lib/phase_9_decision_resolution_pack.js +53 -0
  133. package/lib/phase_9_freeze_baseline_pack.js +71 -0
  134. package/lib/phase_9_freeze_review_pack.js +64 -0
  135. package/lib/phase_9_gate_pack.js +58 -0
  136. package/lib/phase_9_operator_accounting_bridges_proof_pack.js +74 -0
  137. package/lib/phase_9_treasury_connectivity_pack.js +72 -0
  138. package/lib/phase_9_treasury_continuity_pack.js +86 -0
  139. package/lib/phase_9_treasury_destinations_proof_pack.js +74 -0
  140. package/lib/phase_program_pack.js +47 -0
  141. package/lib/release_center.js +924 -0
  142. package/lib/release_history.js +1 -1
  143. package/lib/review_intelligence.js +100 -0
  144. package/lib/trust_intelligence.js +106 -0
  145. package/package.json +11 -1
  146. package/server.js +1862 -88
package/server.js CHANGED
@@ -59,161 +59,1829 @@ const {
59
59
  buildAnnouncementPack,
60
60
  summarizeAnnouncementPack
61
61
  } = require('./lib/announcement_pack');
62
+ const {
63
+ buildTrustIntelligencePack,
64
+ summarizeTrustIntelligencePack
65
+ } = require('./lib/trust_intelligence');
66
+ const {
67
+ buildReviewIntelligencePack,
68
+ summarizeReviewIntelligencePack
69
+ } = require('./lib/review_intelligence');
70
+ const {
71
+ buildGovernanceIntelligencePack,
72
+ summarizeGovernanceIntelligencePack
73
+ } = require('./lib/governance_intelligence');
74
+ const {
75
+ buildBridgeIntelligencePack,
76
+ summarizeBridgeIntelligencePack
77
+ } = require('./lib/bridge_intelligence');
62
78
  const {
63
79
  buildReleaseCandidatePack,
64
80
  summarizeReleaseCandidatePack
65
81
  } = require('./lib/release_candidate');
82
+ const {
83
+ buildPhaseProgramPack,
84
+ summarizePhaseProgramPack
85
+ } = require('./lib/phase_program_pack');
86
+ const {
87
+ buildPhase1EcosystemPack,
88
+ summarizePhase1EcosystemPack
89
+ } = require('./lib/phase_1_ecosystem_pack');
90
+ const {
91
+ buildPhase1OpenaiCodexPack,
92
+ summarizePhase1OpenaiCodexPack
93
+ } = require('./lib/phase_1_openai_codex_pack');
94
+ const {
95
+ buildPhase1ClaudeMcpPack,
96
+ summarizePhase1ClaudeMcpPack
97
+ } = require('./lib/phase_1_claude_mcp_pack');
98
+ const {
99
+ buildPhase1OpenaiCodexProofPack,
100
+ summarizePhase1OpenaiCodexProofPack
101
+ } = require('./lib/phase_1_openai_codex_proof_pack');
102
+ const {
103
+ buildPhase1ClaudeMcpProofPack,
104
+ summarizePhase1ClaudeMcpProofPack
105
+ } = require('./lib/phase_1_claude_mcp_proof_pack');
106
+ const {
107
+ buildPhase2PaymentRailsPack,
108
+ summarizePhase2PaymentRailsPack
109
+ } = require('./lib/phase_2_payment_rails_pack');
110
+ const {
111
+ buildPhase2EvmBaseProofPack,
112
+ summarizePhase2EvmBaseProofPack
113
+ } = require('./lib/phase_2_evm_base_proof_pack');
114
+ const {
115
+ buildPhase2BaseUsdcProofPack,
116
+ summarizePhase2BaseUsdcProofPack
117
+ } = require('./lib/phase_2_base_usdc_proof_pack');
118
+ const {
119
+ buildPhase2EthProofPack,
120
+ summarizePhase2EthProofPack
121
+ } = require('./lib/phase_2_eth_proof_pack');
122
+ const {
123
+ buildPhase2EvmProofPack,
124
+ summarizePhase2EvmProofPack
125
+ } = require('./lib/phase_2_evm_proof_pack');
126
+ const {
127
+ buildPhase2BaseProofPack,
128
+ summarizePhase2BaseProofPack
129
+ } = require('./lib/phase_2_base_proof_pack');
130
+ const {
131
+ buildPhase2UsdcProofPack,
132
+ summarizePhase2UsdcProofPack
133
+ } = require('./lib/phase_2_usdc_proof_pack');
134
+ const {
135
+ buildPhase2CompletionPack,
136
+ summarizePhase2CompletionPack
137
+ } = require('./lib/phase_2_completion_pack');
138
+ const {
139
+ buildPhase2FreezeReviewPack,
140
+ summarizePhase2FreezeReviewPack
141
+ } = require('./lib/phase_2_freeze_review_pack');
142
+ const {
143
+ buildPhase2GatePack,
144
+ summarizePhase2GatePack
145
+ } = require('./lib/phase_2_gate_pack');
146
+ const {
147
+ buildPhase2CloseoutPack,
148
+ summarizePhase2CloseoutPack
149
+ } = require('./lib/phase_2_closeout_pack');
150
+ const {
151
+ buildPhase2DecisionRecordPack,
152
+ summarizePhase2DecisionRecordPack
153
+ } = require('./lib/phase_2_decision_record_pack');
154
+ const {
155
+ buildPhase2DecisionResolutionPack,
156
+ summarizePhase2DecisionResolutionPack
157
+ } = require('./lib/phase_2_decision_resolution_pack');
158
+ const {
159
+ buildPhase2FlipPreviewPack,
160
+ summarizePhase2FlipPreviewPack
161
+ } = require('./lib/phase_2_flip_preview_pack');
162
+ const {
163
+ buildPhase3NativeBsvPack,
164
+ summarizePhase3NativeBsvPack
165
+ } = require('./lib/phase_3_native_bsv_pack');
166
+ const {
167
+ buildPhase3BsvTeranodeProofPack,
168
+ summarizePhase3BsvTeranodeProofPack
169
+ } = require('./lib/phase_3_bsv_teranode_proof_pack');
170
+ const {
171
+ buildPhase3MetanetProofPack,
172
+ summarizePhase3MetanetProofPack
173
+ } = require('./lib/phase_3_metanet_proof_pack');
174
+ const {
175
+ buildPhase3BrcProofPack,
176
+ summarizePhase3BrcProofPack
177
+ } = require('./lib/phase_3_brc_proof_pack');
178
+ const {
179
+ buildPhase3NativeContinuityPack,
180
+ summarizePhase3NativeContinuityPack
181
+ } = require('./lib/phase_3_native_continuity_pack');
182
+ const {
183
+ buildPhase3FreezeBaselinePack,
184
+ summarizePhase3FreezeBaselinePack
185
+ } = require('./lib/phase_3_freeze_baseline_pack');
186
+ const {
187
+ buildPhase4IdentityTrustPack,
188
+ summarizePhase4IdentityTrustPack
189
+ } = require('./lib/phase_4_identity_trust_pack');
190
+ const {
191
+ buildPhase4Erc8004ProofPack,
192
+ summarizePhase4Erc8004ProofPack
193
+ } = require('./lib/phase_4_erc8004_proof_pack');
194
+ const {
195
+ buildPhase4IdentityRegistryProofPack,
196
+ summarizePhase4IdentityRegistryProofPack
197
+ } = require('./lib/phase_4_identity_registry_proof_pack');
198
+ const {
199
+ buildPhase4AttestationProofPack,
200
+ summarizePhase4AttestationProofPack
201
+ } = require('./lib/phase_4_attestation_proof_pack');
202
+ const {
203
+ buildPhase4TrustContinuityPack,
204
+ summarizePhase4TrustContinuityPack
205
+ } = require('./lib/phase_4_trust_continuity_pack');
206
+ const {
207
+ buildPhase4CompletionPack,
208
+ summarizePhase4CompletionPack
209
+ } = require('./lib/phase_4_completion_pack');
210
+ const {
211
+ buildPhase4FreezeReviewPack,
212
+ summarizePhase4FreezeReviewPack
213
+ } = require('./lib/phase_4_freeze_review_pack');
214
+ const {
215
+ buildPhase4FreezeBaselinePack,
216
+ summarizePhase4FreezeBaselinePack
217
+ } = require('./lib/phase_4_freeze_baseline_pack');
218
+ const {
219
+ buildPhase4GatePack,
220
+ summarizePhase4GatePack
221
+ } = require('./lib/phase_4_gate_pack');
222
+ const {
223
+ buildPhase4CloseoutPack,
224
+ summarizePhase4CloseoutPack
225
+ } = require('./lib/phase_4_closeout_pack');
226
+ const {
227
+ buildPhase4DecisionRecordPack,
228
+ summarizePhase4DecisionRecordPack
229
+ } = require('./lib/phase_4_decision_record_pack');
230
+ const {
231
+ buildPhase4DecisionResolutionPack,
232
+ summarizePhase4DecisionResolutionPack
233
+ } = require('./lib/phase_4_decision_resolution_pack');
234
+ const {
235
+ buildPhase5MajorRailsPack,
236
+ summarizePhase5MajorRailsPack
237
+ } = require('./lib/phase_5_major_rails_pack');
238
+ const {
239
+ buildPhase5MajorRailsContinuityPack,
240
+ summarizePhase5MajorRailsContinuityPack
241
+ } = require('./lib/phase_5_major_rails_continuity_pack');
242
+ const {
243
+ buildPhase5CompletionPack,
244
+ summarizePhase5CompletionPack
245
+ } = require('./lib/phase_5_completion_pack');
246
+ const {
247
+ buildPhase5FreezeReviewPack,
248
+ summarizePhase5FreezeReviewPack
249
+ } = require('./lib/phase_5_freeze_review_pack');
250
+ const {
251
+ buildPhase5FreezeBaselinePack,
252
+ summarizePhase5FreezeBaselinePack
253
+ } = require('./lib/phase_5_freeze_baseline_pack');
254
+ const {
255
+ buildPhase5GatePack,
256
+ summarizePhase5GatePack
257
+ } = require('./lib/phase_5_gate_pack');
258
+ const {
259
+ buildPhase5CloseoutPack,
260
+ summarizePhase5CloseoutPack
261
+ } = require('./lib/phase_5_closeout_pack');
262
+ const {
263
+ buildPhase5DecisionRecordPack,
264
+ summarizePhase5DecisionRecordPack
265
+ } = require('./lib/phase_5_decision_record_pack');
266
+ const {
267
+ buildPhase5DecisionResolutionPack,
268
+ summarizePhase5DecisionResolutionPack
269
+ } = require('./lib/phase_5_decision_resolution_pack');
270
+ const {
271
+ buildPhase5SolanaProofPack,
272
+ summarizePhase5SolanaProofPack
273
+ } = require('./lib/phase_5_solana_proof_pack');
274
+ const {
275
+ buildPhase5AntelopeProofPack,
276
+ summarizePhase5AntelopeProofPack
277
+ } = require('./lib/phase_5_antelope_proof_pack');
278
+ const {
279
+ buildPhase5ProtonXprProofPack,
280
+ summarizePhase5ProtonXprProofPack
281
+ } = require('./lib/phase_5_proton_xpr_proof_pack');
282
+ const {
283
+ buildPhase6FrameworkRuntimePack,
284
+ summarizePhase6FrameworkRuntimePack
285
+ } = require('./lib/phase_6_framework_runtime_pack');
286
+ const {
287
+ buildPhase6LanggraphProofPack,
288
+ summarizePhase6LanggraphProofPack
289
+ } = require('./lib/phase_6_langgraph_proof_pack');
290
+ const {
291
+ buildPhase6LangchainProofPack,
292
+ summarizePhase6LangchainProofPack
293
+ } = require('./lib/phase_6_langchain_proof_pack');
294
+ const {
295
+ buildPhase6AutogenProofPack,
296
+ summarizePhase6AutogenProofPack
297
+ } = require('./lib/phase_6_autogen_proof_pack');
298
+ const {
299
+ buildPhase6SemanticKernelProofPack,
300
+ summarizePhase6SemanticKernelProofPack
301
+ } = require('./lib/phase_6_semantic_kernel_proof_pack');
302
+ const {
303
+ buildPhase6FrameworkContinuityPack,
304
+ summarizePhase6FrameworkContinuityPack
305
+ } = require('./lib/phase_6_framework_continuity_pack');
306
+ const {
307
+ buildPhase6CompletionPack,
308
+ summarizePhase6CompletionPack
309
+ } = require('./lib/phase_6_completion_pack');
310
+ const {
311
+ buildPhase6FreezeReviewPack,
312
+ summarizePhase6FreezeReviewPack
313
+ } = require('./lib/phase_6_freeze_review_pack');
314
+ const {
315
+ buildPhase6FreezeBaselinePack,
316
+ summarizePhase6FreezeBaselinePack
317
+ } = require('./lib/phase_6_freeze_baseline_pack');
318
+ const {
319
+ buildPhase6GatePack,
320
+ summarizePhase6GatePack
321
+ } = require('./lib/phase_6_gate_pack');
322
+ const {
323
+ buildPhase6CloseoutPack,
324
+ summarizePhase6CloseoutPack
325
+ } = require('./lib/phase_6_closeout_pack');
326
+ const {
327
+ buildPhase6DecisionRecordPack,
328
+ summarizePhase6DecisionRecordPack
329
+ } = require('./lib/phase_6_decision_record_pack');
330
+ const {
331
+ buildPhase6DecisionResolutionPack,
332
+ summarizePhase6DecisionResolutionPack
333
+ } = require('./lib/phase_6_decision_resolution_pack');
334
+ const {
335
+ buildPhase7EventSystemPack,
336
+ summarizePhase7EventSystemPack
337
+ } = require('./lib/phase_7_event_system_pack');
338
+ const {
339
+ buildPhase7KafkaProofPack,
340
+ summarizePhase7KafkaProofPack
341
+ } = require('./lib/phase_7_kafka_proof_pack');
342
+ const {
343
+ buildPhase7NatsProofPack,
344
+ summarizePhase7NatsProofPack
345
+ } = require('./lib/phase_7_nats_proof_pack');
346
+ const {
347
+ buildPhase7MqttProofPack,
348
+ summarizePhase7MqttProofPack
349
+ } = require('./lib/phase_7_mqtt_proof_pack');
350
+ const {
351
+ buildPhase7WebhookEventBusProofPack,
352
+ summarizePhase7WebhookEventBusProofPack
353
+ } = require('./lib/phase_7_webhook_event_bus_proof_pack');
354
+ const {
355
+ buildPhase7EventSystemContinuityPack,
356
+ summarizePhase7EventSystemContinuityPack
357
+ } = require('./lib/phase_7_event_system_continuity_pack');
358
+ const {
359
+ buildPhase7CompletionPack,
360
+ summarizePhase7CompletionPack
361
+ } = require('./lib/phase_7_completion_pack');
362
+ const {
363
+ buildPhase7FreezeBaselinePack,
364
+ summarizePhase7FreezeBaselinePack
365
+ } = require('./lib/phase_7_freeze_baseline_pack');
366
+ const {
367
+ buildPhase7FreezeReviewPack,
368
+ summarizePhase7FreezeReviewPack
369
+ } = require('./lib/phase_7_freeze_review_pack');
370
+ const {
371
+ buildPhase7GatePack,
372
+ summarizePhase7GatePack
373
+ } = require('./lib/phase_7_gate_pack');
374
+ const {
375
+ buildPhase7CloseoutPack,
376
+ summarizePhase7CloseoutPack
377
+ } = require('./lib/phase_7_closeout_pack');
378
+ const {
379
+ buildPhase7DecisionRecordPack,
380
+ summarizePhase7DecisionRecordPack
381
+ } = require('./lib/phase_7_decision_record_pack');
382
+ const {
383
+ buildPhase7DecisionResolutionPack,
384
+ summarizePhase7DecisionResolutionPack
385
+ } = require('./lib/phase_7_decision_resolution_pack');
386
+ const {
387
+ buildPhase8ProofBridgesPack,
388
+ summarizePhase8ProofBridgesPack
389
+ } = require('./lib/phase_8_proof_bridges_pack');
390
+ const {
391
+ buildPhase8ProofBridgeContinuityPack,
392
+ summarizePhase8ProofBridgeContinuityPack
393
+ } = require('./lib/phase_8_proof_bridge_continuity_pack');
394
+ const {
395
+ buildPhase8CompletionPack,
396
+ summarizePhase8CompletionPack
397
+ } = require('./lib/phase_8_completion_pack');
398
+ const {
399
+ buildPhase8FreezeBaselinePack,
400
+ summarizePhase8FreezeBaselinePack
401
+ } = require('./lib/phase_8_freeze_baseline_pack');
402
+ const {
403
+ buildPhase8FreezeReviewPack,
404
+ summarizePhase8FreezeReviewPack
405
+ } = require('./lib/phase_8_freeze_review_pack');
406
+ const {
407
+ buildPhase8GatePack,
408
+ summarizePhase8GatePack
409
+ } = require('./lib/phase_8_gate_pack');
410
+ const {
411
+ buildPhase8CloseoutPack,
412
+ summarizePhase8CloseoutPack
413
+ } = require('./lib/phase_8_closeout_pack');
414
+ const {
415
+ buildPhase8DecisionRecordPack,
416
+ summarizePhase8DecisionRecordPack
417
+ } = require('./lib/phase_8_decision_record_pack');
418
+ const {
419
+ buildPhase8DecisionResolutionPack,
420
+ summarizePhase8DecisionResolutionPack
421
+ } = require('./lib/phase_8_decision_resolution_pack');
422
+ const {
423
+ buildPhase8ExternalResultImportProofPack,
424
+ summarizePhase8ExternalResultImportProofPack
425
+ } = require('./lib/phase_8_external_result_import_proof_pack');
426
+ const {
427
+ buildPhase8ExternalReceiptImportProofPack,
428
+ summarizePhase8ExternalReceiptImportProofPack
429
+ } = require('./lib/phase_8_external_receipt_import_proof_pack');
430
+ const {
431
+ buildPhase8ProofBundleNormalizationProofPack,
432
+ summarizePhase8ProofBundleNormalizationProofPack
433
+ } = require('./lib/phase_8_proof_bundle_normalization_proof_pack');
434
+ const {
435
+ buildPhase9TreasuryConnectivityPack,
436
+ summarizePhase9TreasuryConnectivityPack
437
+ } = require('./lib/phase_9_treasury_connectivity_pack');
438
+ const {
439
+ buildPhase9TreasuryContinuityPack,
440
+ summarizePhase9TreasuryContinuityPack
441
+ } = require('./lib/phase_9_treasury_continuity_pack');
442
+ const {
443
+ buildPhase9CompletionPack,
444
+ summarizePhase9CompletionPack
445
+ } = require('./lib/phase_9_completion_pack');
446
+ const {
447
+ buildPhase9FreezeBaselinePack,
448
+ summarizePhase9FreezeBaselinePack
449
+ } = require('./lib/phase_9_freeze_baseline_pack');
450
+ const {
451
+ buildPhase9FreezeReviewPack,
452
+ summarizePhase9FreezeReviewPack
453
+ } = require('./lib/phase_9_freeze_review_pack');
454
+ const {
455
+ buildPhase9GatePack,
456
+ summarizePhase9GatePack
457
+ } = require('./lib/phase_9_gate_pack');
458
+ const {
459
+ buildPhase9CloseoutPack,
460
+ summarizePhase9CloseoutPack
461
+ } = require('./lib/phase_9_closeout_pack');
462
+ const {
463
+ buildPhase9DecisionRecordPack,
464
+ summarizePhase9DecisionRecordPack
465
+ } = require('./lib/phase_9_decision_record_pack');
466
+ const {
467
+ buildPhase9DecisionResolutionPack,
468
+ summarizePhase9DecisionResolutionPack
469
+ } = require('./lib/phase_9_decision_resolution_pack');
470
+ const {
471
+ buildPhase9TreasuryDestinationsProofPack,
472
+ summarizePhase9TreasuryDestinationsProofPack
473
+ } = require('./lib/phase_9_treasury_destinations_proof_pack');
474
+ const {
475
+ buildPhase9CustodyRefsProofPack,
476
+ summarizePhase9CustodyRefsProofPack
477
+ } = require('./lib/phase_9_custody_refs_proof_pack');
478
+ const {
479
+ buildPhase9OperatorAccountingBridgesProofPack,
480
+ summarizePhase9OperatorAccountingBridgesProofPack
481
+ } = require('./lib/phase_9_operator_accounting_bridges_proof_pack');
482
+ const {
483
+ buildPhase10LongTailEcosystemPack,
484
+ summarizePhase10LongTailEcosystemPack
485
+ } = require('./lib/phase_10_long_tail_ecosystem_pack');
486
+ const {
487
+ buildPhase10LongTailContinuityPack,
488
+ summarizePhase10LongTailContinuityPack
489
+ } = require('./lib/phase_10_long_tail_continuity_pack');
490
+ const {
491
+ buildPhase10CompletionPack,
492
+ summarizePhase10CompletionPack
493
+ } = require('./lib/phase_10_completion_pack');
494
+ const {
495
+ buildPhase10FreezeReviewPack,
496
+ summarizePhase10FreezeReviewPack
497
+ } = require('./lib/phase_10_freeze_review_pack');
498
+ const {
499
+ buildPhase10FreezeBaselinePack,
500
+ summarizePhase10FreezeBaselinePack
501
+ } = require('./lib/phase_10_freeze_baseline_pack');
502
+ const {
503
+ buildPhase10GatePack,
504
+ summarizePhase10GatePack
505
+ } = require('./lib/phase_10_gate_pack');
506
+ const {
507
+ buildPhase10CloseoutPack,
508
+ summarizePhase10CloseoutPack
509
+ } = require('./lib/phase_10_closeout_pack');
510
+ const {
511
+ buildPhase10DecisionRecordPack,
512
+ summarizePhase10DecisionRecordPack
513
+ } = require('./lib/phase_10_decision_record_pack');
514
+ const {
515
+ buildPhase10DecisionResolutionPack,
516
+ summarizePhase10DecisionResolutionPack
517
+ } = require('./lib/phase_10_decision_resolution_pack');
518
+ const {
519
+ buildPhase10DemandSignalAdaptersProofPack,
520
+ summarizePhase10DemandSignalAdaptersProofPack
521
+ } = require('./lib/phase_10_demand_signal_adapters_proof_pack');
522
+ const {
523
+ buildPhase10NicheExtensionRegistryProofPack,
524
+ summarizePhase10NicheExtensionRegistryProofPack
525
+ } = require('./lib/phase_10_niche_extension_registry_proof_pack');
526
+ const {
527
+ buildPhase10EcosystemBacklogTriageProofPack,
528
+ summarizePhase10EcosystemBacklogTriageProofPack
529
+ } = require('./lib/phase_10_ecosystem_backlog_triage_proof_pack');
530
+ const {
531
+ buildPhase3CompletionPack,
532
+ summarizePhase3CompletionPack
533
+ } = require('./lib/phase_3_completion_pack');
534
+ const {
535
+ buildPhase3FreezeReviewPack,
536
+ summarizePhase3FreezeReviewPack
537
+ } = require('./lib/phase_3_freeze_review_pack');
538
+ const {
539
+ buildPhase3GatePack,
540
+ summarizePhase3GatePack
541
+ } = require('./lib/phase_3_gate_pack');
542
+ const {
543
+ buildPhase3CloseoutPack,
544
+ summarizePhase3CloseoutPack
545
+ } = require('./lib/phase_3_closeout_pack');
546
+ const {
547
+ buildPhase3DecisionRecordPack,
548
+ summarizePhase3DecisionRecordPack
549
+ } = require('./lib/phase_3_decision_record_pack');
550
+ const {
551
+ buildPhase3DecisionResolutionPack,
552
+ summarizePhase3DecisionResolutionPack
553
+ } = require('./lib/phase_3_decision_resolution_pack');
554
+
555
+ function readJsonBody(req) {
556
+ return new Promise((resolve, reject) => {
557
+ let body = '';
558
+ req.on('data', (chunk) => {
559
+ body += chunk;
560
+ if (body.length > 1024 * 1024) {
561
+ reject(new Error('request body too large'));
562
+ req.destroy();
563
+ }
564
+ });
565
+ req.on('end', () => {
566
+ if (!body) {
567
+ resolve({});
568
+ return;
569
+ }
570
+ try {
571
+ resolve(JSON.parse(body));
572
+ } catch (error) {
573
+ reject(new Error('body must be valid JSON'));
574
+ }
575
+ });
576
+ req.on('error', reject);
577
+ });
578
+ }
579
+
580
+ function sendJson(res, statusCode, payload) {
581
+ const json = JSON.stringify(payload);
582
+ res.writeHead(statusCode, {
583
+ 'content-type': 'application/json; charset=utf-8',
584
+ 'content-length': Buffer.byteLength(json),
585
+ });
586
+ res.end(json);
587
+ }
588
+
589
+ function payloadBufferFromBody(body) {
590
+ if (typeof body.payload_bytes_ascii === 'string') {
591
+ return Buffer.from(body.payload_bytes_ascii, 'ascii');
592
+ }
593
+ if (typeof body.payload_base64 === 'string' && body.payload_base64.trim()) {
594
+ return Buffer.from(body.payload_base64, 'base64');
595
+ }
596
+ if (typeof body.payload_utf8 === 'string') {
597
+ return Buffer.from(body.payload_utf8, 'utf8');
598
+ }
599
+ return Buffer.alloc(0);
600
+ }
601
+
602
+ function canonicalEventFromBody(body) {
603
+ return proofSdk.canonicalizeEvent(body.event || body.ceb);
604
+ }
605
+
606
+ async function routeRequest(req, res) {
607
+ const url = new URL(req.url, 'http://127.0.0.1');
608
+
609
+ if (req.method === 'GET' && url.pathname === '/health') {
610
+ sendJson(res, 200, {
611
+ status: 'ok',
612
+ service: 'xoonya',
613
+ readiness: 'ready',
614
+ });
615
+ return;
616
+ }
617
+
618
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack') {
619
+ sendJson(res, 200, buildReleasePack());
620
+ return;
621
+ }
622
+
623
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack/summary') {
624
+ sendJson(res, 200, summarizeReleasePack());
625
+ return;
626
+ }
627
+
628
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack/comparison') {
629
+ sendJson(res, 200, buildComparisonPack());
630
+ return;
631
+ }
632
+
633
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack/comparison/summary') {
634
+ sendJson(res, 200, summarizeComparisonPack());
635
+ return;
636
+ }
637
+
638
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack/adoption') {
639
+ sendJson(res, 200, buildAdoptionPack());
640
+ return;
641
+ }
642
+
643
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack/adoption/summary') {
644
+ sendJson(res, 200, summarizeAdoptionPack());
645
+ return;
646
+ }
647
+
648
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack/scenarios') {
649
+ sendJson(res, 200, buildScenarioPack());
650
+ return;
651
+ }
652
+
653
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack/scenarios/summary') {
654
+ sendJson(res, 200, summarizeScenarioPack());
655
+ return;
656
+ }
657
+
658
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack/launch') {
659
+ sendJson(res, 200, buildLaunchPack());
660
+ return;
661
+ }
662
+
663
+ if (req.method === 'GET' && url.pathname === '/v1/release-pack/launch/summary') {
664
+ sendJson(res, 200, summarizeLaunchPack());
665
+ return;
666
+ }
667
+
668
+ if (req.method === 'GET' && url.pathname === '/v1/release-manifest') {
669
+ sendJson(res, 200, buildReleaseManifest());
670
+ return;
671
+ }
672
+
673
+ if (req.method === 'GET' && url.pathname === '/v1/release-manifest/summary') {
674
+ sendJson(res, 200, summarizeReleaseManifest());
675
+ return;
676
+ }
677
+
678
+ if (req.method === 'GET' && url.pathname === '/v1/release-notes') {
679
+ sendJson(res, 200, buildLaunchNotes());
680
+ return;
681
+ }
682
+
683
+ if (req.method === 'GET' && url.pathname === '/v1/release-notes/summary') {
684
+ sendJson(res, 200, summarizeLaunchNotes());
685
+ return;
686
+ }
687
+
688
+ if (req.method === 'GET' && url.pathname === '/v1/release-center') {
689
+ sendJson(res, 200, buildReleaseCenter());
690
+ return;
691
+ }
692
+
693
+ if (req.method === 'GET' && url.pathname === '/v1/release-center/summary') {
694
+ sendJson(res, 200, summarizeReleaseCenter());
695
+ return;
696
+ }
697
+
698
+ if (req.method === 'GET' && url.pathname === '/v1/release-history') {
699
+ sendJson(res, 200, buildReleaseHistory());
700
+ return;
701
+ }
702
+
703
+ if (req.method === 'GET' && url.pathname === '/v1/release-history/summary') {
704
+ sendJson(res, 200, summarizeReleaseHistory());
705
+ return;
706
+ }
707
+
708
+ if (req.method === 'GET' && url.pathname === '/v1/phases') {
709
+ sendJson(res, 200, buildPhaseProgramPack());
710
+ return;
711
+ }
712
+
713
+ if (req.method === 'GET' && url.pathname === '/v1/phases/summary') {
714
+ sendJson(res, 200, summarizePhaseProgramPack());
715
+ return;
716
+ }
717
+
718
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1') {
719
+ sendJson(res, 200, buildPhase1EcosystemPack());
720
+ return;
721
+ }
722
+
723
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1/summary') {
724
+ sendJson(res, 200, summarizePhase1EcosystemPack());
725
+ return;
726
+ }
727
+
728
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1/openai-codex') {
729
+ sendJson(res, 200, buildPhase1OpenaiCodexPack());
730
+ return;
731
+ }
732
+
733
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1/openai-codex/summary') {
734
+ sendJson(res, 200, summarizePhase1OpenaiCodexPack());
735
+ return;
736
+ }
737
+
738
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1/openai-codex/proof') {
739
+ sendJson(res, 200, buildPhase1OpenaiCodexProofPack());
740
+ return;
741
+ }
742
+
743
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1/openai-codex/proof/summary') {
744
+ sendJson(res, 200, summarizePhase1OpenaiCodexProofPack());
745
+ return;
746
+ }
747
+
748
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1/claude-mcp') {
749
+ sendJson(res, 200, buildPhase1ClaudeMcpPack());
750
+ return;
751
+ }
752
+
753
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1/claude-mcp/summary') {
754
+ sendJson(res, 200, summarizePhase1ClaudeMcpPack());
755
+ return;
756
+ }
757
+
758
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1/claude-mcp/proof') {
759
+ sendJson(res, 200, buildPhase1ClaudeMcpProofPack());
760
+ return;
761
+ }
762
+
763
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-1/claude-mcp/proof/summary') {
764
+ sendJson(res, 200, summarizePhase1ClaudeMcpProofPack());
765
+ return;
766
+ }
767
+
768
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2') {
769
+ sendJson(res, 200, buildPhase2PaymentRailsPack());
770
+ return;
771
+ }
772
+
773
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/summary') {
774
+ sendJson(res, 200, summarizePhase2PaymentRailsPack());
775
+ return;
776
+ }
777
+
778
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/completion') {
779
+ sendJson(res, 200, buildPhase2CompletionPack());
780
+ return;
781
+ }
782
+
783
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/completion/summary') {
784
+ sendJson(res, 200, summarizePhase2CompletionPack());
785
+ return;
786
+ }
787
+
788
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/freeze-review') {
789
+ sendJson(res, 200, buildPhase2FreezeReviewPack());
790
+ return;
791
+ }
792
+
793
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/freeze-review/summary') {
794
+ sendJson(res, 200, summarizePhase2FreezeReviewPack());
795
+ return;
796
+ }
797
+
798
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/gate') {
799
+ sendJson(res, 200, buildPhase2GatePack());
800
+ return;
801
+ }
802
+
803
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/gate/summary') {
804
+ sendJson(res, 200, summarizePhase2GatePack());
805
+ return;
806
+ }
807
+
808
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/closeout') {
809
+ sendJson(res, 200, buildPhase2CloseoutPack());
810
+ return;
811
+ }
812
+
813
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/closeout/summary') {
814
+ sendJson(res, 200, summarizePhase2CloseoutPack());
815
+ return;
816
+ }
817
+
818
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/decision-record') {
819
+ sendJson(res, 200, buildPhase2DecisionRecordPack());
820
+ return;
821
+ }
822
+
823
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/decision-record/summary') {
824
+ sendJson(res, 200, summarizePhase2DecisionRecordPack());
825
+ return;
826
+ }
827
+
828
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/decision-resolution') {
829
+ sendJson(res, 200, buildPhase2DecisionResolutionPack());
830
+ return;
831
+ }
832
+
833
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/decision-resolution/summary') {
834
+ sendJson(res, 200, summarizePhase2DecisionResolutionPack());
835
+ return;
836
+ }
837
+
838
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/flip-preview') {
839
+ sendJson(res, 200, buildPhase2FlipPreviewPack());
840
+ return;
841
+ }
842
+
843
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/flip-preview/summary') {
844
+ sendJson(res, 200, summarizePhase2FlipPreviewPack());
845
+ return;
846
+ }
847
+
848
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/evm-base/proof') {
849
+ sendJson(res, 200, buildPhase2EvmBaseProofPack());
850
+ return;
851
+ }
852
+
853
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/evm-base/proof/summary') {
854
+ sendJson(res, 200, summarizePhase2EvmBaseProofPack());
855
+ return;
856
+ }
857
+
858
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/base-usdc/proof') {
859
+ sendJson(res, 200, buildPhase2BaseUsdcProofPack());
860
+ return;
861
+ }
862
+
863
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/base-usdc/proof/summary') {
864
+ sendJson(res, 200, summarizePhase2BaseUsdcProofPack());
865
+ return;
866
+ }
867
+
868
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/eth/proof') {
869
+ sendJson(res, 200, buildPhase2EthProofPack());
870
+ return;
871
+ }
872
+
873
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/eth/proof/summary') {
874
+ sendJson(res, 200, summarizePhase2EthProofPack());
875
+ return;
876
+ }
877
+
878
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3') {
879
+ sendJson(res, 200, buildPhase3NativeBsvPack());
880
+ return;
881
+ }
882
+
883
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/summary') {
884
+ sendJson(res, 200, summarizePhase3NativeBsvPack());
885
+ return;
886
+ }
887
+
888
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/native-continuity') {
889
+ sendJson(res, 200, buildPhase3NativeContinuityPack());
890
+ return;
891
+ }
892
+
893
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/native-continuity/summary') {
894
+ sendJson(res, 200, summarizePhase3NativeContinuityPack());
895
+ return;
896
+ }
897
+
898
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/freeze-baseline') {
899
+ sendJson(res, 200, buildPhase3FreezeBaselinePack());
900
+ return;
901
+ }
902
+
903
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/freeze-baseline/summary') {
904
+ sendJson(res, 200, summarizePhase3FreezeBaselinePack());
905
+ return;
906
+ }
907
+
908
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/completion') {
909
+ sendJson(res, 200, buildPhase3CompletionPack());
910
+ return;
911
+ }
912
+
913
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/completion/summary') {
914
+ sendJson(res, 200, summarizePhase3CompletionPack());
915
+ return;
916
+ }
917
+
918
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/freeze-review') {
919
+ sendJson(res, 200, buildPhase3FreezeReviewPack());
920
+ return;
921
+ }
922
+
923
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/freeze-review/summary') {
924
+ sendJson(res, 200, summarizePhase3FreezeReviewPack());
925
+ return;
926
+ }
927
+
928
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/gate') {
929
+ sendJson(res, 200, buildPhase3GatePack());
930
+ return;
931
+ }
932
+
933
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/gate/summary') {
934
+ sendJson(res, 200, summarizePhase3GatePack());
935
+ return;
936
+ }
937
+
938
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/closeout') {
939
+ sendJson(res, 200, buildPhase3CloseoutPack());
940
+ return;
941
+ }
942
+
943
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/closeout/summary') {
944
+ sendJson(res, 200, summarizePhase3CloseoutPack());
945
+ return;
946
+ }
947
+
948
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/decision-record') {
949
+ sendJson(res, 200, buildPhase3DecisionRecordPack());
950
+ return;
951
+ }
952
+
953
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/decision-record/summary') {
954
+ sendJson(res, 200, summarizePhase3DecisionRecordPack());
955
+ return;
956
+ }
957
+
958
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/decision-resolution') {
959
+ sendJson(res, 200, buildPhase3DecisionResolutionPack());
960
+ return;
961
+ }
962
+
963
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/decision-resolution/summary') {
964
+ sendJson(res, 200, summarizePhase3DecisionResolutionPack());
965
+ return;
966
+ }
967
+
968
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/bsv-teranode/proof') {
969
+ sendJson(res, 200, buildPhase3BsvTeranodeProofPack());
970
+ return;
971
+ }
972
+
973
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/bsv-teranode/proof/summary') {
974
+ sendJson(res, 200, summarizePhase3BsvTeranodeProofPack());
975
+ return;
976
+ }
977
+
978
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/metanet/proof') {
979
+ sendJson(res, 200, buildPhase3MetanetProofPack());
980
+ return;
981
+ }
982
+
983
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/metanet/proof/summary') {
984
+ sendJson(res, 200, summarizePhase3MetanetProofPack());
985
+ return;
986
+ }
987
+
988
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/brc/proof') {
989
+ sendJson(res, 200, buildPhase3BrcProofPack());
990
+ return;
991
+ }
992
+
993
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-3/brc/proof/summary') {
994
+ sendJson(res, 200, summarizePhase3BrcProofPack());
995
+ return;
996
+ }
997
+
998
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4') {
999
+ sendJson(res, 200, buildPhase4IdentityTrustPack());
1000
+ return;
1001
+ }
1002
+
1003
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/summary') {
1004
+ sendJson(res, 200, summarizePhase4IdentityTrustPack());
1005
+ return;
1006
+ }
1007
+
1008
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/erc8004/proof') {
1009
+ sendJson(res, 200, buildPhase4Erc8004ProofPack());
1010
+ return;
1011
+ }
1012
+
1013
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/erc8004/proof/summary') {
1014
+ sendJson(res, 200, summarizePhase4Erc8004ProofPack());
1015
+ return;
1016
+ }
1017
+
1018
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/identity-registry/proof') {
1019
+ sendJson(res, 200, buildPhase4IdentityRegistryProofPack());
1020
+ return;
1021
+ }
1022
+
1023
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/identity-registry/proof/summary') {
1024
+ sendJson(res, 200, summarizePhase4IdentityRegistryProofPack());
1025
+ return;
1026
+ }
1027
+
1028
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/attestation/proof') {
1029
+ sendJson(res, 200, buildPhase4AttestationProofPack());
1030
+ return;
1031
+ }
1032
+
1033
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/attestation/proof/summary') {
1034
+ sendJson(res, 200, summarizePhase4AttestationProofPack());
1035
+ return;
1036
+ }
1037
+
1038
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/trust-continuity') {
1039
+ sendJson(res, 200, buildPhase4TrustContinuityPack());
1040
+ return;
1041
+ }
1042
+
1043
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/trust-continuity/summary') {
1044
+ sendJson(res, 200, summarizePhase4TrustContinuityPack());
1045
+ return;
1046
+ }
1047
+
1048
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/completion') {
1049
+ sendJson(res, 200, buildPhase4CompletionPack());
1050
+ return;
1051
+ }
1052
+
1053
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/completion/summary') {
1054
+ sendJson(res, 200, summarizePhase4CompletionPack());
1055
+ return;
1056
+ }
1057
+
1058
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/freeze-review') {
1059
+ sendJson(res, 200, buildPhase4FreezeReviewPack());
1060
+ return;
1061
+ }
1062
+
1063
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/freeze-baseline') {
1064
+ sendJson(res, 200, buildPhase4FreezeBaselinePack());
1065
+ return;
1066
+ }
1067
+
1068
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/freeze-baseline/summary') {
1069
+ sendJson(res, 200, summarizePhase4FreezeBaselinePack());
1070
+ return;
1071
+ }
1072
+
1073
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/freeze-review/summary') {
1074
+ sendJson(res, 200, summarizePhase4FreezeReviewPack());
1075
+ return;
1076
+ }
1077
+
1078
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/gate') {
1079
+ sendJson(res, 200, buildPhase4GatePack());
1080
+ return;
1081
+ }
1082
+
1083
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/gate/summary') {
1084
+ sendJson(res, 200, summarizePhase4GatePack());
1085
+ return;
1086
+ }
1087
+
1088
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/closeout') {
1089
+ sendJson(res, 200, buildPhase4CloseoutPack());
1090
+ return;
1091
+ }
1092
+
1093
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/closeout/summary') {
1094
+ sendJson(res, 200, summarizePhase4CloseoutPack());
1095
+ return;
1096
+ }
1097
+
1098
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/decision-record') {
1099
+ sendJson(res, 200, buildPhase4DecisionRecordPack());
1100
+ return;
1101
+ }
1102
+
1103
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/decision-record/summary') {
1104
+ sendJson(res, 200, summarizePhase4DecisionRecordPack());
1105
+ return;
1106
+ }
1107
+
1108
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/decision-resolution') {
1109
+ sendJson(res, 200, buildPhase4DecisionResolutionPack());
1110
+ return;
1111
+ }
1112
+
1113
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-4/decision-resolution/summary') {
1114
+ sendJson(res, 200, summarizePhase4DecisionResolutionPack());
1115
+ return;
1116
+ }
1117
+
1118
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5') {
1119
+ sendJson(res, 200, buildPhase5MajorRailsPack());
1120
+ return;
1121
+ }
1122
+
1123
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/summary') {
1124
+ sendJson(res, 200, summarizePhase5MajorRailsPack());
1125
+ return;
1126
+ }
1127
+
1128
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/major-rails-continuity') {
1129
+ sendJson(res, 200, buildPhase5MajorRailsContinuityPack());
1130
+ return;
1131
+ }
1132
+
1133
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/major-rails-continuity/summary') {
1134
+ sendJson(res, 200, summarizePhase5MajorRailsContinuityPack());
1135
+ return;
1136
+ }
1137
+
1138
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/completion') {
1139
+ sendJson(res, 200, buildPhase5CompletionPack());
1140
+ return;
1141
+ }
1142
+
1143
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/completion/summary') {
1144
+ sendJson(res, 200, summarizePhase5CompletionPack());
1145
+ return;
1146
+ }
1147
+
1148
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/freeze-review') {
1149
+ sendJson(res, 200, buildPhase5FreezeReviewPack());
1150
+ return;
1151
+ }
1152
+
1153
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/freeze-review/summary') {
1154
+ sendJson(res, 200, summarizePhase5FreezeReviewPack());
1155
+ return;
1156
+ }
1157
+
1158
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/freeze-baseline') {
1159
+ sendJson(res, 200, buildPhase5FreezeBaselinePack());
1160
+ return;
1161
+ }
1162
+
1163
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/freeze-baseline/summary') {
1164
+ sendJson(res, 200, summarizePhase5FreezeBaselinePack());
1165
+ return;
1166
+ }
1167
+
1168
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/gate') {
1169
+ sendJson(res, 200, buildPhase5GatePack());
1170
+ return;
1171
+ }
1172
+
1173
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/gate/summary') {
1174
+ sendJson(res, 200, summarizePhase5GatePack());
1175
+ return;
1176
+ }
1177
+
1178
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/closeout') {
1179
+ sendJson(res, 200, buildPhase5CloseoutPack());
1180
+ return;
1181
+ }
1182
+
1183
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/closeout/summary') {
1184
+ sendJson(res, 200, summarizePhase5CloseoutPack());
1185
+ return;
1186
+ }
1187
+
1188
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/decision-record') {
1189
+ sendJson(res, 200, buildPhase5DecisionRecordPack());
1190
+ return;
1191
+ }
1192
+
1193
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/decision-record/summary') {
1194
+ sendJson(res, 200, summarizePhase5DecisionRecordPack());
1195
+ return;
1196
+ }
1197
+
1198
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/decision-resolution') {
1199
+ sendJson(res, 200, buildPhase5DecisionResolutionPack());
1200
+ return;
1201
+ }
1202
+
1203
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/decision-resolution/summary') {
1204
+ sendJson(res, 200, summarizePhase5DecisionResolutionPack());
1205
+ return;
1206
+ }
1207
+
1208
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/solana/proof') {
1209
+ sendJson(res, 200, buildPhase5SolanaProofPack());
1210
+ return;
1211
+ }
1212
+
1213
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/solana/proof/summary') {
1214
+ sendJson(res, 200, summarizePhase5SolanaProofPack());
1215
+ return;
1216
+ }
1217
+
1218
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/antelope/proof') {
1219
+ sendJson(res, 200, buildPhase5AntelopeProofPack());
1220
+ return;
1221
+ }
1222
+
1223
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/antelope/proof/summary') {
1224
+ sendJson(res, 200, summarizePhase5AntelopeProofPack());
1225
+ return;
1226
+ }
1227
+
1228
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/proton-xpr/proof') {
1229
+ sendJson(res, 200, buildPhase5ProtonXprProofPack());
1230
+ return;
1231
+ }
1232
+
1233
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-5/proton-xpr/proof/summary') {
1234
+ sendJson(res, 200, summarizePhase5ProtonXprProofPack());
1235
+ return;
1236
+ }
1237
+
1238
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6') {
1239
+ sendJson(res, 200, buildPhase6FrameworkRuntimePack());
1240
+ return;
1241
+ }
1242
+
1243
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/summary') {
1244
+ sendJson(res, 200, summarizePhase6FrameworkRuntimePack());
1245
+ return;
1246
+ }
1247
+
1248
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/langgraph/proof') {
1249
+ sendJson(res, 200, buildPhase6LanggraphProofPack());
1250
+ return;
1251
+ }
1252
+
1253
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/langgraph/proof/summary') {
1254
+ sendJson(res, 200, summarizePhase6LanggraphProofPack());
1255
+ return;
1256
+ }
1257
+
1258
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/langchain/proof') {
1259
+ sendJson(res, 200, buildPhase6LangchainProofPack());
1260
+ return;
1261
+ }
1262
+
1263
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/langchain/proof/summary') {
1264
+ sendJson(res, 200, summarizePhase6LangchainProofPack());
1265
+ return;
1266
+ }
1267
+
1268
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/autogen/proof') {
1269
+ sendJson(res, 200, buildPhase6AutogenProofPack());
1270
+ return;
1271
+ }
1272
+
1273
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/autogen/proof/summary') {
1274
+ sendJson(res, 200, summarizePhase6AutogenProofPack());
1275
+ return;
1276
+ }
1277
+
1278
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/semantic-kernel/proof') {
1279
+ sendJson(res, 200, buildPhase6SemanticKernelProofPack());
1280
+ return;
1281
+ }
1282
+
1283
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/semantic-kernel/proof/summary') {
1284
+ sendJson(res, 200, summarizePhase6SemanticKernelProofPack());
1285
+ return;
1286
+ }
1287
+
1288
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/framework-continuity') {
1289
+ sendJson(res, 200, buildPhase6FrameworkContinuityPack());
1290
+ return;
1291
+ }
1292
+
1293
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/framework-continuity/summary') {
1294
+ sendJson(res, 200, summarizePhase6FrameworkContinuityPack());
1295
+ return;
1296
+ }
1297
+
1298
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/completion') {
1299
+ sendJson(res, 200, buildPhase6CompletionPack());
1300
+ return;
1301
+ }
1302
+
1303
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/completion/summary') {
1304
+ sendJson(res, 200, summarizePhase6CompletionPack());
1305
+ return;
1306
+ }
1307
+
1308
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/freeze-review') {
1309
+ sendJson(res, 200, buildPhase6FreezeReviewPack());
1310
+ return;
1311
+ }
1312
+
1313
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/freeze-review/summary') {
1314
+ sendJson(res, 200, summarizePhase6FreezeReviewPack());
1315
+ return;
1316
+ }
1317
+
1318
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/freeze-baseline') {
1319
+ sendJson(res, 200, buildPhase6FreezeBaselinePack());
1320
+ return;
1321
+ }
1322
+
1323
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/freeze-baseline/summary') {
1324
+ sendJson(res, 200, summarizePhase6FreezeBaselinePack());
1325
+ return;
1326
+ }
1327
+
1328
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/gate') {
1329
+ sendJson(res, 200, buildPhase6GatePack());
1330
+ return;
1331
+ }
1332
+
1333
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/gate/summary') {
1334
+ sendJson(res, 200, summarizePhase6GatePack());
1335
+ return;
1336
+ }
1337
+
1338
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/closeout') {
1339
+ sendJson(res, 200, buildPhase6CloseoutPack());
1340
+ return;
1341
+ }
1342
+
1343
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/closeout/summary') {
1344
+ sendJson(res, 200, summarizePhase6CloseoutPack());
1345
+ return;
1346
+ }
1347
+
1348
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/decision-record') {
1349
+ sendJson(res, 200, buildPhase6DecisionRecordPack());
1350
+ return;
1351
+ }
1352
+
1353
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/decision-record/summary') {
1354
+ sendJson(res, 200, summarizePhase6DecisionRecordPack());
1355
+ return;
1356
+ }
1357
+
1358
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/decision-resolution') {
1359
+ sendJson(res, 200, buildPhase6DecisionResolutionPack());
1360
+ return;
1361
+ }
1362
+
1363
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-6/decision-resolution/summary') {
1364
+ sendJson(res, 200, summarizePhase6DecisionResolutionPack());
1365
+ return;
1366
+ }
1367
+
1368
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7') {
1369
+ sendJson(res, 200, buildPhase7EventSystemPack());
1370
+ return;
1371
+ }
1372
+
1373
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/summary') {
1374
+ sendJson(res, 200, summarizePhase7EventSystemPack());
1375
+ return;
1376
+ }
1377
+
1378
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/kafka/proof') {
1379
+ sendJson(res, 200, buildPhase7KafkaProofPack());
1380
+ return;
1381
+ }
1382
+
1383
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/kafka/proof/summary') {
1384
+ sendJson(res, 200, summarizePhase7KafkaProofPack());
1385
+ return;
1386
+ }
1387
+
1388
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/nats/proof') {
1389
+ sendJson(res, 200, buildPhase7NatsProofPack());
1390
+ return;
1391
+ }
1392
+
1393
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/nats/proof/summary') {
1394
+ sendJson(res, 200, summarizePhase7NatsProofPack());
1395
+ return;
1396
+ }
1397
+
1398
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/mqtt/proof') {
1399
+ sendJson(res, 200, buildPhase7MqttProofPack());
1400
+ return;
1401
+ }
1402
+
1403
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/mqtt/proof/summary') {
1404
+ sendJson(res, 200, summarizePhase7MqttProofPack());
1405
+ return;
1406
+ }
1407
+
1408
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/webhook-event-bus/proof') {
1409
+ sendJson(res, 200, buildPhase7WebhookEventBusProofPack());
1410
+ return;
1411
+ }
1412
+
1413
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/webhook-event-bus/proof/summary') {
1414
+ sendJson(res, 200, summarizePhase7WebhookEventBusProofPack());
1415
+ return;
1416
+ }
1417
+
1418
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/event-system-continuity') {
1419
+ sendJson(res, 200, buildPhase7EventSystemContinuityPack());
1420
+ return;
1421
+ }
1422
+
1423
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/event-system-continuity/summary') {
1424
+ sendJson(res, 200, summarizePhase7EventSystemContinuityPack());
1425
+ return;
1426
+ }
1427
+
1428
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/completion') {
1429
+ sendJson(res, 200, buildPhase7CompletionPack());
1430
+ return;
1431
+ }
1432
+
1433
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/completion/summary') {
1434
+ sendJson(res, 200, summarizePhase7CompletionPack());
1435
+ return;
1436
+ }
1437
+
1438
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/freeze-review') {
1439
+ sendJson(res, 200, buildPhase7FreezeReviewPack());
1440
+ return;
1441
+ }
1442
+
1443
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/freeze-baseline') {
1444
+ sendJson(res, 200, buildPhase7FreezeBaselinePack());
1445
+ return;
1446
+ }
1447
+
1448
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/freeze-baseline/summary') {
1449
+ sendJson(res, 200, summarizePhase7FreezeBaselinePack());
1450
+ return;
1451
+ }
1452
+
1453
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/freeze-review/summary') {
1454
+ sendJson(res, 200, summarizePhase7FreezeReviewPack());
1455
+ return;
1456
+ }
1457
+
1458
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/gate') {
1459
+ sendJson(res, 200, buildPhase7GatePack());
1460
+ return;
1461
+ }
1462
+
1463
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/gate/summary') {
1464
+ sendJson(res, 200, summarizePhase7GatePack());
1465
+ return;
1466
+ }
1467
+
1468
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/closeout') {
1469
+ sendJson(res, 200, buildPhase7CloseoutPack());
1470
+ return;
1471
+ }
1472
+
1473
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/closeout/summary') {
1474
+ sendJson(res, 200, summarizePhase7CloseoutPack());
1475
+ return;
1476
+ }
1477
+
1478
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/decision-record') {
1479
+ sendJson(res, 200, buildPhase7DecisionRecordPack());
1480
+ return;
1481
+ }
1482
+
1483
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/decision-record/summary') {
1484
+ sendJson(res, 200, summarizePhase7DecisionRecordPack());
1485
+ return;
1486
+ }
1487
+
1488
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/decision-resolution') {
1489
+ sendJson(res, 200, buildPhase7DecisionResolutionPack());
1490
+ return;
1491
+ }
1492
+
1493
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-7/decision-resolution/summary') {
1494
+ sendJson(res, 200, summarizePhase7DecisionResolutionPack());
1495
+ return;
1496
+ }
1497
+
1498
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8') {
1499
+ sendJson(res, 200, buildPhase8ProofBridgesPack());
1500
+ return;
1501
+ }
1502
+
1503
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/summary') {
1504
+ sendJson(res, 200, summarizePhase8ProofBridgesPack());
1505
+ return;
1506
+ }
1507
+
1508
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/proof-bridge-continuity') {
1509
+ sendJson(res, 200, buildPhase8ProofBridgeContinuityPack());
1510
+ return;
1511
+ }
1512
+
1513
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/proof-bridge-continuity/summary') {
1514
+ sendJson(res, 200, summarizePhase8ProofBridgeContinuityPack());
1515
+ return;
1516
+ }
1517
+
1518
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/completion') {
1519
+ sendJson(res, 200, buildPhase8CompletionPack());
1520
+ return;
1521
+ }
1522
+
1523
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/completion/summary') {
1524
+ sendJson(res, 200, summarizePhase8CompletionPack());
1525
+ return;
1526
+ }
1527
+
1528
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/freeze-baseline') {
1529
+ sendJson(res, 200, buildPhase8FreezeBaselinePack());
1530
+ return;
1531
+ }
1532
+
1533
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/freeze-baseline/summary') {
1534
+ sendJson(res, 200, summarizePhase8FreezeBaselinePack());
1535
+ return;
1536
+ }
1537
+
1538
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/freeze-review') {
1539
+ sendJson(res, 200, buildPhase8FreezeReviewPack());
1540
+ return;
1541
+ }
1542
+
1543
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/freeze-review/summary') {
1544
+ sendJson(res, 200, summarizePhase8FreezeReviewPack());
1545
+ return;
1546
+ }
1547
+
1548
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/gate') {
1549
+ sendJson(res, 200, buildPhase8GatePack());
1550
+ return;
1551
+ }
1552
+
1553
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/gate/summary') {
1554
+ sendJson(res, 200, summarizePhase8GatePack());
1555
+ return;
1556
+ }
1557
+
1558
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/closeout') {
1559
+ sendJson(res, 200, buildPhase8CloseoutPack());
1560
+ return;
1561
+ }
1562
+
1563
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/closeout/summary') {
1564
+ sendJson(res, 200, summarizePhase8CloseoutPack());
1565
+ return;
1566
+ }
1567
+
1568
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/decision-record') {
1569
+ sendJson(res, 200, buildPhase8DecisionRecordPack());
1570
+ return;
1571
+ }
1572
+
1573
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/decision-record/summary') {
1574
+ sendJson(res, 200, summarizePhase8DecisionRecordPack());
1575
+ return;
1576
+ }
1577
+
1578
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/decision-resolution') {
1579
+ sendJson(res, 200, buildPhase8DecisionResolutionPack());
1580
+ return;
1581
+ }
1582
+
1583
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/decision-resolution/summary') {
1584
+ sendJson(res, 200, summarizePhase8DecisionResolutionPack());
1585
+ return;
1586
+ }
1587
+
1588
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/external-result-import/proof') {
1589
+ sendJson(res, 200, buildPhase8ExternalResultImportProofPack());
1590
+ return;
1591
+ }
1592
+
1593
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/external-result-import/proof/summary') {
1594
+ sendJson(res, 200, summarizePhase8ExternalResultImportProofPack());
1595
+ return;
1596
+ }
1597
+
1598
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/external-receipt-import/proof') {
1599
+ sendJson(res, 200, buildPhase8ExternalReceiptImportProofPack());
1600
+ return;
1601
+ }
1602
+
1603
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/external-receipt-import/proof/summary') {
1604
+ sendJson(res, 200, summarizePhase8ExternalReceiptImportProofPack());
1605
+ return;
1606
+ }
1607
+
1608
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/proof-bundle-normalization/proof') {
1609
+ sendJson(res, 200, buildPhase8ProofBundleNormalizationProofPack());
1610
+ return;
1611
+ }
1612
+
1613
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-8/proof-bundle-normalization/proof/summary') {
1614
+ sendJson(res, 200, summarizePhase8ProofBundleNormalizationProofPack());
1615
+ return;
1616
+ }
1617
+
1618
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9') {
1619
+ sendJson(res, 200, buildPhase9TreasuryConnectivityPack());
1620
+ return;
1621
+ }
1622
+
1623
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/summary') {
1624
+ sendJson(res, 200, summarizePhase9TreasuryConnectivityPack());
1625
+ return;
1626
+ }
1627
+
1628
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/treasury-continuity') {
1629
+ sendJson(res, 200, buildPhase9TreasuryContinuityPack());
1630
+ return;
1631
+ }
66
1632
 
67
- function readJsonBody(req) {
68
- return new Promise((resolve, reject) => {
69
- let body = '';
70
- req.on('data', (chunk) => {
71
- body += chunk;
72
- if (body.length > 1024 * 1024) {
73
- reject(new Error('request body too large'));
74
- req.destroy();
75
- }
76
- });
77
- req.on('end', () => {
78
- if (!body) {
79
- resolve({});
80
- return;
81
- }
82
- try {
83
- resolve(JSON.parse(body));
84
- } catch (error) {
85
- reject(new Error('body must be valid JSON'));
86
- }
87
- });
88
- req.on('error', reject);
89
- });
90
- }
1633
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/treasury-continuity/summary') {
1634
+ sendJson(res, 200, summarizePhase9TreasuryContinuityPack());
1635
+ return;
1636
+ }
91
1637
 
92
- function sendJson(res, statusCode, payload) {
93
- const json = JSON.stringify(payload);
94
- res.writeHead(statusCode, {
95
- 'content-type': 'application/json; charset=utf-8',
96
- 'content-length': Buffer.byteLength(json),
97
- });
98
- res.end(json);
99
- }
1638
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/completion') {
1639
+ sendJson(res, 200, buildPhase9CompletionPack());
1640
+ return;
1641
+ }
100
1642
 
101
- function payloadBufferFromBody(body) {
102
- if (typeof body.payload_bytes_ascii === 'string') {
103
- return Buffer.from(body.payload_bytes_ascii, 'ascii');
1643
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/completion/summary') {
1644
+ sendJson(res, 200, summarizePhase9CompletionPack());
1645
+ return;
104
1646
  }
105
- if (typeof body.payload_base64 === 'string' && body.payload_base64.trim()) {
106
- return Buffer.from(body.payload_base64, 'base64');
1647
+
1648
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/freeze-baseline') {
1649
+ sendJson(res, 200, buildPhase9FreezeBaselinePack());
1650
+ return;
107
1651
  }
108
- if (typeof body.payload_utf8 === 'string') {
109
- return Buffer.from(body.payload_utf8, 'utf8');
1652
+
1653
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/freeze-baseline/summary') {
1654
+ sendJson(res, 200, summarizePhase9FreezeBaselinePack());
1655
+ return;
110
1656
  }
111
- return Buffer.alloc(0);
112
- }
113
1657
 
114
- function canonicalEventFromBody(body) {
115
- return proofSdk.canonicalizeEvent(body.event || body.ceb);
116
- }
1658
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/freeze-review') {
1659
+ sendJson(res, 200, buildPhase9FreezeReviewPack());
1660
+ return;
1661
+ }
117
1662
 
118
- async function routeRequest(req, res) {
119
- const url = new URL(req.url, 'http://127.0.0.1');
1663
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/freeze-review/summary') {
1664
+ sendJson(res, 200, summarizePhase9FreezeReviewPack());
1665
+ return;
1666
+ }
120
1667
 
121
- if (req.method === 'GET' && url.pathname === '/health') {
122
- sendJson(res, 200, {
123
- status: 'ok',
124
- service: 'xoonya',
125
- readiness: 'ready',
126
- });
1668
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/gate') {
1669
+ sendJson(res, 200, buildPhase9GatePack());
127
1670
  return;
128
1671
  }
129
1672
 
130
- if (req.method === 'GET' && url.pathname === '/v1/release-pack') {
131
- sendJson(res, 200, buildReleasePack());
1673
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/gate/summary') {
1674
+ sendJson(res, 200, summarizePhase9GatePack());
132
1675
  return;
133
1676
  }
134
1677
 
135
- if (req.method === 'GET' && url.pathname === '/v1/release-pack/summary') {
136
- sendJson(res, 200, summarizeReleasePack());
1678
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/closeout') {
1679
+ sendJson(res, 200, buildPhase9CloseoutPack());
137
1680
  return;
138
1681
  }
139
1682
 
140
- if (req.method === 'GET' && url.pathname === '/v1/release-pack/comparison') {
141
- sendJson(res, 200, buildComparisonPack());
1683
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/closeout/summary') {
1684
+ sendJson(res, 200, summarizePhase9CloseoutPack());
142
1685
  return;
143
1686
  }
144
1687
 
145
- if (req.method === 'GET' && url.pathname === '/v1/release-pack/comparison/summary') {
146
- sendJson(res, 200, summarizeComparisonPack());
1688
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/decision-record') {
1689
+ sendJson(res, 200, buildPhase9DecisionRecordPack());
147
1690
  return;
148
1691
  }
149
1692
 
150
- if (req.method === 'GET' && url.pathname === '/v1/release-pack/adoption') {
151
- sendJson(res, 200, buildAdoptionPack());
1693
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/decision-record/summary') {
1694
+ sendJson(res, 200, summarizePhase9DecisionRecordPack());
152
1695
  return;
153
1696
  }
154
1697
 
155
- if (req.method === 'GET' && url.pathname === '/v1/release-pack/adoption/summary') {
156
- sendJson(res, 200, summarizeAdoptionPack());
1698
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/decision-resolution') {
1699
+ sendJson(res, 200, buildPhase9DecisionResolutionPack());
157
1700
  return;
158
1701
  }
159
1702
 
160
- if (req.method === 'GET' && url.pathname === '/v1/release-pack/scenarios') {
161
- sendJson(res, 200, buildScenarioPack());
1703
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/decision-resolution/summary') {
1704
+ sendJson(res, 200, summarizePhase9DecisionResolutionPack());
162
1705
  return;
163
1706
  }
164
1707
 
165
- if (req.method === 'GET' && url.pathname === '/v1/release-pack/scenarios/summary') {
166
- sendJson(res, 200, summarizeScenarioPack());
1708
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/treasury-destinations/proof') {
1709
+ sendJson(res, 200, buildPhase9TreasuryDestinationsProofPack());
167
1710
  return;
168
1711
  }
169
1712
 
170
- if (req.method === 'GET' && url.pathname === '/v1/release-pack/launch') {
171
- sendJson(res, 200, buildLaunchPack());
1713
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/treasury-destinations/proof/summary') {
1714
+ sendJson(res, 200, summarizePhase9TreasuryDestinationsProofPack());
172
1715
  return;
173
1716
  }
174
1717
 
175
- if (req.method === 'GET' && url.pathname === '/v1/release-pack/launch/summary') {
176
- sendJson(res, 200, summarizeLaunchPack());
1718
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/custody-refs/proof') {
1719
+ sendJson(res, 200, buildPhase9CustodyRefsProofPack());
177
1720
  return;
178
1721
  }
179
1722
 
180
- if (req.method === 'GET' && url.pathname === '/v1/release-manifest') {
181
- sendJson(res, 200, buildReleaseManifest());
1723
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/custody-refs/proof/summary') {
1724
+ sendJson(res, 200, summarizePhase9CustodyRefsProofPack());
182
1725
  return;
183
1726
  }
184
1727
 
185
- if (req.method === 'GET' && url.pathname === '/v1/release-manifest/summary') {
186
- sendJson(res, 200, summarizeReleaseManifest());
1728
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/operator-accounting-bridges/proof') {
1729
+ sendJson(res, 200, buildPhase9OperatorAccountingBridgesProofPack());
187
1730
  return;
188
1731
  }
189
1732
 
190
- if (req.method === 'GET' && url.pathname === '/v1/release-notes') {
191
- sendJson(res, 200, buildLaunchNotes());
1733
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-9/operator-accounting-bridges/proof/summary') {
1734
+ sendJson(res, 200, summarizePhase9OperatorAccountingBridgesProofPack());
192
1735
  return;
193
1736
  }
194
1737
 
195
- if (req.method === 'GET' && url.pathname === '/v1/release-notes/summary') {
196
- sendJson(res, 200, summarizeLaunchNotes());
1738
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10') {
1739
+ sendJson(res, 200, buildPhase10LongTailEcosystemPack());
197
1740
  return;
198
1741
  }
199
1742
 
200
- if (req.method === 'GET' && url.pathname === '/v1/release-center') {
201
- sendJson(res, 200, buildReleaseCenter());
1743
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/summary') {
1744
+ sendJson(res, 200, summarizePhase10LongTailEcosystemPack());
202
1745
  return;
203
1746
  }
204
1747
 
205
- if (req.method === 'GET' && url.pathname === '/v1/release-center/summary') {
206
- sendJson(res, 200, summarizeReleaseCenter());
1748
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/long-tail-continuity') {
1749
+ sendJson(res, 200, buildPhase10LongTailContinuityPack());
207
1750
  return;
208
1751
  }
209
1752
 
210
- if (req.method === 'GET' && url.pathname === '/v1/release-history') {
211
- sendJson(res, 200, buildReleaseHistory());
1753
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/long-tail-continuity/summary') {
1754
+ sendJson(res, 200, summarizePhase10LongTailContinuityPack());
212
1755
  return;
213
1756
  }
214
1757
 
215
- if (req.method === 'GET' && url.pathname === '/v1/release-history/summary') {
216
- sendJson(res, 200, summarizeReleaseHistory());
1758
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/completion') {
1759
+ sendJson(res, 200, buildPhase10CompletionPack());
1760
+ return;
1761
+ }
1762
+
1763
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/completion/summary') {
1764
+ sendJson(res, 200, summarizePhase10CompletionPack());
1765
+ return;
1766
+ }
1767
+
1768
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/freeze-review') {
1769
+ sendJson(res, 200, buildPhase10FreezeReviewPack());
1770
+ return;
1771
+ }
1772
+
1773
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/freeze-review/summary') {
1774
+ sendJson(res, 200, summarizePhase10FreezeReviewPack());
1775
+ return;
1776
+ }
1777
+
1778
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/freeze-baseline') {
1779
+ sendJson(res, 200, buildPhase10FreezeBaselinePack());
1780
+ return;
1781
+ }
1782
+
1783
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/freeze-baseline/summary') {
1784
+ sendJson(res, 200, summarizePhase10FreezeBaselinePack());
1785
+ return;
1786
+ }
1787
+
1788
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/gate') {
1789
+ sendJson(res, 200, buildPhase10GatePack());
1790
+ return;
1791
+ }
1792
+
1793
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/gate/summary') {
1794
+ sendJson(res, 200, summarizePhase10GatePack());
1795
+ return;
1796
+ }
1797
+
1798
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/closeout') {
1799
+ sendJson(res, 200, buildPhase10CloseoutPack());
1800
+ return;
1801
+ }
1802
+
1803
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/closeout/summary') {
1804
+ sendJson(res, 200, summarizePhase10CloseoutPack());
1805
+ return;
1806
+ }
1807
+
1808
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/decision-record') {
1809
+ sendJson(res, 200, buildPhase10DecisionRecordPack());
1810
+ return;
1811
+ }
1812
+
1813
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/decision-record/summary') {
1814
+ sendJson(res, 200, summarizePhase10DecisionRecordPack());
1815
+ return;
1816
+ }
1817
+
1818
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/decision-resolution') {
1819
+ sendJson(res, 200, buildPhase10DecisionResolutionPack());
1820
+ return;
1821
+ }
1822
+
1823
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/decision-resolution/summary') {
1824
+ sendJson(res, 200, summarizePhase10DecisionResolutionPack());
1825
+ return;
1826
+ }
1827
+
1828
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/demand-signal-adapters/proof') {
1829
+ sendJson(res, 200, buildPhase10DemandSignalAdaptersProofPack());
1830
+ return;
1831
+ }
1832
+
1833
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/demand-signal-adapters/proof/summary') {
1834
+ sendJson(res, 200, summarizePhase10DemandSignalAdaptersProofPack());
1835
+ return;
1836
+ }
1837
+
1838
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/niche-extension-registry/proof') {
1839
+ sendJson(res, 200, buildPhase10NicheExtensionRegistryProofPack());
1840
+ return;
1841
+ }
1842
+
1843
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/niche-extension-registry/proof/summary') {
1844
+ sendJson(res, 200, summarizePhase10NicheExtensionRegistryProofPack());
1845
+ return;
1846
+ }
1847
+
1848
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/ecosystem-backlog-triage/proof') {
1849
+ sendJson(res, 200, buildPhase10EcosystemBacklogTriageProofPack());
1850
+ return;
1851
+ }
1852
+
1853
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-10/ecosystem-backlog-triage/proof/summary') {
1854
+ sendJson(res, 200, summarizePhase10EcosystemBacklogTriageProofPack());
1855
+ return;
1856
+ }
1857
+
1858
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/evm/proof') {
1859
+ sendJson(res, 200, buildPhase2EvmProofPack());
1860
+ return;
1861
+ }
1862
+
1863
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/evm/proof/summary') {
1864
+ sendJson(res, 200, summarizePhase2EvmProofPack());
1865
+ return;
1866
+ }
1867
+
1868
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/base/proof') {
1869
+ sendJson(res, 200, buildPhase2BaseProofPack());
1870
+ return;
1871
+ }
1872
+
1873
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/base/proof/summary') {
1874
+ sendJson(res, 200, summarizePhase2BaseProofPack());
1875
+ return;
1876
+ }
1877
+
1878
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/usdc/proof') {
1879
+ sendJson(res, 200, buildPhase2UsdcProofPack());
1880
+ return;
1881
+ }
1882
+
1883
+ if (req.method === 'GET' && url.pathname === '/v1/phases/phase-2/usdc/proof/summary') {
1884
+ sendJson(res, 200, summarizePhase2UsdcProofPack());
217
1885
  return;
218
1886
  }
219
1887
 
@@ -277,6 +1945,46 @@ async function routeRequest(req, res) {
277
1945
  return;
278
1946
  }
279
1947
 
1948
+ if (req.method === 'GET' && url.pathname === '/v1/trust-intelligence') {
1949
+ sendJson(res, 200, buildTrustIntelligencePack());
1950
+ return;
1951
+ }
1952
+
1953
+ if (req.method === 'GET' && url.pathname === '/v1/trust-intelligence/summary') {
1954
+ sendJson(res, 200, summarizeTrustIntelligencePack());
1955
+ return;
1956
+ }
1957
+
1958
+ if (req.method === 'GET' && url.pathname === '/v1/review-intelligence') {
1959
+ sendJson(res, 200, buildReviewIntelligencePack());
1960
+ return;
1961
+ }
1962
+
1963
+ if (req.method === 'GET' && url.pathname === '/v1/review-intelligence/summary') {
1964
+ sendJson(res, 200, summarizeReviewIntelligencePack());
1965
+ return;
1966
+ }
1967
+
1968
+ if (req.method === 'GET' && url.pathname === '/v1/governance-intelligence') {
1969
+ sendJson(res, 200, buildGovernanceIntelligencePack());
1970
+ return;
1971
+ }
1972
+
1973
+ if (req.method === 'GET' && url.pathname === '/v1/governance-intelligence/summary') {
1974
+ sendJson(res, 200, summarizeGovernanceIntelligencePack());
1975
+ return;
1976
+ }
1977
+
1978
+ if (req.method === 'GET' && url.pathname === '/v1/bridge-intelligence') {
1979
+ sendJson(res, 200, buildBridgeIntelligencePack());
1980
+ return;
1981
+ }
1982
+
1983
+ if (req.method === 'GET' && url.pathname === '/v1/bridge-intelligence/summary') {
1984
+ sendJson(res, 200, summarizeBridgeIntelligencePack());
1985
+ return;
1986
+ }
1987
+
280
1988
  if (req.method === 'GET' && url.pathname === '/v1/proof-center') {
281
1989
  sendJson(res, 200, proofSdk.buildDefaultProofCenter());
282
1990
  return;
@@ -918,6 +2626,72 @@ async function routeRequest(req, res) {
918
2626
  return;
919
2627
  }
920
2628
 
2629
+ if (req.method === 'POST' && url.pathname === '/v1/review-intelligence') {
2630
+ try {
2631
+ const body = await readJsonBody(req);
2632
+ const result = buildReviewIntelligencePack(body);
2633
+ sendJson(res, 200, result);
2634
+ } catch (error) {
2635
+ sendJson(res, 400, { ok: false, reason: error.message });
2636
+ }
2637
+ return;
2638
+ }
2639
+
2640
+ if (req.method === 'POST' && url.pathname === '/v1/review-intelligence/summary') {
2641
+ try {
2642
+ const body = await readJsonBody(req);
2643
+ const result = summarizeReviewIntelligencePack(body);
2644
+ sendJson(res, 200, result);
2645
+ } catch (error) {
2646
+ sendJson(res, 400, { ok: false, reason: error.message });
2647
+ }
2648
+ return;
2649
+ }
2650
+
2651
+ if (req.method === 'POST' && url.pathname === '/v1/governance-intelligence') {
2652
+ try {
2653
+ const body = await readJsonBody(req);
2654
+ const result = buildGovernanceIntelligencePack(body);
2655
+ sendJson(res, 200, result);
2656
+ } catch (error) {
2657
+ sendJson(res, 400, { ok: false, reason: error.message });
2658
+ }
2659
+ return;
2660
+ }
2661
+
2662
+ if (req.method === 'POST' && url.pathname === '/v1/governance-intelligence/summary') {
2663
+ try {
2664
+ const body = await readJsonBody(req);
2665
+ const result = summarizeGovernanceIntelligencePack(body);
2666
+ sendJson(res, 200, result);
2667
+ } catch (error) {
2668
+ sendJson(res, 400, { ok: false, reason: error.message });
2669
+ }
2670
+ return;
2671
+ }
2672
+
2673
+ if (req.method === 'POST' && url.pathname === '/v1/bridge-intelligence') {
2674
+ try {
2675
+ const body = await readJsonBody(req);
2676
+ const result = buildBridgeIntelligencePack(body);
2677
+ sendJson(res, 200, result);
2678
+ } catch (error) {
2679
+ sendJson(res, 400, { ok: false, reason: error.message });
2680
+ }
2681
+ return;
2682
+ }
2683
+
2684
+ if (req.method === 'POST' && url.pathname === '/v1/bridge-intelligence/summary') {
2685
+ try {
2686
+ const body = await readJsonBody(req);
2687
+ const result = summarizeBridgeIntelligencePack(body);
2688
+ sendJson(res, 200, result);
2689
+ } catch (error) {
2690
+ sendJson(res, 400, { ok: false, reason: error.message });
2691
+ }
2692
+ return;
2693
+ }
2694
+
921
2695
  if (req.method === 'POST' && url.pathname === '/v1/proof-center/governance/operator-view') {
922
2696
  try {
923
2697
  const body = await readJsonBody(req);