xytara 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 (163) hide show
  1. package/.env.example +5 -1
  2. package/ADAPTER_START_HERE.md +56 -0
  3. package/CARRIED_HANDOFF_DEMO.md +60 -0
  4. package/EXAMPLE_PATHS.md +53 -0
  5. package/OPERATIONS_RUNBOOK.md +65 -0
  6. package/OPERATOR_START_HERE.md +63 -0
  7. package/PARTNER_READY_PATH.md +71 -0
  8. package/PROGRAM_COMPLETE_RELEASE.md +63 -0
  9. package/PROGRAM_STATUS.md +57 -0
  10. package/PUBLIC_DEMO_SCRIPT.md +78 -0
  11. package/PUBLISH_PLAN.md +7 -5
  12. package/README.md +66 -0
  13. package/RELEASE_CHECKLIST.md +8 -2
  14. package/RELEASE_NOTES.md +19 -8
  15. package/START_HERE.md +32 -0
  16. package/SUPABASE_RUNTIME_STATE_SETUP.md +61 -0
  17. package/WHY_XYTARA_XOONYA.md +63 -0
  18. package/adapters/examples/minimal-third-party-execution-adapter.js +61 -0
  19. package/adapters/examples/minimal-third-party-execution-adapter.manifest.json +79 -0
  20. package/adapters/examples/minimal-third-party-execution-registration.record.json +26 -0
  21. package/adapters/examples/minimal-third-party-execution.certification-pack.json +22 -0
  22. package/adapters/examples/minimal-third-party-execution.submission-bundle.json +126 -0
  23. package/bin/xytara-release.js +1251 -1
  24. package/examples/adapter_review_walkthrough.js +53 -0
  25. package/examples/export_carried_handoff.js +80 -0
  26. package/examples/funded_runtime_walkthrough.js +70 -0
  27. package/examples/partner_launch_walkthrough.js +43 -0
  28. package/examples/quickstart.js +3255 -0
  29. package/index.js +7 -1
  30. package/lib/adapter_pack.js +118 -0
  31. package/lib/adapter_partner_pack.js +89 -0
  32. package/lib/adapter_promotion_pack.js +89 -0
  33. package/lib/commerce_client.js +38 -0
  34. package/lib/commerce_economics.js +304 -0
  35. package/lib/operator_intelligence.js +90 -0
  36. package/lib/outreach_copy_pack.js +51 -0
  37. package/lib/outreach_message_pack.js +71 -0
  38. package/lib/outreach_target_pack.js +60 -0
  39. package/lib/partner_intelligence.js +105 -0
  40. package/lib/phase_10_closeout_pack.js +45 -0
  41. package/lib/phase_10_completion_pack.js +76 -0
  42. package/lib/phase_10_decision_record_pack.js +54 -0
  43. package/lib/phase_10_decision_resolution_pack.js +53 -0
  44. package/lib/phase_10_demand_signal_adapters_runtime_pack.js +74 -0
  45. package/lib/phase_10_ecosystem_backlog_triage_runtime_pack.js +74 -0
  46. package/lib/phase_10_freeze_baseline_pack.js +67 -0
  47. package/lib/phase_10_freeze_review_pack.js +64 -0
  48. package/lib/phase_10_gate_pack.js +57 -0
  49. package/lib/phase_10_long_tail_continuity_pack.js +80 -0
  50. package/lib/phase_10_long_tail_ecosystem_pack.js +66 -0
  51. package/lib/phase_10_niche_extension_registry_runtime_pack.js +74 -0
  52. package/lib/phase_1_claude_mcp_pack.js +60 -0
  53. package/lib/phase_1_claude_mcp_runtime_pack.js +52 -0
  54. package/lib/phase_1_ecosystem_pack.js +67 -0
  55. package/lib/phase_1_openai_codex_pack.js +60 -0
  56. package/lib/phase_1_openai_codex_runtime_pack.js +52 -0
  57. package/lib/phase_2_base_runtime_pack.js +71 -0
  58. package/lib/phase_2_base_usdc_runtime_pack.js +72 -0
  59. package/lib/phase_2_closeout_pack.js +65 -0
  60. package/lib/phase_2_completion_pack.js +113 -0
  61. package/lib/phase_2_decision_record_pack.js +66 -0
  62. package/lib/phase_2_decision_resolution_pack.js +69 -0
  63. package/lib/phase_2_eth_runtime_pack.js +70 -0
  64. package/lib/phase_2_evm_base_runtime_pack.js +73 -0
  65. package/lib/phase_2_evm_runtime_pack.js +71 -0
  66. package/lib/phase_2_flip_preview_pack.js +60 -0
  67. package/lib/phase_2_freeze_review_pack.js +99 -0
  68. package/lib/phase_2_gate_pack.js +77 -0
  69. package/lib/phase_2_payment_rails_pack.js +71 -0
  70. package/lib/phase_2_usdc_runtime_pack.js +71 -0
  71. package/lib/phase_3_brc_runtime_pack.js +81 -0
  72. package/lib/phase_3_bsv_teranode_runtime_pack.js +83 -0
  73. package/lib/phase_3_closeout_pack.js +62 -0
  74. package/lib/phase_3_completion_pack.js +94 -0
  75. package/lib/phase_3_decision_record_pack.js +64 -0
  76. package/lib/phase_3_decision_resolution_pack.js +69 -0
  77. package/lib/phase_3_freeze_baseline_pack.js +67 -0
  78. package/lib/phase_3_freeze_review_pack.js +80 -0
  79. package/lib/phase_3_gate_pack.js +76 -0
  80. package/lib/phase_3_metanet_runtime_pack.js +81 -0
  81. package/lib/phase_3_native_bsv_pack.js +91 -0
  82. package/lib/phase_3_native_continuity_pack.js +82 -0
  83. package/lib/phase_4_attestation_runtime_pack.js +75 -0
  84. package/lib/phase_4_closeout_pack.js +45 -0
  85. package/lib/phase_4_completion_pack.js +94 -0
  86. package/lib/phase_4_decision_record_pack.js +54 -0
  87. package/lib/phase_4_decision_resolution_pack.js +45 -0
  88. package/lib/phase_4_erc8004_runtime_pack.js +76 -0
  89. package/lib/phase_4_freeze_baseline_pack.js +67 -0
  90. package/lib/phase_4_freeze_review_pack.js +68 -0
  91. package/lib/phase_4_gate_pack.js +58 -0
  92. package/lib/phase_4_identity_registry_runtime_pack.js +75 -0
  93. package/lib/phase_4_identity_trust_pack.js +73 -0
  94. package/lib/phase_4_trust_continuity_pack.js +86 -0
  95. package/lib/phase_5_antelope_runtime_pack.js +76 -0
  96. package/lib/phase_5_closeout_pack.js +44 -0
  97. package/lib/phase_5_completion_pack.js +82 -0
  98. package/lib/phase_5_decision_record_pack.js +54 -0
  99. package/lib/phase_5_decision_resolution_pack.js +45 -0
  100. package/lib/phase_5_freeze_baseline_pack.js +67 -0
  101. package/lib/phase_5_freeze_review_pack.js +68 -0
  102. package/lib/phase_5_gate_pack.js +58 -0
  103. package/lib/phase_5_major_rails_continuity_pack.js +86 -0
  104. package/lib/phase_5_major_rails_pack.js +74 -0
  105. package/lib/phase_5_proton_xpr_runtime_pack.js +76 -0
  106. package/lib/phase_5_solana_runtime_pack.js +76 -0
  107. package/lib/phase_6_autogen_runtime_pack.js +72 -0
  108. package/lib/phase_6_closeout_pack.js +46 -0
  109. package/lib/phase_6_completion_pack.js +77 -0
  110. package/lib/phase_6_decision_record_pack.js +54 -0
  111. package/lib/phase_6_decision_resolution_pack.js +53 -0
  112. package/lib/phase_6_framework_continuity_pack.js +81 -0
  113. package/lib/phase_6_framework_runtime_pack.js +68 -0
  114. package/lib/phase_6_freeze_baseline_pack.js +68 -0
  115. package/lib/phase_6_freeze_review_pack.js +65 -0
  116. package/lib/phase_6_gate_pack.js +59 -0
  117. package/lib/phase_6_langchain_runtime_pack.js +72 -0
  118. package/lib/phase_6_langgraph_runtime_pack.js +72 -0
  119. package/lib/phase_6_semantic_kernel_runtime_pack.js +72 -0
  120. package/lib/phase_7_closeout_pack.js +45 -0
  121. package/lib/phase_7_completion_pack.js +85 -0
  122. package/lib/phase_7_decision_record_pack.js +53 -0
  123. package/lib/phase_7_decision_resolution_pack.js +53 -0
  124. package/lib/phase_7_event_system_continuity_pack.js +89 -0
  125. package/lib/phase_7_event_system_pack.js +76 -0
  126. package/lib/phase_7_freeze_baseline_pack.js +74 -0
  127. package/lib/phase_7_freeze_review_pack.js +65 -0
  128. package/lib/phase_7_gate_pack.js +58 -0
  129. package/lib/phase_7_kafka_runtime_pack.js +74 -0
  130. package/lib/phase_7_mqtt_runtime_pack.js +74 -0
  131. package/lib/phase_7_nats_runtime_pack.js +74 -0
  132. package/lib/phase_7_webhook_event_bus_runtime_pack.js +74 -0
  133. package/lib/phase_8_closeout_pack.js +46 -0
  134. package/lib/phase_8_completion_pack.js +82 -0
  135. package/lib/phase_8_decision_record_pack.js +54 -0
  136. package/lib/phase_8_decision_resolution_pack.js +53 -0
  137. package/lib/phase_8_external_receipt_import_runtime_pack.js +74 -0
  138. package/lib/phase_8_external_result_import_runtime_pack.js +74 -0
  139. package/lib/phase_8_freeze_baseline_pack.js +71 -0
  140. package/lib/phase_8_freeze_review_pack.js +64 -0
  141. package/lib/phase_8_gate_pack.js +58 -0
  142. package/lib/phase_8_proof_bridge_continuity_pack.js +86 -0
  143. package/lib/phase_8_proof_bridges_pack.js +72 -0
  144. package/lib/phase_8_proof_bundle_normalization_runtime_pack.js +74 -0
  145. package/lib/phase_9_closeout_pack.js +46 -0
  146. package/lib/phase_9_completion_pack.js +82 -0
  147. package/lib/phase_9_custody_refs_runtime_pack.js +74 -0
  148. package/lib/phase_9_decision_record_pack.js +54 -0
  149. package/lib/phase_9_decision_resolution_pack.js +53 -0
  150. package/lib/phase_9_freeze_baseline_pack.js +71 -0
  151. package/lib/phase_9_freeze_review_pack.js +64 -0
  152. package/lib/phase_9_gate_pack.js +58 -0
  153. package/lib/phase_9_operator_accounting_bridges_runtime_pack.js +74 -0
  154. package/lib/phase_9_treasury_connectivity_pack.js +72 -0
  155. package/lib/phase_9_treasury_continuity_pack.js +86 -0
  156. package/lib/phase_9_treasury_destinations_runtime_pack.js +74 -0
  157. package/lib/phase_program_pack.js +120 -0
  158. package/lib/release_center.js +970 -0
  159. package/lib/release_history.js +1 -1
  160. package/lib/runtime_state_store.js +212 -27
  161. package/lib/soft_launch_pack.js +78 -0
  162. package/package.json +13 -1
  163. package/server.js +2110 -235
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+
3
+ const packageJson = require("../package.json");
4
+
5
+ function buildPhase3FreezeBaselinePack() {
6
+ return {
7
+ ok: true,
8
+ product: packageJson.name,
9
+ category: "machine-commerce-phase-3-freeze-baseline-pack",
10
+ phase_ref: "phase_3",
11
+ posture: "frozen_baseline",
12
+ baseline: {
13
+ lane_refs: [
14
+ "/v1/phases/phase-3/bsv-teranode/summary",
15
+ "/v1/phases/phase-3/metanet/summary",
16
+ "/v1/phases/phase-3/brc/summary"
17
+ ],
18
+ settlement_modes: ["bsv_teranode"],
19
+ identity_layers: ["metanet", "brc"],
20
+ baseline_status: "recorded",
21
+ frozen_outputs: [
22
+ "current native lane family is the recorded Phase 3 baseline",
23
+ "native family can now be judged against a stable shape rather than an open expansion set",
24
+ "only the final gate review remains before Phase 4"
25
+ ]
26
+ },
27
+ first_path: {
28
+ purpose: "show that the Phase 3 native lane family is now treated as a frozen baseline",
29
+ first_http_sequence: [
30
+ "/v1/phases/phase-3/summary",
31
+ "/v1/phases/phase-3/freeze-baseline/summary",
32
+ "/v1/phases/phase-3/gate/summary"
33
+ ],
34
+ first_cli_sequence: [
35
+ "xytara-release --phase-3-freeze-baseline --summary",
36
+ "xytara-release --phase-3-summary"
37
+ ],
38
+ expected_signals: [
39
+ "the native lane family is now explicitly frozen",
40
+ "lane freeze is no longer part of the remaining Phase 3 uncertainty",
41
+ "the final open work is narrowed to gate review rather than shape definition"
42
+ ]
43
+ }
44
+ };
45
+ }
46
+
47
+ function summarizePhase3FreezeBaselinePack() {
48
+ const pack = buildPhase3FreezeBaselinePack();
49
+ return {
50
+ ok: true,
51
+ product: pack.product,
52
+ category: pack.category,
53
+ phase_ref: pack.phase_ref,
54
+ lane_count: pack.baseline.lane_refs.length,
55
+ settlement_mode_count: pack.baseline.settlement_modes.length,
56
+ identity_layer_count: pack.baseline.identity_layers.length,
57
+ baseline_status: pack.baseline.baseline_status,
58
+ frozen_output_count: pack.baseline.frozen_outputs.length,
59
+ signal_count: pack.first_path.expected_signals.length,
60
+ first_http_step: pack.first_path.first_http_sequence[0] || null
61
+ };
62
+ }
63
+
64
+ module.exports = {
65
+ buildPhase3FreezeBaselinePack,
66
+ summarizePhase3FreezeBaselinePack
67
+ };
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ const packageJson = require("../package.json");
4
+
5
+ function buildPhase3FreezeReviewPack() {
6
+ return {
7
+ ok: true,
8
+ product: packageJson.name,
9
+ category: "machine-commerce-phase-3-freeze-review-pack",
10
+ phase_ref: "phase_3",
11
+ posture: "freeze_review",
12
+ current_shape: {
13
+ lane_refs: [
14
+ "/v1/phases/phase-3/bsv-teranode/summary",
15
+ "/v1/phases/phase-3/metanet/summary",
16
+ "/v1/phases/phase-3/brc/summary"
17
+ ],
18
+ settlement_modes: ["bsv_teranode"],
19
+ identity_layers: ["metanet", "brc"]
20
+ },
21
+ freeze_review: {
22
+ decision_posture: "gate_review_recorded",
23
+ review_questions: [
24
+ "Is the current native lane split the exact shape we want to preserve for Phase 3?",
25
+ "Do settlement and identity lanes communicate the native family clearly without overlap confusion?",
26
+ "Is the current operator and native coverage sufficient before opening the next phase?",
27
+ "Would adding more native sub-lanes materially improve Phase 3, or just create sprawl?"
28
+ ],
29
+ resolution_criteria: [
30
+ { ref: "criterion.freeze_review_surface_public", label: "Freeze-review surface is public and inspectable", satisfied: true },
31
+ { ref: "criterion.blockers_explicit", label: "Current blockers are explicit and bounded", satisfied: true },
32
+ { ref: "criterion.freeze_decision_recorded", label: "Final native lane freeze has been explicitly recorded", satisfied: true },
33
+ { ref: "criterion.gate_review_recorded", label: "Next-phase gate review has been explicitly recorded", satisfied: true }
34
+ ],
35
+ blockers: [],
36
+ freeze_outputs: [
37
+ "freeze decision recorded",
38
+ "ready_for_next_phase flipped deliberately",
39
+ "Phase 3 native shape treated as stable baseline going forward"
40
+ ]
41
+ },
42
+ first_path: {
43
+ purpose: "review the last open questions before freezing the native Phase 3 lane family",
44
+ first_http_sequence: [
45
+ "/v1/phases/phase-3/completion/summary",
46
+ "/v1/phases/phase-3/freeze-review/summary",
47
+ "/v1/release-center/summary"
48
+ ],
49
+ first_cli_sequence: [
50
+ "xytara-release --phase-3-freeze-review --summary",
51
+ "xytara-release --phase-3-completion --summary"
52
+ ]
53
+ }
54
+ };
55
+ }
56
+
57
+ function summarizePhase3FreezeReviewPack() {
58
+ const pack = buildPhase3FreezeReviewPack();
59
+ return {
60
+ ok: true,
61
+ product: pack.product,
62
+ category: pack.category,
63
+ phase_ref: pack.phase_ref,
64
+ lane_count: pack.current_shape.lane_refs.length,
65
+ settlement_mode_count: pack.current_shape.settlement_modes.length,
66
+ identity_layer_count: pack.current_shape.identity_layers.length,
67
+ review_question_count: pack.freeze_review.review_questions.length,
68
+ resolution_criteria_count: pack.freeze_review.resolution_criteria.length,
69
+ satisfied_resolution_count: pack.freeze_review.resolution_criteria.filter((criterion) => criterion.satisfied === true).length,
70
+ unsatisfied_resolution_count: pack.freeze_review.resolution_criteria.filter((criterion) => criterion.satisfied !== true).length,
71
+ blocker_count: pack.freeze_review.blockers.length,
72
+ freeze_output_count: pack.freeze_review.freeze_outputs.length,
73
+ decision_posture: pack.freeze_review.decision_posture
74
+ };
75
+ }
76
+
77
+ module.exports = {
78
+ buildPhase3FreezeReviewPack,
79
+ summarizePhase3FreezeReviewPack
80
+ };
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+
3
+ const packageJson = require("../package.json");
4
+ const { summarizePhase3CompletionPack } = require("./phase_3_completion_pack");
5
+ const { summarizePhase3FreezeReviewPack } = require("./phase_3_freeze_review_pack");
6
+
7
+ function buildPhase3GatePack() {
8
+ const completion = summarizePhase3CompletionPack();
9
+ const freezeReview = summarizePhase3FreezeReviewPack();
10
+ const unsatisfiedGateCount =
11
+ completion.unsatisfied_criteria_count +
12
+ freezeReview.unsatisfied_resolution_count;
13
+
14
+ return {
15
+ ok: true,
16
+ product: packageJson.name,
17
+ category: "machine-commerce-phase-3-gate-pack",
18
+ phase_ref: "phase_3",
19
+ posture: "phase_gate",
20
+ gate: {
21
+ decision: unsatisfiedGateCount === 0 ? "ready_for_phase_4" : "hold_phase_3",
22
+ ready_for_next_phase: unsatisfiedGateCount === 0,
23
+ satisfied_gate_count:
24
+ completion.satisfied_criteria_count +
25
+ freezeReview.satisfied_resolution_count,
26
+ unsatisfied_gate_count: unsatisfiedGateCount,
27
+ blockers: unsatisfiedGateCount === 0 ? [] : [
28
+ "next-phase gate review has not been explicitly recorded"
29
+ ],
30
+ advance_when: [
31
+ "freeze decision is explicitly recorded",
32
+ "gate review is explicitly recorded",
33
+ "completion and freeze-review surfaces both show no unsatisfied gate criteria"
34
+ ]
35
+ },
36
+ sources: {
37
+ completion_summary: "/v1/phases/phase-3/completion/summary",
38
+ freeze_review_summary: "/v1/phases/phase-3/freeze-review/summary",
39
+ release_center_summary: "/v1/release-center/summary"
40
+ },
41
+ first_path: {
42
+ purpose: "decide whether Phase 3 can be deliberately closed and Phase 4 can open",
43
+ first_http_sequence: [
44
+ "/v1/phases/phase-3/completion/summary",
45
+ "/v1/phases/phase-3/freeze-review/summary",
46
+ "/v1/phases/phase-3/gate/summary"
47
+ ],
48
+ first_cli_sequence: [
49
+ "xytara-release --phase-3-gate --summary",
50
+ "xytara-release --phase-3-completion --summary",
51
+ "xytara-release --phase-3-freeze-review --summary"
52
+ ]
53
+ }
54
+ };
55
+ }
56
+
57
+ function summarizePhase3GatePack() {
58
+ const pack = buildPhase3GatePack();
59
+ return {
60
+ ok: true,
61
+ product: pack.product,
62
+ category: pack.category,
63
+ phase_ref: pack.phase_ref,
64
+ satisfied_gate_count: pack.gate.satisfied_gate_count,
65
+ unsatisfied_gate_count: pack.gate.unsatisfied_gate_count,
66
+ blocker_count: pack.gate.blockers.length,
67
+ advance_when_count: pack.gate.advance_when.length,
68
+ decision: pack.gate.decision,
69
+ ready_for_next_phase: pack.gate.ready_for_next_phase
70
+ };
71
+ }
72
+
73
+ module.exports = {
74
+ buildPhase3GatePack,
75
+ summarizePhase3GatePack
76
+ };
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+
3
+ const packageJson = require("../package.json");
4
+
5
+ function buildPhase3MetanetRuntimePack() {
6
+ return {
7
+ ok: true,
8
+ product: packageJson.name,
9
+ category: "machine-commerce-phase-3-metanet-runtime-pack",
10
+ phase_ref: "phase_3",
11
+ ecosystem_refs: ["metanet"],
12
+ posture: "runtime_path",
13
+ identity_shape: {
14
+ rail_family: "bsv_native_identity",
15
+ identity_layers: ["metanet"],
16
+ graph_modes: ["node_linkage", "path_carry", "subject_continuity"],
17
+ continuity_artifacts: ["subject_ref", "metanet_path", "handoff_ref"],
18
+ continuity_refs: [
19
+ "/v1/phases/phase-3/native-continuity/summary",
20
+ "/v1/phases/phase-3/bsv-teranode/summary",
21
+ "/v1/phases/phase-3/brc/summary"
22
+ ],
23
+ operator_surfaces: [
24
+ "/v1/release-center/summary",
25
+ "/v1/publish-plan/summary",
26
+ "/v1/phases/phase-3/summary"
27
+ ]
28
+ },
29
+ completion_shape: {
30
+ completion_checks: [
31
+ "the Metanet runtime lane is public and inspectable",
32
+ "native identity-layer posture stays attached to the runtime lane",
33
+ "operator surfaces remain available for native identity review",
34
+ "Phase 3 shows native identity expansion beyond settlement-only work"
35
+ ]
36
+ },
37
+ first_path: {
38
+ purpose: "show the native Metanet runtime lane for BSV-linked identity and continuity",
39
+ first_http_sequence: [
40
+ "/v1/phases/phase-3/summary",
41
+ "/v1/release-center/summary",
42
+ "/v1/publish-plan/summary"
43
+ ],
44
+ first_cli_sequence: [
45
+ "xytara-release --phase-3-metanet-runtime --summary",
46
+ "xytara-release --phase-3 --summary"
47
+ ],
48
+ expected_signals: [
49
+ "Metanet is visible as a first-class native runtime lane",
50
+ "native identity continuity is inspectable from a stable route",
51
+ "Phase 3 broadens beyond settlement into native graph-linked posture"
52
+ ]
53
+ }
54
+ };
55
+ }
56
+
57
+ function summarizePhase3MetanetRuntimePack() {
58
+ const pack = buildPhase3MetanetRuntimePack();
59
+ return {
60
+ ok: true,
61
+ product: pack.product,
62
+ category: pack.category,
63
+ phase_ref: pack.phase_ref,
64
+ ecosystem_count: pack.ecosystem_refs.length,
65
+ identity_layer_count: pack.identity_shape.identity_layers.length,
66
+ graph_mode_count: pack.identity_shape.graph_modes.length,
67
+ continuity_artifact_count: pack.identity_shape.continuity_artifacts.length,
68
+ continuity_ref_count: pack.identity_shape.continuity_refs.length,
69
+ completion_check_count: pack.completion_shape.completion_checks.length,
70
+ http_step_count: pack.first_path.first_http_sequence.length,
71
+ cli_step_count: pack.first_path.first_cli_sequence.length,
72
+ signal_count: pack.first_path.expected_signals.length,
73
+ operator_surface_count: pack.identity_shape.operator_surfaces.length,
74
+ first_http_step: pack.first_path.first_http_sequence[0] || null
75
+ };
76
+ }
77
+
78
+ module.exports = {
79
+ buildPhase3MetanetRuntimePack,
80
+ summarizePhase3MetanetRuntimePack
81
+ };
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ const packageJson = require("../package.json");
4
+
5
+ function buildPhase3NativeBsvPack() {
6
+ return {
7
+ ok: true,
8
+ product: packageJson.name,
9
+ category: "machine-commerce-phase-3-native-bsv-pack",
10
+ phase_ref: "phase_3",
11
+ status: "active",
12
+ ecosystems: ["bsv", "teranode", "metanet", "brc"],
13
+ lane_refs: [
14
+ "/v1/phases/phase-3/bsv-teranode/summary",
15
+ "/v1/phases/phase-3/metanet/summary",
16
+ "/v1/phases/phase-3/brc/summary"
17
+ ],
18
+ continuity_refs: [
19
+ "/v1/phases/phase-3/native-continuity/summary"
20
+ ],
21
+ native_shape: {
22
+ rail_family: "bsv_native",
23
+ settlement_modes: ["bsv_teranode"],
24
+ identity_layers: ["metanet", "brc"],
25
+ native_depth: {
26
+ submission_modes: ["signed_submit", "operator_replay"],
27
+ finality_stages: ["accepted", "observed", "settled"],
28
+ graph_modes: ["node_linkage", "path_carry", "subject_continuity"],
29
+ registry_modes: ["record_linkage", "attestation_lookup", "subject_resolution"]
30
+ },
31
+ lane_coverage: {
32
+ settlement_lane_refs: ["/v1/phases/phase-3/bsv-teranode/summary"],
33
+ identity_lane_refs: [
34
+ "/v1/phases/phase-3/metanet/summary",
35
+ "/v1/phases/phase-3/brc/summary"
36
+ ]
37
+ },
38
+ operator_surfaces: [
39
+ "/v1/integrations/settlement-modes",
40
+ "/v1/release-center/summary",
41
+ "/v1/publish-plan/summary"
42
+ ]
43
+ },
44
+ completion_shape: {
45
+ completion_checks: [
46
+ "broad native BSV phase pack is public and inspectable",
47
+ "BSV plus Teranode, Metanet, and BRC runtime lanes are public and inspectable",
48
+ "native identity expansion is visible alongside native settlement work",
49
+ "native settlement and operator surfaces stay attached to the Phase 3 rail family",
50
+ "release-center summary reflects Phase 3 activation and the first native runtime lane"
51
+ ]
52
+ },
53
+ goal: "fully solidify the native differentiated BSV-centered rail family as the next active program slice",
54
+ done_means: [
55
+ "Phase 2 is no longer the active program slice",
56
+ "native BSV work has a public runtime-facing entry path",
57
+ "BSV, Teranode, Metanet, and BRC are visible as an explicit Phase 3 lane family",
58
+ "the first native lane family feels operational rather than like a placeholder"
59
+ ]
60
+ };
61
+ }
62
+
63
+ function summarizePhase3NativeBsvPack() {
64
+ const pack = buildPhase3NativeBsvPack();
65
+ return {
66
+ ok: true,
67
+ product: pack.product,
68
+ category: pack.category,
69
+ phase_ref: pack.phase_ref,
70
+ ecosystem_count: pack.ecosystems.length,
71
+ lane_count: pack.lane_refs.length,
72
+ continuity_ref_count: pack.continuity_refs.length,
73
+ settlement_mode_count: pack.native_shape.settlement_modes.length,
74
+ identity_layer_count: pack.native_shape.identity_layers.length,
75
+ submission_mode_count: pack.native_shape.native_depth.submission_modes.length,
76
+ finality_stage_count: pack.native_shape.native_depth.finality_stages.length,
77
+ graph_mode_count: pack.native_shape.native_depth.graph_modes.length,
78
+ registry_mode_count: pack.native_shape.native_depth.registry_modes.length,
79
+ settlement_lane_count: pack.native_shape.lane_coverage.settlement_lane_refs.length,
80
+ identity_lane_count: pack.native_shape.lane_coverage.identity_lane_refs.length,
81
+ operator_surface_count: pack.native_shape.operator_surfaces.length,
82
+ completion_check_count: pack.completion_shape.completion_checks.length,
83
+ done_mean_count: pack.done_means.length,
84
+ first_ecosystem: pack.ecosystems[0] || null
85
+ };
86
+ }
87
+
88
+ module.exports = {
89
+ buildPhase3NativeBsvPack,
90
+ summarizePhase3NativeBsvPack
91
+ };
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ const packageJson = require("../package.json");
4
+
5
+ function buildPhase3NativeContinuityPack() {
6
+ return {
7
+ ok: true,
8
+ product: packageJson.name,
9
+ category: "machine-commerce-phase-3-native-continuity-pack",
10
+ phase_ref: "phase_3",
11
+ posture: "native_family_continuity",
12
+ lane_refs: [
13
+ "/v1/phases/phase-3/bsv-teranode/summary",
14
+ "/v1/phases/phase-3/metanet/summary",
15
+ "/v1/phases/phase-3/brc/summary"
16
+ ],
17
+ continuity_shape: {
18
+ rail_family: "bsv_native",
19
+ settlement_lane_refs: ["/v1/phases/phase-3/bsv-teranode/summary"],
20
+ identity_lane_refs: [
21
+ "/v1/phases/phase-3/metanet/summary",
22
+ "/v1/phases/phase-3/brc/summary"
23
+ ],
24
+ continuity_surfaces: [
25
+ "/v1/release-center/summary",
26
+ "/v1/integrations/settlement-modes",
27
+ "/v1/publish-plan/summary"
28
+ ]
29
+ },
30
+ completion_shape: {
31
+ completion_checks: [
32
+ "the native continuity family is public and inspectable",
33
+ "settlement and identity-native lanes remain attached to one Phase 3 family",
34
+ "Metanet and BRC stay legible as identity-continuity extensions of the BSV-native rail family",
35
+ "operator-facing native continuity review remains available from stable public routes"
36
+ ]
37
+ },
38
+ first_path: {
39
+ purpose: "show the native BSV family as one continuity path spanning settlement and identity-linked carry",
40
+ first_http_sequence: [
41
+ "/v1/phases/phase-3/summary",
42
+ "/v1/phases/phase-3/bsv-teranode/summary",
43
+ "/v1/phases/phase-3/metanet/summary",
44
+ "/v1/phases/phase-3/brc/summary"
45
+ ],
46
+ first_cli_sequence: [
47
+ "xytara-release --phase-3-native-continuity --summary",
48
+ "xytara-release --phase-3 --summary"
49
+ ],
50
+ expected_signals: [
51
+ "Phase 3 reads as one BSV-native family rather than disconnected lanes",
52
+ "native settlement and native identity expansion stay visibly linked",
53
+ "operators can inspect one continuity posture before drilling into lane-specific details",
54
+ "the differentiated native rail family feels more operational and coherent"
55
+ ]
56
+ }
57
+ };
58
+ }
59
+
60
+ function summarizePhase3NativeContinuityPack() {
61
+ const pack = buildPhase3NativeContinuityPack();
62
+ return {
63
+ ok: true,
64
+ product: pack.product,
65
+ category: pack.category,
66
+ phase_ref: pack.phase_ref,
67
+ lane_count: pack.lane_refs.length,
68
+ settlement_lane_count: pack.continuity_shape.settlement_lane_refs.length,
69
+ identity_lane_count: pack.continuity_shape.identity_lane_refs.length,
70
+ continuity_surface_count: pack.continuity_shape.continuity_surfaces.length,
71
+ completion_check_count: pack.completion_shape.completion_checks.length,
72
+ http_step_count: pack.first_path.first_http_sequence.length,
73
+ cli_step_count: pack.first_path.first_cli_sequence.length,
74
+ signal_count: pack.first_path.expected_signals.length,
75
+ first_http_step: pack.first_path.first_http_sequence[0] || null
76
+ };
77
+ }
78
+
79
+ module.exports = {
80
+ buildPhase3NativeContinuityPack,
81
+ summarizePhase3NativeContinuityPack
82
+ };
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ const packageJson = require("../package.json");
4
+
5
+ function buildPhase4AttestationRuntimePack() {
6
+ return {
7
+ ok: true,
8
+ product: packageJson.name,
9
+ category: "machine-commerce-phase-4-attestation-runtime-pack",
10
+ phase_ref: "phase_4",
11
+ ecosystem_ref: "attestation",
12
+ status: "active",
13
+ trust_shape: {
14
+ identity_layers: ["attestation"],
15
+ attestation_modes: ["subject_attestation", "attester_resolution", "review_carry"],
16
+ review_modes: ["subject_attestation", "attester_resolution", "review_carry"],
17
+ trust_artifacts: ["attestation_ref", "attester_ref", "review_ref"],
18
+ operator_surfaces: [
19
+ "/v1/release-center/summary",
20
+ "/v1/publish-plan/summary",
21
+ "/v1/phases/phase-4/summary"
22
+ ]
23
+ },
24
+ first_steps: {
25
+ http: [
26
+ "/v1/phases/phase-4/summary",
27
+ "/v1/phases/phase-4/attestation/summary",
28
+ "/v1/release-center/summary"
29
+ ],
30
+ cli: [
31
+ "xytara-release --phase-4 --summary",
32
+ "xytara-release --phase-4-attestation-runtime --summary"
33
+ ]
34
+ },
35
+ success_signals: [
36
+ "attestation lane is public and inspectable",
37
+ "attester resolution and review carry are visible",
38
+ "trust artifacts stay explicit at lane level"
39
+ ],
40
+ completion_shape: {
41
+ completion_checks: [
42
+ "attestation runtime lane is public and inspectable",
43
+ "attestation and attester resolution modes are visible",
44
+ "trust artifacts are explicit at lane level",
45
+ "operator surfaces stay attached to the lane"
46
+ ]
47
+ }
48
+ };
49
+ }
50
+
51
+ function summarizePhase4AttestationRuntimePack() {
52
+ const pack = buildPhase4AttestationRuntimePack();
53
+ return {
54
+ ok: true,
55
+ product: pack.product,
56
+ category: pack.category,
57
+ phase_ref: pack.phase_ref,
58
+ ecosystem_count: pack.trust_shape.identity_layers.length,
59
+ identity_layer_count: pack.trust_shape.identity_layers.length,
60
+ attestation_mode_count: pack.trust_shape.attestation_modes.length,
61
+ review_mode_count: pack.trust_shape.review_modes.length,
62
+ trust_artifact_count: pack.trust_shape.trust_artifacts.length,
63
+ completion_check_count: pack.completion_shape.completion_checks.length,
64
+ http_step_count: pack.first_steps.http.length,
65
+ cli_step_count: pack.first_steps.cli.length,
66
+ signal_count: pack.success_signals.length,
67
+ operator_surface_count: pack.trust_shape.operator_surfaces.length,
68
+ first_http_step: pack.first_steps.http[0] || null
69
+ };
70
+ }
71
+
72
+ module.exports = {
73
+ buildPhase4AttestationRuntimePack,
74
+ summarizePhase4AttestationRuntimePack
75
+ };
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ const packageJson = require("../package.json");
4
+
5
+ function buildPhase4CloseoutPack() {
6
+ return {
7
+ ok: true,
8
+ product: packageJson.name,
9
+ category: "machine-commerce-phase-4-closeout-pack",
10
+ phase_ref: "phase_4",
11
+ posture: "phase_closeout",
12
+ current_decision: "ready_for_phase_5",
13
+ blocking_actions: [],
14
+ action_steps: [
15
+ "confirm the current trust lane family remains the recorded Phase 4 baseline",
16
+ "confirm the gate review is recorded",
17
+ "recheck phase-4 gate summary for zero unsatisfied conditions",
18
+ "advance to Phase 5 only after the gate is explicitly ready"
19
+ ],
20
+ completion_signals: [
21
+ "freeze baseline is recorded",
22
+ "gate review is recorded",
23
+ "phase-4 gate resolves to ready_for_phase_5"
24
+ ]
25
+ };
26
+ }
27
+
28
+ function summarizePhase4CloseoutPack() {
29
+ const pack = buildPhase4CloseoutPack();
30
+ return {
31
+ ok: true,
32
+ product: pack.product,
33
+ category: pack.category,
34
+ phase_ref: pack.phase_ref,
35
+ blocking_action_count: pack.blocking_actions.length,
36
+ action_step_count: pack.action_steps.length,
37
+ completion_signal_count: pack.completion_signals.length,
38
+ current_decision: pack.current_decision
39
+ };
40
+ }
41
+
42
+ module.exports = {
43
+ buildPhase4CloseoutPack,
44
+ summarizePhase4CloseoutPack
45
+ };