xoonya 3.1.0 → 3.1.2

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 (248) hide show
  1. package/.env.example +10 -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/PARTNER_READY_PATH.md +67 -67
  10. package/PUBLIC_DEMO_SCRIPT.md +79 -79
  11. package/README.md +843 -808
  12. package/RELEASE_NOTES.md +10 -15
  13. package/SERVICE_CONTRACT.md +207 -207
  14. package/START_HERE.md +159 -159
  15. package/TERMINOLOGY.md +55 -55
  16. package/WHY_XYTARA_XOONYA.md +43 -43
  17. package/XNYA_CONFORMANCE_MARK.md +78 -78
  18. package/XNYA_REFERENCE_IMPLEMENTATIONS.md +157 -157
  19. package/XOONYA_DEFAULT_PATH_MODEL.md +63 -63
  20. package/XOONYA_FOLLOWTHROUGH_TRUTH_MODEL.md +63 -63
  21. package/XOONYA_NATIVE_ATOM_SPEC.md +184 -184
  22. package/XOONYA_NATIVE_PROOF_FORMAT.md +570 -527
  23. package/XOONYA_NATIVE_STANDARD_GOVERNANCE.md +119 -119
  24. package/XOONYA_PROOF_TRUTH_MODEL.md +58 -58
  25. package/bin/xoonya-first-run.js +184 -184
  26. package/bin/xoonya-release.js +1367 -1367
  27. package/bin/xoonya-review.js +70 -70
  28. package/bin/xoonya.js +82 -82
  29. package/examples/integration_boundary_walkthrough.js +37 -37
  30. package/examples/package_quickstart.js +1007 -1007
  31. package/examples/partner_proof_walkthrough.js +68 -68
  32. package/examples/proof_review_walkthrough.js +66 -66
  33. package/examples/review_carried_handoff.js +72 -72
  34. package/index.js +31 -31
  35. package/integrations/PROOF_INTEGRATION_PROCESS.md +45 -45
  36. package/integrations/examples/example-third-party-verifier-registration.record.json +22 -22
  37. package/integrations/registration-record.schema.json +99 -99
  38. package/integrations/registry-snapshot.schema.json +36 -36
  39. package/integrations/registry.js +636 -636
  40. package/integrations/views.js +36 -36
  41. package/lib/adapter_certification_contract.js +90 -90
  42. package/lib/announcement_pack.js +61 -61
  43. package/lib/artifact_distribution_lane_contract.js +54 -54
  44. package/lib/asyncapi_contract.js +135 -135
  45. package/lib/auth_interop_contract.js +69 -69
  46. package/lib/authority_binding_lifecycle_contract.js +182 -182
  47. package/lib/bridge_intelligence.js +102 -102
  48. package/lib/cloudevents_contract.js +79 -79
  49. package/lib/crypto_agility_matrix.js +125 -125
  50. package/lib/default_path_contract.js +380 -380
  51. package/lib/ecosystem_entry.js +64 -64
  52. package/lib/erc8004_proof_lane_contract.js +64 -64
  53. package/lib/event_system_lane_contract.js +76 -76
  54. package/lib/external_proof_import_lane_contract.js +87 -87
  55. package/lib/feature_control_lane_contract.js +54 -54
  56. package/lib/followthrough_truth_contract.js +214 -214
  57. package/lib/framework_lane_contract.js +76 -76
  58. package/lib/governance_disputes_summary.js +36 -36
  59. package/lib/governance_intelligence.js +108 -108
  60. package/lib/identity_interop_contract.js +83 -83
  61. package/lib/integration_matrix_contract.js +81 -81
  62. package/lib/launch_narrative.js +53 -53
  63. package/lib/machine_identity_registry_contract.js +199 -199
  64. package/lib/major_rails_proof_lane_contract.js +87 -87
  65. package/lib/offline_verifiability_recovery_contract.js +155 -155
  66. package/lib/openapi_contract.js +227 -227
  67. package/lib/operational_receipt_contract.js +165 -165
  68. package/lib/outreach_proof.js +71 -71
  69. package/lib/phase_10_closeout_pack.js +45 -45
  70. package/lib/phase_10_completion_pack.js +76 -76
  71. package/lib/phase_10_decision_record_pack.js +54 -54
  72. package/lib/phase_10_decision_resolution_pack.js +53 -53
  73. package/lib/phase_10_demand_signal_adapters_proof_pack.js +74 -74
  74. package/lib/phase_10_ecosystem_backlog_triage_proof_pack.js +74 -74
  75. package/lib/phase_10_freeze_baseline_pack.js +67 -67
  76. package/lib/phase_10_freeze_review_pack.js +64 -64
  77. package/lib/phase_10_gate_pack.js +57 -57
  78. package/lib/phase_10_long_tail_continuity_pack.js +80 -80
  79. package/lib/phase_10_long_tail_ecosystem_pack.js +68 -68
  80. package/lib/phase_10_niche_extension_registry_proof_pack.js +74 -74
  81. package/lib/phase_1_claude_mcp_pack.js +60 -60
  82. package/lib/phase_1_claude_mcp_proof_pack.js +57 -57
  83. package/lib/phase_1_ecosystem_pack.js +51 -51
  84. package/lib/phase_1_openai_codex_pack.js +60 -60
  85. package/lib/phase_1_openai_codex_proof_pack.js +57 -57
  86. package/lib/phase_2_base_proof_pack.js +71 -71
  87. package/lib/phase_2_base_usdc_proof_pack.js +72 -72
  88. package/lib/phase_2_closeout_pack.js +65 -65
  89. package/lib/phase_2_completion_pack.js +113 -113
  90. package/lib/phase_2_decision_record_pack.js +66 -66
  91. package/lib/phase_2_decision_resolution_pack.js +69 -69
  92. package/lib/phase_2_eth_proof_pack.js +70 -70
  93. package/lib/phase_2_evm_base_proof_pack.js +73 -73
  94. package/lib/phase_2_evm_proof_pack.js +71 -71
  95. package/lib/phase_2_flip_preview_pack.js +60 -60
  96. package/lib/phase_2_freeze_review_pack.js +99 -99
  97. package/lib/phase_2_gate_pack.js +77 -77
  98. package/lib/phase_2_payment_rails_pack.js +71 -71
  99. package/lib/phase_2_usdc_proof_pack.js +71 -71
  100. package/lib/phase_3_brc_proof_pack.js +81 -81
  101. package/lib/phase_3_bsv_teranode_proof_pack.js +81 -81
  102. package/lib/phase_3_closeout_pack.js +62 -62
  103. package/lib/phase_3_completion_pack.js +92 -92
  104. package/lib/phase_3_decision_record_pack.js +64 -64
  105. package/lib/phase_3_decision_resolution_pack.js +69 -69
  106. package/lib/phase_3_freeze_baseline_pack.js +67 -67
  107. package/lib/phase_3_freeze_review_pack.js +80 -80
  108. package/lib/phase_3_gate_pack.js +76 -76
  109. package/lib/phase_3_metanet_proof_pack.js +81 -81
  110. package/lib/phase_3_native_bsv_pack.js +89 -89
  111. package/lib/phase_3_native_continuity_pack.js +82 -82
  112. package/lib/phase_4_attestation_proof_pack.js +75 -75
  113. package/lib/phase_4_closeout_pack.js +45 -45
  114. package/lib/phase_4_completion_pack.js +82 -82
  115. package/lib/phase_4_decision_record_pack.js +54 -54
  116. package/lib/phase_4_decision_resolution_pack.js +45 -45
  117. package/lib/phase_4_erc8004_proof_pack.js +76 -76
  118. package/lib/phase_4_freeze_baseline_pack.js +67 -67
  119. package/lib/phase_4_freeze_review_pack.js +68 -68
  120. package/lib/phase_4_gate_pack.js +58 -58
  121. package/lib/phase_4_identity_registry_proof_pack.js +75 -75
  122. package/lib/phase_4_identity_trust_pack.js +73 -73
  123. package/lib/phase_4_trust_continuity_pack.js +86 -86
  124. package/lib/phase_5_antelope_proof_pack.js +76 -76
  125. package/lib/phase_5_closeout_pack.js +44 -44
  126. package/lib/phase_5_completion_pack.js +82 -82
  127. package/lib/phase_5_decision_record_pack.js +54 -54
  128. package/lib/phase_5_decision_resolution_pack.js +45 -45
  129. package/lib/phase_5_freeze_baseline_pack.js +67 -67
  130. package/lib/phase_5_freeze_review_pack.js +68 -68
  131. package/lib/phase_5_gate_pack.js +58 -58
  132. package/lib/phase_5_major_rails_continuity_pack.js +86 -86
  133. package/lib/phase_5_major_rails_pack.js +74 -74
  134. package/lib/phase_5_proton_xpr_proof_pack.js +76 -76
  135. package/lib/phase_5_solana_proof_pack.js +76 -76
  136. package/lib/phase_6_autogen_proof_pack.js +74 -74
  137. package/lib/phase_6_closeout_pack.js +46 -46
  138. package/lib/phase_6_completion_pack.js +77 -77
  139. package/lib/phase_6_decision_record_pack.js +54 -54
  140. package/lib/phase_6_decision_resolution_pack.js +53 -53
  141. package/lib/phase_6_framework_continuity_pack.js +81 -81
  142. package/lib/phase_6_framework_runtime_pack.js +68 -68
  143. package/lib/phase_6_freeze_baseline_pack.js +68 -68
  144. package/lib/phase_6_freeze_review_pack.js +65 -65
  145. package/lib/phase_6_gate_pack.js +59 -59
  146. package/lib/phase_6_langchain_proof_pack.js +74 -74
  147. package/lib/phase_6_langgraph_proof_pack.js +74 -74
  148. package/lib/phase_6_semantic_kernel_proof_pack.js +74 -74
  149. package/lib/phase_7_closeout_pack.js +45 -45
  150. package/lib/phase_7_completion_pack.js +85 -85
  151. package/lib/phase_7_decision_record_pack.js +53 -53
  152. package/lib/phase_7_decision_resolution_pack.js +53 -53
  153. package/lib/phase_7_event_system_continuity_pack.js +89 -89
  154. package/lib/phase_7_event_system_pack.js +76 -76
  155. package/lib/phase_7_freeze_baseline_pack.js +74 -74
  156. package/lib/phase_7_freeze_review_pack.js +65 -65
  157. package/lib/phase_7_gate_pack.js +58 -58
  158. package/lib/phase_7_kafka_proof_pack.js +76 -76
  159. package/lib/phase_7_mqtt_proof_pack.js +76 -76
  160. package/lib/phase_7_nats_proof_pack.js +76 -76
  161. package/lib/phase_7_webhook_event_bus_proof_pack.js +76 -76
  162. package/lib/phase_8_closeout_pack.js +46 -46
  163. package/lib/phase_8_completion_pack.js +82 -82
  164. package/lib/phase_8_decision_record_pack.js +54 -54
  165. package/lib/phase_8_decision_resolution_pack.js +53 -53
  166. package/lib/phase_8_external_receipt_import_proof_pack.js +74 -74
  167. package/lib/phase_8_external_result_import_proof_pack.js +74 -74
  168. package/lib/phase_8_freeze_baseline_pack.js +71 -71
  169. package/lib/phase_8_freeze_review_pack.js +64 -64
  170. package/lib/phase_8_gate_pack.js +58 -58
  171. package/lib/phase_8_proof_bridge_continuity_pack.js +86 -86
  172. package/lib/phase_8_proof_bridges_pack.js +72 -72
  173. package/lib/phase_8_proof_bundle_normalization_proof_pack.js +74 -74
  174. package/lib/phase_9_closeout_pack.js +46 -46
  175. package/lib/phase_9_completion_pack.js +82 -82
  176. package/lib/phase_9_custody_refs_proof_pack.js +74 -74
  177. package/lib/phase_9_decision_record_pack.js +54 -54
  178. package/lib/phase_9_decision_resolution_pack.js +53 -53
  179. package/lib/phase_9_freeze_baseline_pack.js +71 -71
  180. package/lib/phase_9_freeze_review_pack.js +64 -64
  181. package/lib/phase_9_gate_pack.js +58 -58
  182. package/lib/phase_9_operator_accounting_bridges_proof_pack.js +74 -74
  183. package/lib/phase_9_treasury_connectivity_pack.js +72 -72
  184. package/lib/phase_9_treasury_continuity_pack.js +86 -86
  185. package/lib/phase_9_treasury_destinations_proof_pack.js +74 -74
  186. package/lib/phase_program_pack.js +47 -47
  187. package/lib/proof_bridge_lane_contract.js +82 -82
  188. package/lib/proof_truth_contract.js +224 -224
  189. package/lib/provenance_lane_contract.js +54 -54
  190. package/lib/provider_lane_contract.js +67 -67
  191. package/lib/public_surface_policy_contract.js +111 -111
  192. package/lib/publish_plan.js +51 -51
  193. package/lib/release_candidate.js +50 -50
  194. package/lib/release_center.js +1037 -1037
  195. package/lib/release_history.js +206 -206
  196. package/lib/release_manifest.js +114 -114
  197. package/lib/release_pack.js +391 -391
  198. package/lib/result_package_trust_lane_contract.js +74 -74
  199. package/lib/review_intelligence.js +100 -100
  200. package/lib/role_freeze.js +436 -436
  201. package/lib/shared_signals_lane_contract.js +54 -54
  202. package/lib/signed_audit_provenance_contract.js +93 -93
  203. package/lib/telemetry_lane_contract.js +54 -54
  204. package/lib/treasury_proof_lane_contract.js +83 -83
  205. package/lib/trust_intelligence.js +106 -106
  206. package/lib/trust_portability_boundary_contract.js +66 -66
  207. package/lib/trust_portability_pack.js +224 -224
  208. package/lib/verification_service_pack.js +149 -149
  209. package/package.json +98 -97
  210. package/proof_sdk.js +6561 -6265
  211. package/reference/python/README.md +35 -35
  212. package/reference/python/__pycache__/xnya_reference.cpython-314.pyc +0 -0
  213. package/reference/python/requirements-optional.txt +1 -1
  214. package/reference/python/verify_vectors.py +223 -223
  215. package/reference/python/xnya_reference.py +810 -810
  216. package/reference/rust/Cargo.toml +11 -11
  217. package/reference/rust/README.md +28 -28
  218. package/reference/rust/src/lib.rs +87 -87
  219. package/scripts/registry_cli.js +157 -157
  220. package/scripts/verify_all.js +603 -603
  221. package/scripts/verify_control_plane_contracts.js +34 -34
  222. package/scripts/verify_control_plane_routes.js +70 -70
  223. package/scripts/verify_examples.js +19 -19
  224. package/scripts/verify_external_proof_import_gate.js +84 -84
  225. package/scripts/verify_forgery_resistance.js +281 -0
  226. package/scripts/verify_integrations.js +170 -170
  227. package/scripts/verify_native_hybrid_design_gate.js +114 -114
  228. package/scripts/verify_reference_promotion_gate.js +74 -74
  229. package/scripts/verify_reference_python.js +49 -49
  230. package/scripts/verify_reference_python_crypto.js +87 -87
  231. package/scripts/verify_reference_rust_scaffold.js +50 -50
  232. package/scripts/verify_release_candidate.js +131 -131
  233. package/scripts/verify_service.js +3038 -2940
  234. package/scripts/verify_tooling.js +1251 -1251
  235. package/scripts/verify_trust_portability.js +56 -56
  236. package/scripts/verify_vectors.js +192 -192
  237. package/scripts/verify_verification_services.js +56 -56
  238. package/server.js +4223 -4099
  239. package/vectors/adversarial-vectors.json +552 -552
  240. package/vectors/conformance-vectors.json +446 -446
  241. package/vectors/native-atom-vectors.json +101 -101
  242. package/vectors/native-payload-profile-vectors.json +50 -50
  243. package/OPERATIONS_RUNBOOK.md +0 -50
  244. package/OPERATOR_START_HERE.md +0 -67
  245. package/PROGRAM_COMPLETE_RELEASE.md +0 -52
  246. package/PROGRAM_STATUS.md +0 -57
  247. package/PUBLISH_PLAN.md +0 -25
  248. package/RELEASE_CHECKLIST.md +0 -16
@@ -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