xoonya 3.0.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (246) hide show
  1. package/.env.example +2 -2
  2. package/CARRIED_HANDOFF_DEMO.md +60 -60
  3. package/COMPATIBILITY_NOTE.md +27 -27
  4. package/CROSS_RUNTIME_POSTURE.md +77 -77
  5. package/EXAMPLE_PATHS.md +53 -53
  6. package/FINAL_CONTRACT.md +445 -445
  7. package/LICENSE +201 -201
  8. package/NOTICE +3 -3
  9. package/OPERATIONS_RUNBOOK.md +50 -0
  10. package/OPERATOR_START_HERE.md +67 -0
  11. package/PARTNER_READY_PATH.md +67 -67
  12. package/PROGRAM_COMPLETE_RELEASE.md +52 -0
  13. package/PROGRAM_STATUS.md +57 -0
  14. package/PUBLIC_DEMO_SCRIPT.md +79 -79
  15. package/PUBLISH_PLAN.md +25 -0
  16. package/README.md +807 -732
  17. package/RELEASE_CHECKLIST.md +16 -0
  18. package/RELEASE_NOTES.md +15 -15
  19. package/SERVICE_CONTRACT.md +207 -195
  20. package/START_HERE.md +159 -150
  21. package/TERMINOLOGY.md +55 -55
  22. package/WHY_XYTARA_XOONYA.md +43 -43
  23. package/XNYA_CONFORMANCE_MARK.md +78 -78
  24. package/XNYA_REFERENCE_IMPLEMENTATIONS.md +157 -157
  25. package/XOONYA_DEFAULT_PATH_MODEL.md +63 -63
  26. package/XOONYA_FOLLOWTHROUGH_TRUTH_MODEL.md +63 -63
  27. package/XOONYA_NATIVE_ATOM_SPEC.md +184 -184
  28. package/XOONYA_NATIVE_PROOF_FORMAT.md +527 -527
  29. package/XOONYA_NATIVE_STANDARD_GOVERNANCE.md +119 -119
  30. package/XOONYA_PROOF_TRUTH_MODEL.md +58 -58
  31. package/bin/xoonya-first-run.js +184 -184
  32. package/bin/xoonya-release.js +1367 -1367
  33. package/bin/xoonya-review.js +70 -70
  34. package/bin/xoonya.js +82 -82
  35. package/examples/integration_boundary_walkthrough.js +37 -37
  36. package/examples/package_quickstart.js +1007 -1007
  37. package/examples/partner_proof_walkthrough.js +68 -68
  38. package/examples/proof_review_walkthrough.js +66 -66
  39. package/examples/review_carried_handoff.js +72 -72
  40. package/index.js +31 -22
  41. package/integrations/PROOF_INTEGRATION_PROCESS.md +45 -45
  42. package/integrations/examples/example-third-party-verifier-registration.record.json +22 -22
  43. package/integrations/registration-record.schema.json +99 -99
  44. package/integrations/registry-snapshot.schema.json +36 -36
  45. package/integrations/registry.js +636 -636
  46. package/integrations/views.js +36 -36
  47. package/lib/adapter_certification_contract.js +90 -0
  48. package/lib/announcement_pack.js +61 -61
  49. package/lib/artifact_distribution_lane_contract.js +54 -54
  50. package/lib/asyncapi_contract.js +135 -135
  51. package/lib/auth_interop_contract.js +69 -69
  52. package/lib/authority_binding_lifecycle_contract.js +182 -0
  53. package/lib/bridge_intelligence.js +102 -102
  54. package/lib/cloudevents_contract.js +79 -79
  55. package/lib/crypto_agility_matrix.js +125 -0
  56. package/lib/default_path_contract.js +380 -380
  57. package/lib/ecosystem_entry.js +64 -64
  58. package/lib/erc8004_proof_lane_contract.js +64 -64
  59. package/lib/event_system_lane_contract.js +76 -76
  60. package/lib/external_proof_import_lane_contract.js +87 -87
  61. package/lib/feature_control_lane_contract.js +54 -54
  62. package/lib/followthrough_truth_contract.js +214 -214
  63. package/lib/framework_lane_contract.js +76 -76
  64. package/lib/governance_disputes_summary.js +36 -36
  65. package/lib/governance_intelligence.js +108 -108
  66. package/lib/identity_interop_contract.js +83 -83
  67. package/lib/integration_matrix_contract.js +81 -81
  68. package/lib/launch_narrative.js +53 -53
  69. package/lib/machine_identity_registry_contract.js +199 -0
  70. package/lib/major_rails_proof_lane_contract.js +87 -87
  71. package/lib/offline_verifiability_recovery_contract.js +155 -0
  72. package/lib/openapi_contract.js +227 -227
  73. package/lib/operational_receipt_contract.js +165 -0
  74. package/lib/outreach_proof.js +71 -71
  75. package/lib/phase_10_closeout_pack.js +45 -45
  76. package/lib/phase_10_completion_pack.js +76 -76
  77. package/lib/phase_10_decision_record_pack.js +54 -54
  78. package/lib/phase_10_decision_resolution_pack.js +53 -53
  79. package/lib/phase_10_demand_signal_adapters_proof_pack.js +74 -74
  80. package/lib/phase_10_ecosystem_backlog_triage_proof_pack.js +74 -74
  81. package/lib/phase_10_freeze_baseline_pack.js +67 -67
  82. package/lib/phase_10_freeze_review_pack.js +64 -64
  83. package/lib/phase_10_gate_pack.js +57 -57
  84. package/lib/phase_10_long_tail_continuity_pack.js +80 -80
  85. package/lib/phase_10_long_tail_ecosystem_pack.js +68 -68
  86. package/lib/phase_10_niche_extension_registry_proof_pack.js +74 -74
  87. package/lib/phase_1_claude_mcp_pack.js +60 -60
  88. package/lib/phase_1_claude_mcp_proof_pack.js +57 -57
  89. package/lib/phase_1_ecosystem_pack.js +51 -51
  90. package/lib/phase_1_openai_codex_pack.js +60 -60
  91. package/lib/phase_1_openai_codex_proof_pack.js +57 -57
  92. package/lib/phase_2_base_proof_pack.js +71 -71
  93. package/lib/phase_2_base_usdc_proof_pack.js +72 -72
  94. package/lib/phase_2_closeout_pack.js +65 -65
  95. package/lib/phase_2_completion_pack.js +113 -113
  96. package/lib/phase_2_decision_record_pack.js +66 -66
  97. package/lib/phase_2_decision_resolution_pack.js +69 -69
  98. package/lib/phase_2_eth_proof_pack.js +70 -70
  99. package/lib/phase_2_evm_base_proof_pack.js +73 -73
  100. package/lib/phase_2_evm_proof_pack.js +71 -71
  101. package/lib/phase_2_flip_preview_pack.js +60 -60
  102. package/lib/phase_2_freeze_review_pack.js +99 -99
  103. package/lib/phase_2_gate_pack.js +77 -77
  104. package/lib/phase_2_payment_rails_pack.js +71 -71
  105. package/lib/phase_2_usdc_proof_pack.js +71 -71
  106. package/lib/phase_3_brc_proof_pack.js +81 -81
  107. package/lib/phase_3_bsv_teranode_proof_pack.js +81 -81
  108. package/lib/phase_3_closeout_pack.js +62 -62
  109. package/lib/phase_3_completion_pack.js +92 -92
  110. package/lib/phase_3_decision_record_pack.js +64 -64
  111. package/lib/phase_3_decision_resolution_pack.js +69 -69
  112. package/lib/phase_3_freeze_baseline_pack.js +67 -67
  113. package/lib/phase_3_freeze_review_pack.js +80 -80
  114. package/lib/phase_3_gate_pack.js +76 -76
  115. package/lib/phase_3_metanet_proof_pack.js +81 -81
  116. package/lib/phase_3_native_bsv_pack.js +89 -89
  117. package/lib/phase_3_native_continuity_pack.js +82 -82
  118. package/lib/phase_4_attestation_proof_pack.js +75 -75
  119. package/lib/phase_4_closeout_pack.js +45 -45
  120. package/lib/phase_4_completion_pack.js +82 -82
  121. package/lib/phase_4_decision_record_pack.js +54 -54
  122. package/lib/phase_4_decision_resolution_pack.js +45 -45
  123. package/lib/phase_4_erc8004_proof_pack.js +76 -76
  124. package/lib/phase_4_freeze_baseline_pack.js +67 -67
  125. package/lib/phase_4_freeze_review_pack.js +68 -68
  126. package/lib/phase_4_gate_pack.js +58 -58
  127. package/lib/phase_4_identity_registry_proof_pack.js +75 -75
  128. package/lib/phase_4_identity_trust_pack.js +73 -73
  129. package/lib/phase_4_trust_continuity_pack.js +86 -86
  130. package/lib/phase_5_antelope_proof_pack.js +76 -76
  131. package/lib/phase_5_closeout_pack.js +44 -44
  132. package/lib/phase_5_completion_pack.js +82 -82
  133. package/lib/phase_5_decision_record_pack.js +54 -54
  134. package/lib/phase_5_decision_resolution_pack.js +45 -45
  135. package/lib/phase_5_freeze_baseline_pack.js +67 -67
  136. package/lib/phase_5_freeze_review_pack.js +68 -68
  137. package/lib/phase_5_gate_pack.js +58 -58
  138. package/lib/phase_5_major_rails_continuity_pack.js +86 -86
  139. package/lib/phase_5_major_rails_pack.js +74 -74
  140. package/lib/phase_5_proton_xpr_proof_pack.js +76 -76
  141. package/lib/phase_5_solana_proof_pack.js +76 -76
  142. package/lib/phase_6_autogen_proof_pack.js +74 -74
  143. package/lib/phase_6_closeout_pack.js +46 -46
  144. package/lib/phase_6_completion_pack.js +77 -77
  145. package/lib/phase_6_decision_record_pack.js +54 -54
  146. package/lib/phase_6_decision_resolution_pack.js +53 -53
  147. package/lib/phase_6_framework_continuity_pack.js +81 -81
  148. package/lib/phase_6_framework_runtime_pack.js +68 -68
  149. package/lib/phase_6_freeze_baseline_pack.js +68 -68
  150. package/lib/phase_6_freeze_review_pack.js +65 -65
  151. package/lib/phase_6_gate_pack.js +59 -59
  152. package/lib/phase_6_langchain_proof_pack.js +74 -74
  153. package/lib/phase_6_langgraph_proof_pack.js +74 -74
  154. package/lib/phase_6_semantic_kernel_proof_pack.js +74 -74
  155. package/lib/phase_7_closeout_pack.js +45 -45
  156. package/lib/phase_7_completion_pack.js +85 -85
  157. package/lib/phase_7_decision_record_pack.js +53 -53
  158. package/lib/phase_7_decision_resolution_pack.js +53 -53
  159. package/lib/phase_7_event_system_continuity_pack.js +89 -89
  160. package/lib/phase_7_event_system_pack.js +76 -76
  161. package/lib/phase_7_freeze_baseline_pack.js +74 -74
  162. package/lib/phase_7_freeze_review_pack.js +65 -65
  163. package/lib/phase_7_gate_pack.js +58 -58
  164. package/lib/phase_7_kafka_proof_pack.js +76 -76
  165. package/lib/phase_7_mqtt_proof_pack.js +76 -76
  166. package/lib/phase_7_nats_proof_pack.js +76 -76
  167. package/lib/phase_7_webhook_event_bus_proof_pack.js +76 -76
  168. package/lib/phase_8_closeout_pack.js +46 -46
  169. package/lib/phase_8_completion_pack.js +82 -82
  170. package/lib/phase_8_decision_record_pack.js +54 -54
  171. package/lib/phase_8_decision_resolution_pack.js +53 -53
  172. package/lib/phase_8_external_receipt_import_proof_pack.js +74 -74
  173. package/lib/phase_8_external_result_import_proof_pack.js +74 -74
  174. package/lib/phase_8_freeze_baseline_pack.js +71 -71
  175. package/lib/phase_8_freeze_review_pack.js +64 -64
  176. package/lib/phase_8_gate_pack.js +58 -58
  177. package/lib/phase_8_proof_bridge_continuity_pack.js +86 -86
  178. package/lib/phase_8_proof_bridges_pack.js +72 -72
  179. package/lib/phase_8_proof_bundle_normalization_proof_pack.js +74 -74
  180. package/lib/phase_9_closeout_pack.js +46 -46
  181. package/lib/phase_9_completion_pack.js +82 -82
  182. package/lib/phase_9_custody_refs_proof_pack.js +74 -74
  183. package/lib/phase_9_decision_record_pack.js +54 -54
  184. package/lib/phase_9_decision_resolution_pack.js +53 -53
  185. package/lib/phase_9_freeze_baseline_pack.js +71 -71
  186. package/lib/phase_9_freeze_review_pack.js +64 -64
  187. package/lib/phase_9_gate_pack.js +58 -58
  188. package/lib/phase_9_operator_accounting_bridges_proof_pack.js +74 -74
  189. package/lib/phase_9_treasury_connectivity_pack.js +72 -72
  190. package/lib/phase_9_treasury_continuity_pack.js +86 -86
  191. package/lib/phase_9_treasury_destinations_proof_pack.js +74 -74
  192. package/lib/phase_program_pack.js +47 -47
  193. package/lib/proof_bridge_lane_contract.js +82 -82
  194. package/lib/proof_truth_contract.js +224 -224
  195. package/lib/provenance_lane_contract.js +54 -54
  196. package/lib/provider_lane_contract.js +67 -67
  197. package/lib/public_surface_policy_contract.js +111 -0
  198. package/lib/publish_plan.js +51 -51
  199. package/lib/release_candidate.js +50 -50
  200. package/lib/release_center.js +1037 -1037
  201. package/lib/release_history.js +206 -206
  202. package/lib/release_manifest.js +114 -114
  203. package/lib/release_pack.js +391 -391
  204. package/lib/result_package_trust_lane_contract.js +74 -74
  205. package/lib/review_intelligence.js +100 -100
  206. package/lib/role_freeze.js +436 -436
  207. package/lib/shared_signals_lane_contract.js +54 -54
  208. package/lib/signed_audit_provenance_contract.js +93 -0
  209. package/lib/telemetry_lane_contract.js +54 -54
  210. package/lib/treasury_proof_lane_contract.js +83 -83
  211. package/lib/trust_intelligence.js +106 -106
  212. package/lib/trust_portability_boundary_contract.js +66 -0
  213. package/lib/trust_portability_pack.js +224 -224
  214. package/lib/verification_service_pack.js +149 -149
  215. package/package.json +97 -95
  216. package/proof_sdk.js +6265 -6265
  217. package/reference/python/README.md +35 -35
  218. package/reference/python/requirements-optional.txt +1 -1
  219. package/reference/python/verify_vectors.py +223 -223
  220. package/reference/python/xnya_reference.py +810 -810
  221. package/reference/rust/Cargo.toml +11 -11
  222. package/reference/rust/README.md +28 -28
  223. package/reference/rust/src/lib.rs +87 -87
  224. package/scripts/registry_cli.js +157 -157
  225. package/scripts/verify_all.js +603 -603
  226. package/scripts/verify_control_plane_contracts.js +34 -0
  227. package/scripts/verify_control_plane_routes.js +70 -0
  228. package/scripts/verify_examples.js +19 -19
  229. package/scripts/verify_external_proof_import_gate.js +84 -84
  230. package/scripts/verify_integrations.js +170 -170
  231. package/scripts/verify_native_hybrid_design_gate.js +114 -114
  232. package/scripts/verify_reference_promotion_gate.js +74 -74
  233. package/scripts/verify_reference_python.js +49 -49
  234. package/scripts/verify_reference_python_crypto.js +87 -87
  235. package/scripts/verify_reference_rust_scaffold.js +50 -50
  236. package/scripts/verify_release_candidate.js +131 -131
  237. package/scripts/verify_service.js +2940 -2940
  238. package/scripts/verify_tooling.js +1251 -1251
  239. package/scripts/verify_trust_portability.js +56 -56
  240. package/scripts/verify_vectors.js +192 -192
  241. package/scripts/verify_verification_services.js +56 -56
  242. package/server.js +4099 -3997
  243. package/vectors/adversarial-vectors.json +552 -552
  244. package/vectors/conformance-vectors.json +446 -446
  245. package/vectors/native-atom-vectors.json +101 -101
  246. package/vectors/native-payload-profile-vectors.json +50 -50
@@ -1,78 +1,78 @@
1
- # XNYA Conformance Mark
2
-
3
- `XNYA-compatible` is the compatibility mark for implementations that preserve the xoonya Native atom, payload, proof-envelope, and vector behavior exactly enough for deterministic machine evidence to remain portable.
4
-
5
- The mark is not an identity, auth, custody, transport-security, settlement, chain-finality, or external-provider truth claim.
6
-
7
- ## Required Meaning
8
-
9
- An implementation may claim `XNYA-compatible` only when it can show:
10
-
11
- - the native atom magic is exactly `XNYA`
12
- - atom versions and fixed sizes match the published spec
13
- - payload and identity hash derivation match the published vectors
14
- - required native methods either verify or are explicitly declared unsupported
15
- - adversarial vectors fail with stable error codes
16
- - `algorithm: "none"` is rejected for production proof
17
- - anchor binding does not claim independent external chain or provider truth
18
-
19
- ## Required Artifacts
20
-
21
- The following artifacts define the current conformance floor:
22
-
23
- - `XOONYA_NATIVE_PROOF_FORMAT.md`
24
- - `XOONYA_NATIVE_ATOM_SPEC.md`
25
- - `XOONYA_NATIVE_STANDARD_GOVERNANCE.md`
26
- - `XNYA_CONFORMANCE_MARK.md`
27
- - `vectors/conformance-vectors.json`
28
- - `vectors/adversarial-vectors.json`
29
- - `vectors/native-atom-vectors.json`
30
- - `vectors/native-payload-profile-vectors.json`
31
-
32
- ## Required Checks
33
-
34
- At minimum, a compatible implementation must pass equivalent checks to:
35
-
36
- ```bash
37
- xoonya first-run --verify-native --pretty
38
- xoonya conformance --json
39
- npm run verify:release-candidate
40
- npm run verify:service
41
- ```
42
-
43
- Non-JavaScript implementations should publish deterministic pass/fail output against the same vector IDs, byte layouts, and error-code expectations.
44
-
45
- ## Allowed Claim Classes
46
-
47
- `xnya_atom_compatible` means the implementation preserves `XNYA` atom bytes, lengths, versions, record types, hash derivation, and reject codes.
48
-
49
- `xnya_payload_profile_compatible` means the implementation preserves the `XNYP` binary payload profile: typed fields, canonical ordering, fixed-width integers, explicit unknown-field policy, and no loose JSON or float semantics.
50
-
51
- `xnya_native_proof_compatible` means registered native methods verify through the declared suite registry, reject `algorithm: "none"`, and keep signatures, anchors, and external references outside the atom core.
52
-
53
- `xnya_external_interop_compatible` means external proof envelopes are bound to canonical xoonya receipts without claiming issuer, DID, JWT, SD-JWT, chain, or partner-provider truth unless an external verifier is declared and bound.
54
-
55
- ## Forbidden Claims
56
-
57
- Do not claim the mark if:
58
-
59
- - `XNYA` magic, fixed sizes, version semantics, or atom layout are changed
60
- - `algorithm: "none"` verifies as production proof
61
- - happy-path vectors pass but adversarial vectors are skipped
62
- - PQ/hybrid support is claimed without validators, vectors, downgrade tests, and deterministic error codes
63
- - external issuer, chain, finality, custody, or provider truth is claimed as xoonya-verified without a declared external verifier
64
- - the mark is used to imply login, session, wallet, custody, payment, transport, or regulatory compliance behavior
65
-
66
- ## Extra Evidence Gates
67
-
68
- PQ/hybrid native verification requires non-experimental validators, suite-specific public-key rules, positive conformance vectors, adversarial downgrade vectors, and deterministic error codes.
69
-
70
- Live external framework-provider compatibility requires real external endpoints, auth boundaries, health checks, failure behavior, latency evidence, and live execution checks.
71
-
72
- New signature suites require suite-specific validators plus wrong-key, wrong-method, tamper, and downgrade vectors before they can move from registry/planned status to implemented status.
73
-
74
- ## Governance
75
-
76
- The mark should stay tied to concrete artifacts, not brand aspiration. New public mark claims require docs, vectors, deterministic error codes, release-candidate checks, and service surfaces before public use.
77
-
78
- The reference implementation ships inside the `xoonya` npm package until external adoption or governance pressure justifies a separate standards repository.
1
+ # XNYA Conformance Mark
2
+
3
+ `XNYA-compatible` is the compatibility mark for implementations that preserve the xoonya Native atom, payload, proof-envelope, and vector behavior exactly enough for deterministic machine evidence to remain portable.
4
+
5
+ The mark is not an identity, auth, custody, transport-security, settlement, chain-finality, or external-provider truth claim.
6
+
7
+ ## Required Meaning
8
+
9
+ An implementation may claim `XNYA-compatible` only when it can show:
10
+
11
+ - the native atom magic is exactly `XNYA`
12
+ - atom versions and fixed sizes match the published spec
13
+ - payload and identity hash derivation match the published vectors
14
+ - required native methods either verify or are explicitly declared unsupported
15
+ - adversarial vectors fail with stable error codes
16
+ - `algorithm: "none"` is rejected for production proof
17
+ - anchor binding does not claim independent external chain or provider truth
18
+
19
+ ## Required Artifacts
20
+
21
+ The following artifacts define the current conformance floor:
22
+
23
+ - `XOONYA_NATIVE_PROOF_FORMAT.md`
24
+ - `XOONYA_NATIVE_ATOM_SPEC.md`
25
+ - `XOONYA_NATIVE_STANDARD_GOVERNANCE.md`
26
+ - `XNYA_CONFORMANCE_MARK.md`
27
+ - `vectors/conformance-vectors.json`
28
+ - `vectors/adversarial-vectors.json`
29
+ - `vectors/native-atom-vectors.json`
30
+ - `vectors/native-payload-profile-vectors.json`
31
+
32
+ ## Required Checks
33
+
34
+ At minimum, a compatible implementation must pass equivalent checks to:
35
+
36
+ ```bash
37
+ xoonya first-run --verify-native --pretty
38
+ xoonya conformance --json
39
+ npm run verify:release-candidate
40
+ npm run verify:service
41
+ ```
42
+
43
+ Non-JavaScript implementations should publish deterministic pass/fail output against the same vector IDs, byte layouts, and error-code expectations.
44
+
45
+ ## Allowed Claim Classes
46
+
47
+ `xnya_atom_compatible` means the implementation preserves `XNYA` atom bytes, lengths, versions, record types, hash derivation, and reject codes.
48
+
49
+ `xnya_payload_profile_compatible` means the implementation preserves the `XNYP` binary payload profile: typed fields, canonical ordering, fixed-width integers, explicit unknown-field policy, and no loose JSON or float semantics.
50
+
51
+ `xnya_native_proof_compatible` means registered native methods verify through the declared suite registry, reject `algorithm: "none"`, and keep signatures, anchors, and external references outside the atom core.
52
+
53
+ `xnya_external_interop_compatible` means external proof envelopes are bound to canonical xoonya receipts without claiming issuer, DID, JWT, SD-JWT, chain, or partner-provider truth unless an external verifier is declared and bound.
54
+
55
+ ## Forbidden Claims
56
+
57
+ Do not claim the mark if:
58
+
59
+ - `XNYA` magic, fixed sizes, version semantics, or atom layout are changed
60
+ - `algorithm: "none"` verifies as production proof
61
+ - happy-path vectors pass but adversarial vectors are skipped
62
+ - PQ/hybrid support is claimed without validators, vectors, downgrade tests, and deterministic error codes
63
+ - external issuer, chain, finality, custody, or provider truth is claimed as xoonya-verified without a declared external verifier
64
+ - the mark is used to imply login, session, wallet, custody, payment, transport, or regulatory compliance behavior
65
+
66
+ ## Extra Evidence Gates
67
+
68
+ PQ/hybrid native verification requires non-experimental validators, suite-specific public-key rules, positive conformance vectors, adversarial downgrade vectors, and deterministic error codes.
69
+
70
+ Live external framework-provider compatibility requires real external endpoints, auth boundaries, health checks, failure behavior, latency evidence, and live execution checks.
71
+
72
+ New signature suites require suite-specific validators plus wrong-key, wrong-method, tamper, and downgrade vectors before they can move from registry/planned status to implemented status.
73
+
74
+ ## Governance
75
+
76
+ The mark should stay tied to concrete artifacts, not brand aspiration. New public mark claims require docs, vectors, deterministic error codes, release-candidate checks, and service surfaces before public use.
77
+
78
+ The reference implementation ships inside the `xoonya` npm package until external adoption or governance pressure justifies a separate standards repository.
@@ -1,157 +1,157 @@
1
- # XNYA Reference Implementations
2
-
3
- `XNYA-compatible` needs independent implementations, not only one JavaScript package. This document defines how xoonya treats reference implementations without overclaiming maturity before vector parity exists.
4
-
5
- ## Current Reference
6
-
7
- The current canonical reference implementation ships inside the `xoonya` npm package:
8
-
9
- - `proof_sdk.js` contains the canonical JavaScript helpers, validators, proof builders, and pack generators.
10
- - `vectors/` contains the positive and adversarial conformance inputs.
11
- - `bin/xoonya.js` exposes first-run and conformance checks.
12
- - `bin/xoonya-release.js` exposes public release and standardization artifacts.
13
- - `server.js` exposes the proof-center JSON surfaces.
14
-
15
- Required checks:
16
-
17
- ```bash
18
- npm run verify:release-candidate
19
- npm run verify:all
20
- xoonya conformance --json
21
- xoonya first-run --verify-native --pretty
22
- ```
23
-
24
- ## Planned Independent References
25
-
26
- Python and Rust reference implementations are planned, but they are not public compatibility claims until they pass the same vector floor independently.
27
-
28
- Candidate names:
29
-
30
- - `xoonya-native-python`
31
- - `xoonya-native-rust`
32
-
33
- Each candidate must implement its own byte parser and verifier. Wrapping the JavaScript runtime is useful for demos, but it is not an independent reference implementation.
34
-
35
- Promotion evidence is checked separately from scaffold parity:
36
-
37
- ```bash
38
- npm run verify:reference-promotion-gate
39
- ```
40
-
41
- That verifier proves a complete candidate promotion packet can pass validation, while incomplete packets fail with deterministic rejection codes. The gate requires repository/package evidence, all required vector sets, deterministic error-code parity, independent parser evidence, native signature-suite crypto parity, cross-language round-trip evidence, conformance-mark review, forbidden-claim review, and no secret material.
42
-
43
- ## Python Candidate Scaffold
44
-
45
- The Python candidate scaffold lives in `reference/python`.
46
-
47
- It currently covers:
48
-
49
- - XNYA atom v1 and v2 creation
50
- - XNYA atom parsing and verification
51
- - native atom adversarial reject codes
52
- - XNYP payload profile encoding and parsing
53
- - line-rate frame checksum verification
54
- - canonical event hash parity
55
- - receipt emission for external assertion, native digest, legacy OP_RETURN, and native anchored methods
56
- - proof-bundle build/verify parity for non-signed native methods
57
- - adversarial reason parity for non-signed proof-bundle checks
58
- - bounded hybrid-method awareness without yet claiming independent PQ/hybrid validator parity
59
- - optional Ed25519 native signed verification when the Python `cryptography` package is available
60
- - deterministic `native_signature_crypto_dependency_missing` when the optional crypto dependency is absent
61
-
62
- Run:
63
-
64
- ```bash
65
- npm run verify:reference-python
66
- ```
67
-
68
- This is vector-parity progress, not a full reference promotion. Python does not yet claim always-on native signature-suite cryptographic verification, secp256k1/P-256 parity, external method import, independent PQ/hybrid signature parity, or all native signed proof-bundle round-trip behavior.
69
-
70
- Optional Ed25519 crypto check:
71
-
72
- ```bash
73
- npm run verify:reference-python-crypto
74
- ```
75
-
76
- This command creates an isolated temporary Python virtual environment, installs `reference/python/requirements-optional.txt`, runs the same vector verifier, and requires `verified_signature_suite_count = 1`.
77
-
78
- Without the optional dependency, the default verifier still passes by proving the explicit dependency boundary.
79
-
80
- ## Rust Candidate Scaffold
81
-
82
- The Rust candidate scaffold lives in `reference/rust`.
83
-
84
- It currently covers:
85
-
86
- - source-only package boundary for `xoonya-native-rust`
87
- - fixed-size `XNYA` atom constants
88
- - v1/v2 atom byte-length checks
89
- - deterministic atom parser error codes
90
- - `publish = false` until vector parity and promotion gates exist
91
-
92
- Run:
93
-
94
- ```bash
95
- npm run verify:reference-rust-scaffold
96
- ```
97
-
98
- This is a packaging and boundary guard only. It does not compile Rust in the
99
- current release path, does not run positive/adversarial vectors, and does not
100
- claim `XNYA-compatible` status for Rust.
101
-
102
- ## Required Vector Floor
103
-
104
- An independent implementation must pass:
105
-
106
- - `vectors/conformance-vectors.json`
107
- - `vectors/adversarial-vectors.json`
108
- - `vectors/native-atom-vectors.json`
109
- - `vectors/native-payload-profile-vectors.json`
110
-
111
- The implementation must also produce stable reject reasons equivalent to the published deterministic error codes.
112
-
113
- ## Required Behavior
114
-
115
- An implementation may claim `XNYA-compatible` only when it:
116
-
117
- - parses `XNYA` atoms exactly by byte layout and fixed size
118
- - preserves `XNYA` atom v1 and v2 domain separation
119
- - parses `XNYP` payload profiles without loose JSON, floats, or implicit type coercion
120
- - rejects unsupported or malformed native atoms with deterministic errors
121
- - rejects `algorithm: "none"` as a production proof method
122
- - verifies only implemented signature suites with suite-specific validators
123
- - treats PQ/hybrid methods as independently unverified until that runtime has its own validators and vector parity
124
- - binds external proof formats without claiming external issuer truth
125
- - binds anchor references without claiming external chain or provider finality truth
126
-
127
- ## Promotion Gates
128
-
129
- Independent references become public reference implementations only after:
130
-
131
- 1. A package or repository exists with public source, license, docs, and test commands.
132
- 2. The candidate passes all positive and adversarial vector sets.
133
- 3. The candidate emits deterministic errors that match the JavaScript reference.
134
- 4. The candidate can generate artifacts verified by the JavaScript reference.
135
- 5. The JavaScript reference can generate artifacts verified by the candidate.
136
- 6. The candidate satisfies the `XNYA-compatible` mark without forbidden claims.
137
- 7. The candidate passes `npm run verify:reference-promotion-gate` with promotion evidence that does not contain private keys, access tokens, credentials, or authorization material.
138
-
139
- ## Non-Claims
140
-
141
- The reference implementation plan does not claim:
142
-
143
- - PQ or hybrid runtime validation
144
- - live external provider execution
145
- - identity, authentication, custody, transport, or settlement security
146
- - Rust vector parity or full Rust reference status
147
- - external issuer truth for JWT, DID/VC, SD-JWT VC, signed-envelope, or partner proofs
148
- - external chain or provider finality truth
149
-
150
- Those claims require separate validators, policies, and evidence.
151
-
152
- ## Service Surface
153
-
154
- The machine-readable pack is exposed at:
155
-
156
- - `GET /v1/proof-center/native-reference-implementations`
157
- - `GET /v1/proof-center/native-reference-implementations/summary`
1
+ # XNYA Reference Implementations
2
+
3
+ `XNYA-compatible` needs independent implementations, not only one JavaScript package. This document defines how xoonya treats reference implementations without overclaiming maturity before vector parity exists.
4
+
5
+ ## Current Reference
6
+
7
+ The current canonical reference implementation ships inside the `xoonya` npm package:
8
+
9
+ - `proof_sdk.js` contains the canonical JavaScript helpers, validators, proof builders, and pack generators.
10
+ - `vectors/` contains the positive and adversarial conformance inputs.
11
+ - `bin/xoonya.js` exposes first-run and conformance checks.
12
+ - `bin/xoonya-release.js` exposes public release and standardization artifacts.
13
+ - `server.js` exposes the proof-center JSON surfaces.
14
+
15
+ Required checks:
16
+
17
+ ```bash
18
+ npm run verify:release-candidate
19
+ npm run verify:all
20
+ xoonya conformance --json
21
+ xoonya first-run --verify-native --pretty
22
+ ```
23
+
24
+ ## Planned Independent References
25
+
26
+ Python and Rust reference implementations are planned, but they are not public compatibility claims until they pass the same vector floor independently.
27
+
28
+ Candidate names:
29
+
30
+ - `xoonya-native-python`
31
+ - `xoonya-native-rust`
32
+
33
+ Each candidate must implement its own byte parser and verifier. Wrapping the JavaScript runtime is useful for demos, but it is not an independent reference implementation.
34
+
35
+ Promotion evidence is checked separately from scaffold parity:
36
+
37
+ ```bash
38
+ npm run verify:reference-promotion-gate
39
+ ```
40
+
41
+ That verifier proves a complete candidate promotion packet can pass validation, while incomplete packets fail with deterministic rejection codes. The gate requires repository/package evidence, all required vector sets, deterministic error-code parity, independent parser evidence, native signature-suite crypto parity, cross-language round-trip evidence, conformance-mark review, forbidden-claim review, and no secret material.
42
+
43
+ ## Python Candidate Scaffold
44
+
45
+ The Python candidate scaffold lives in `reference/python`.
46
+
47
+ It currently covers:
48
+
49
+ - XNYA atom v1 and v2 creation
50
+ - XNYA atom parsing and verification
51
+ - native atom adversarial reject codes
52
+ - XNYP payload profile encoding and parsing
53
+ - line-rate frame checksum verification
54
+ - canonical event hash parity
55
+ - receipt emission for external assertion, native digest, legacy OP_RETURN, and native anchored methods
56
+ - proof-bundle build/verify parity for non-signed native methods
57
+ - adversarial reason parity for non-signed proof-bundle checks
58
+ - bounded hybrid-method awareness without yet claiming independent PQ/hybrid validator parity
59
+ - optional Ed25519 native signed verification when the Python `cryptography` package is available
60
+ - deterministic `native_signature_crypto_dependency_missing` when the optional crypto dependency is absent
61
+
62
+ Run:
63
+
64
+ ```bash
65
+ npm run verify:reference-python
66
+ ```
67
+
68
+ This is vector-parity progress, not a full reference promotion. Python does not yet claim always-on native signature-suite cryptographic verification, secp256k1/P-256 parity, external method import, independent PQ/hybrid signature parity, or all native signed proof-bundle round-trip behavior.
69
+
70
+ Optional Ed25519 crypto check:
71
+
72
+ ```bash
73
+ npm run verify:reference-python-crypto
74
+ ```
75
+
76
+ This command creates an isolated temporary Python virtual environment, installs `reference/python/requirements-optional.txt`, runs the same vector verifier, and requires `verified_signature_suite_count = 1`.
77
+
78
+ Without the optional dependency, the default verifier still passes by proving the explicit dependency boundary.
79
+
80
+ ## Rust Candidate Scaffold
81
+
82
+ The Rust candidate scaffold lives in `reference/rust`.
83
+
84
+ It currently covers:
85
+
86
+ - source-only package boundary for `xoonya-native-rust`
87
+ - fixed-size `XNYA` atom constants
88
+ - v1/v2 atom byte-length checks
89
+ - deterministic atom parser error codes
90
+ - `publish = false` until vector parity and promotion gates exist
91
+
92
+ Run:
93
+
94
+ ```bash
95
+ npm run verify:reference-rust-scaffold
96
+ ```
97
+
98
+ This is a packaging and boundary guard only. It does not compile Rust in the
99
+ current release path, does not run positive/adversarial vectors, and does not
100
+ claim `XNYA-compatible` status for Rust.
101
+
102
+ ## Required Vector Floor
103
+
104
+ An independent implementation must pass:
105
+
106
+ - `vectors/conformance-vectors.json`
107
+ - `vectors/adversarial-vectors.json`
108
+ - `vectors/native-atom-vectors.json`
109
+ - `vectors/native-payload-profile-vectors.json`
110
+
111
+ The implementation must also produce stable reject reasons equivalent to the published deterministic error codes.
112
+
113
+ ## Required Behavior
114
+
115
+ An implementation may claim `XNYA-compatible` only when it:
116
+
117
+ - parses `XNYA` atoms exactly by byte layout and fixed size
118
+ - preserves `XNYA` atom v1 and v2 domain separation
119
+ - parses `XNYP` payload profiles without loose JSON, floats, or implicit type coercion
120
+ - rejects unsupported or malformed native atoms with deterministic errors
121
+ - rejects `algorithm: "none"` as a production proof method
122
+ - verifies only implemented signature suites with suite-specific validators
123
+ - treats PQ/hybrid methods as independently unverified until that runtime has its own validators and vector parity
124
+ - binds external proof formats without claiming external issuer truth
125
+ - binds anchor references without claiming external chain or provider finality truth
126
+
127
+ ## Promotion Gates
128
+
129
+ Independent references become public reference implementations only after:
130
+
131
+ 1. A package or repository exists with public source, license, docs, and test commands.
132
+ 2. The candidate passes all positive and adversarial vector sets.
133
+ 3. The candidate emits deterministic errors that match the JavaScript reference.
134
+ 4. The candidate can generate artifacts verified by the JavaScript reference.
135
+ 5. The JavaScript reference can generate artifacts verified by the candidate.
136
+ 6. The candidate satisfies the `XNYA-compatible` mark without forbidden claims.
137
+ 7. The candidate passes `npm run verify:reference-promotion-gate` with promotion evidence that does not contain private keys, access tokens, credentials, or authorization material.
138
+
139
+ ## Non-Claims
140
+
141
+ The reference implementation plan does not claim:
142
+
143
+ - PQ or hybrid runtime validation
144
+ - live external provider execution
145
+ - identity, authentication, custody, transport, or settlement security
146
+ - Rust vector parity or full Rust reference status
147
+ - external issuer truth for JWT, DID/VC, SD-JWT VC, signed-envelope, or partner proofs
148
+ - external chain or provider finality truth
149
+
150
+ Those claims require separate validators, policies, and evidence.
151
+
152
+ ## Service Surface
153
+
154
+ The machine-readable pack is exposed at:
155
+
156
+ - `GET /v1/proof-center/native-reference-implementations`
157
+ - `GET /v1/proof-center/native-reference-implementations/summary`
@@ -1,63 +1,63 @@
1
- # xoonya Default Path Model
2
-
3
- `xoonya` should feel immediate from the surface the caller already uses.
4
-
5
- For `3.0.0`, the public proof story cannot only live across scattered review routes and helper commands.
6
-
7
- It needs one frozen answer to:
8
-
9
- - how a caller brings proof-side input in
10
- - how they review it
11
- - how they verify or run proof followthrough
12
- - how they emit durable proof artifacts
13
- - how bridge and governance followthrough remain attached
14
-
15
- ## Core Rule
16
-
17
- All supported proof entry surfaces must converge on one spine:
18
-
19
- `receive -> review -> run/emit -> verify -> inspect/governance`
20
-
21
- Surface-specific ergonomics are allowed.
22
- Surface-specific proof truth models are not.
23
-
24
- ## Supported Surface Families
25
-
26
- The frozen `3.0.0` default-path model covers:
27
-
28
- - CLI and terminal
29
- - direct API
30
- - carried handoff review
31
- - native proof loop
32
- - service-to-service and embedded review
33
-
34
- ## What Changes Across Surfaces
35
-
36
- What may change:
37
-
38
- - the first entrypoint
39
- - whether the caller starts from a handoff review, a proof loop, or a verification command
40
- - whether output is returned as CLI JSON, API JSON, or embedded review state
41
-
42
- What must not change:
43
-
44
- - proof truth
45
- - review posture
46
- - verification posture
47
- - bridge carry
48
- - governance followthrough
49
-
50
- ## Machine-Readable Surfaces
51
-
52
- - `GET /v1/default-path`
53
- - `GET /v1/default-path/summary`
54
- - `GET /v1/default-path/:surface_id`
55
-
56
- ## Launch Standard
57
-
58
- For `3.0.0`, this model is considered real only if:
59
-
60
- - each listed surface has a callable first path
61
- - each listed surface can review or verify before claiming completion
62
- - each listed surface converges into the shared proof truth model
63
- - each listed surface can preserve bridge and governance followthrough where needed
1
+ # xoonya Default Path Model
2
+
3
+ `xoonya` should feel immediate from the surface the caller already uses.
4
+
5
+ For `3.0.0`, the public proof story cannot only live across scattered review routes and helper commands.
6
+
7
+ It needs one frozen answer to:
8
+
9
+ - how a caller brings proof-side input in
10
+ - how they review it
11
+ - how they verify or run proof followthrough
12
+ - how they emit durable proof artifacts
13
+ - how bridge and governance followthrough remain attached
14
+
15
+ ## Core Rule
16
+
17
+ All supported proof entry surfaces must converge on one spine:
18
+
19
+ `receive -> review -> run/emit -> verify -> inspect/governance`
20
+
21
+ Surface-specific ergonomics are allowed.
22
+ Surface-specific proof truth models are not.
23
+
24
+ ## Supported Surface Families
25
+
26
+ The frozen `3.0.0` default-path model covers:
27
+
28
+ - CLI and terminal
29
+ - direct API
30
+ - carried handoff review
31
+ - native proof loop
32
+ - service-to-service and embedded review
33
+
34
+ ## What Changes Across Surfaces
35
+
36
+ What may change:
37
+
38
+ - the first entrypoint
39
+ - whether the caller starts from a handoff review, a proof loop, or a verification command
40
+ - whether output is returned as CLI JSON, API JSON, or embedded review state
41
+
42
+ What must not change:
43
+
44
+ - proof truth
45
+ - review posture
46
+ - verification posture
47
+ - bridge carry
48
+ - governance followthrough
49
+
50
+ ## Machine-Readable Surfaces
51
+
52
+ - `GET /v1/default-path`
53
+ - `GET /v1/default-path/summary`
54
+ - `GET /v1/default-path/:surface_id`
55
+
56
+ ## Launch Standard
57
+
58
+ For `3.0.0`, this model is considered real only if:
59
+
60
+ - each listed surface has a callable first path
61
+ - each listed surface can review or verify before claiming completion
62
+ - each listed surface converges into the shared proof truth model
63
+ - each listed surface can preserve bridge and governance followthrough where needed