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.
- package/.env.example +10 -2
- package/CARRIED_HANDOFF_DEMO.md +60 -60
- package/COMPATIBILITY_NOTE.md +27 -27
- package/CROSS_RUNTIME_POSTURE.md +77 -77
- package/EXAMPLE_PATHS.md +53 -53
- package/FINAL_CONTRACT.md +445 -445
- package/LICENSE +201 -201
- package/NOTICE +3 -3
- package/PARTNER_READY_PATH.md +67 -67
- package/PUBLIC_DEMO_SCRIPT.md +79 -79
- package/README.md +843 -808
- package/RELEASE_NOTES.md +10 -15
- package/SERVICE_CONTRACT.md +207 -207
- package/START_HERE.md +159 -159
- package/TERMINOLOGY.md +55 -55
- package/WHY_XYTARA_XOONYA.md +43 -43
- package/XNYA_CONFORMANCE_MARK.md +78 -78
- package/XNYA_REFERENCE_IMPLEMENTATIONS.md +157 -157
- package/XOONYA_DEFAULT_PATH_MODEL.md +63 -63
- package/XOONYA_FOLLOWTHROUGH_TRUTH_MODEL.md +63 -63
- package/XOONYA_NATIVE_ATOM_SPEC.md +184 -184
- package/XOONYA_NATIVE_PROOF_FORMAT.md +570 -527
- package/XOONYA_NATIVE_STANDARD_GOVERNANCE.md +119 -119
- package/XOONYA_PROOF_TRUTH_MODEL.md +58 -58
- package/bin/xoonya-first-run.js +184 -184
- package/bin/xoonya-release.js +1367 -1367
- package/bin/xoonya-review.js +70 -70
- package/bin/xoonya.js +82 -82
- package/examples/integration_boundary_walkthrough.js +37 -37
- package/examples/package_quickstart.js +1007 -1007
- package/examples/partner_proof_walkthrough.js +68 -68
- package/examples/proof_review_walkthrough.js +66 -66
- package/examples/review_carried_handoff.js +72 -72
- package/index.js +31 -31
- package/integrations/PROOF_INTEGRATION_PROCESS.md +45 -45
- package/integrations/examples/example-third-party-verifier-registration.record.json +22 -22
- package/integrations/registration-record.schema.json +99 -99
- package/integrations/registry-snapshot.schema.json +36 -36
- package/integrations/registry.js +636 -636
- package/integrations/views.js +36 -36
- package/lib/adapter_certification_contract.js +90 -90
- package/lib/announcement_pack.js +61 -61
- package/lib/artifact_distribution_lane_contract.js +54 -54
- package/lib/asyncapi_contract.js +135 -135
- package/lib/auth_interop_contract.js +69 -69
- package/lib/authority_binding_lifecycle_contract.js +182 -182
- package/lib/bridge_intelligence.js +102 -102
- package/lib/cloudevents_contract.js +79 -79
- package/lib/crypto_agility_matrix.js +125 -125
- package/lib/default_path_contract.js +380 -380
- package/lib/ecosystem_entry.js +64 -64
- package/lib/erc8004_proof_lane_contract.js +64 -64
- package/lib/event_system_lane_contract.js +76 -76
- package/lib/external_proof_import_lane_contract.js +87 -87
- package/lib/feature_control_lane_contract.js +54 -54
- package/lib/followthrough_truth_contract.js +214 -214
- package/lib/framework_lane_contract.js +76 -76
- package/lib/governance_disputes_summary.js +36 -36
- package/lib/governance_intelligence.js +108 -108
- package/lib/identity_interop_contract.js +83 -83
- package/lib/integration_matrix_contract.js +81 -81
- package/lib/launch_narrative.js +53 -53
- package/lib/machine_identity_registry_contract.js +199 -199
- package/lib/major_rails_proof_lane_contract.js +87 -87
- package/lib/offline_verifiability_recovery_contract.js +155 -155
- package/lib/openapi_contract.js +227 -227
- package/lib/operational_receipt_contract.js +165 -165
- package/lib/outreach_proof.js +71 -71
- package/lib/phase_10_closeout_pack.js +45 -45
- package/lib/phase_10_completion_pack.js +76 -76
- package/lib/phase_10_decision_record_pack.js +54 -54
- package/lib/phase_10_decision_resolution_pack.js +53 -53
- package/lib/phase_10_demand_signal_adapters_proof_pack.js +74 -74
- package/lib/phase_10_ecosystem_backlog_triage_proof_pack.js +74 -74
- package/lib/phase_10_freeze_baseline_pack.js +67 -67
- package/lib/phase_10_freeze_review_pack.js +64 -64
- package/lib/phase_10_gate_pack.js +57 -57
- package/lib/phase_10_long_tail_continuity_pack.js +80 -80
- package/lib/phase_10_long_tail_ecosystem_pack.js +68 -68
- package/lib/phase_10_niche_extension_registry_proof_pack.js +74 -74
- package/lib/phase_1_claude_mcp_pack.js +60 -60
- package/lib/phase_1_claude_mcp_proof_pack.js +57 -57
- package/lib/phase_1_ecosystem_pack.js +51 -51
- package/lib/phase_1_openai_codex_pack.js +60 -60
- package/lib/phase_1_openai_codex_proof_pack.js +57 -57
- package/lib/phase_2_base_proof_pack.js +71 -71
- package/lib/phase_2_base_usdc_proof_pack.js +72 -72
- package/lib/phase_2_closeout_pack.js +65 -65
- package/lib/phase_2_completion_pack.js +113 -113
- package/lib/phase_2_decision_record_pack.js +66 -66
- package/lib/phase_2_decision_resolution_pack.js +69 -69
- package/lib/phase_2_eth_proof_pack.js +70 -70
- package/lib/phase_2_evm_base_proof_pack.js +73 -73
- package/lib/phase_2_evm_proof_pack.js +71 -71
- package/lib/phase_2_flip_preview_pack.js +60 -60
- package/lib/phase_2_freeze_review_pack.js +99 -99
- package/lib/phase_2_gate_pack.js +77 -77
- package/lib/phase_2_payment_rails_pack.js +71 -71
- package/lib/phase_2_usdc_proof_pack.js +71 -71
- package/lib/phase_3_brc_proof_pack.js +81 -81
- package/lib/phase_3_bsv_teranode_proof_pack.js +81 -81
- package/lib/phase_3_closeout_pack.js +62 -62
- package/lib/phase_3_completion_pack.js +92 -92
- package/lib/phase_3_decision_record_pack.js +64 -64
- package/lib/phase_3_decision_resolution_pack.js +69 -69
- package/lib/phase_3_freeze_baseline_pack.js +67 -67
- package/lib/phase_3_freeze_review_pack.js +80 -80
- package/lib/phase_3_gate_pack.js +76 -76
- package/lib/phase_3_metanet_proof_pack.js +81 -81
- package/lib/phase_3_native_bsv_pack.js +89 -89
- package/lib/phase_3_native_continuity_pack.js +82 -82
- package/lib/phase_4_attestation_proof_pack.js +75 -75
- package/lib/phase_4_closeout_pack.js +45 -45
- package/lib/phase_4_completion_pack.js +82 -82
- package/lib/phase_4_decision_record_pack.js +54 -54
- package/lib/phase_4_decision_resolution_pack.js +45 -45
- package/lib/phase_4_erc8004_proof_pack.js +76 -76
- package/lib/phase_4_freeze_baseline_pack.js +67 -67
- package/lib/phase_4_freeze_review_pack.js +68 -68
- package/lib/phase_4_gate_pack.js +58 -58
- package/lib/phase_4_identity_registry_proof_pack.js +75 -75
- package/lib/phase_4_identity_trust_pack.js +73 -73
- package/lib/phase_4_trust_continuity_pack.js +86 -86
- package/lib/phase_5_antelope_proof_pack.js +76 -76
- package/lib/phase_5_closeout_pack.js +44 -44
- package/lib/phase_5_completion_pack.js +82 -82
- package/lib/phase_5_decision_record_pack.js +54 -54
- package/lib/phase_5_decision_resolution_pack.js +45 -45
- package/lib/phase_5_freeze_baseline_pack.js +67 -67
- package/lib/phase_5_freeze_review_pack.js +68 -68
- package/lib/phase_5_gate_pack.js +58 -58
- package/lib/phase_5_major_rails_continuity_pack.js +86 -86
- package/lib/phase_5_major_rails_pack.js +74 -74
- package/lib/phase_5_proton_xpr_proof_pack.js +76 -76
- package/lib/phase_5_solana_proof_pack.js +76 -76
- package/lib/phase_6_autogen_proof_pack.js +74 -74
- package/lib/phase_6_closeout_pack.js +46 -46
- package/lib/phase_6_completion_pack.js +77 -77
- package/lib/phase_6_decision_record_pack.js +54 -54
- package/lib/phase_6_decision_resolution_pack.js +53 -53
- package/lib/phase_6_framework_continuity_pack.js +81 -81
- package/lib/phase_6_framework_runtime_pack.js +68 -68
- package/lib/phase_6_freeze_baseline_pack.js +68 -68
- package/lib/phase_6_freeze_review_pack.js +65 -65
- package/lib/phase_6_gate_pack.js +59 -59
- package/lib/phase_6_langchain_proof_pack.js +74 -74
- package/lib/phase_6_langgraph_proof_pack.js +74 -74
- package/lib/phase_6_semantic_kernel_proof_pack.js +74 -74
- package/lib/phase_7_closeout_pack.js +45 -45
- package/lib/phase_7_completion_pack.js +85 -85
- package/lib/phase_7_decision_record_pack.js +53 -53
- package/lib/phase_7_decision_resolution_pack.js +53 -53
- package/lib/phase_7_event_system_continuity_pack.js +89 -89
- package/lib/phase_7_event_system_pack.js +76 -76
- package/lib/phase_7_freeze_baseline_pack.js +74 -74
- package/lib/phase_7_freeze_review_pack.js +65 -65
- package/lib/phase_7_gate_pack.js +58 -58
- package/lib/phase_7_kafka_proof_pack.js +76 -76
- package/lib/phase_7_mqtt_proof_pack.js +76 -76
- package/lib/phase_7_nats_proof_pack.js +76 -76
- package/lib/phase_7_webhook_event_bus_proof_pack.js +76 -76
- package/lib/phase_8_closeout_pack.js +46 -46
- package/lib/phase_8_completion_pack.js +82 -82
- package/lib/phase_8_decision_record_pack.js +54 -54
- package/lib/phase_8_decision_resolution_pack.js +53 -53
- package/lib/phase_8_external_receipt_import_proof_pack.js +74 -74
- package/lib/phase_8_external_result_import_proof_pack.js +74 -74
- package/lib/phase_8_freeze_baseline_pack.js +71 -71
- package/lib/phase_8_freeze_review_pack.js +64 -64
- package/lib/phase_8_gate_pack.js +58 -58
- package/lib/phase_8_proof_bridge_continuity_pack.js +86 -86
- package/lib/phase_8_proof_bridges_pack.js +72 -72
- package/lib/phase_8_proof_bundle_normalization_proof_pack.js +74 -74
- package/lib/phase_9_closeout_pack.js +46 -46
- package/lib/phase_9_completion_pack.js +82 -82
- package/lib/phase_9_custody_refs_proof_pack.js +74 -74
- package/lib/phase_9_decision_record_pack.js +54 -54
- package/lib/phase_9_decision_resolution_pack.js +53 -53
- package/lib/phase_9_freeze_baseline_pack.js +71 -71
- package/lib/phase_9_freeze_review_pack.js +64 -64
- package/lib/phase_9_gate_pack.js +58 -58
- package/lib/phase_9_operator_accounting_bridges_proof_pack.js +74 -74
- package/lib/phase_9_treasury_connectivity_pack.js +72 -72
- package/lib/phase_9_treasury_continuity_pack.js +86 -86
- package/lib/phase_9_treasury_destinations_proof_pack.js +74 -74
- package/lib/phase_program_pack.js +47 -47
- package/lib/proof_bridge_lane_contract.js +82 -82
- package/lib/proof_truth_contract.js +224 -224
- package/lib/provenance_lane_contract.js +54 -54
- package/lib/provider_lane_contract.js +67 -67
- package/lib/public_surface_policy_contract.js +111 -111
- package/lib/publish_plan.js +51 -51
- package/lib/release_candidate.js +50 -50
- package/lib/release_center.js +1037 -1037
- package/lib/release_history.js +206 -206
- package/lib/release_manifest.js +114 -114
- package/lib/release_pack.js +391 -391
- package/lib/result_package_trust_lane_contract.js +74 -74
- package/lib/review_intelligence.js +100 -100
- package/lib/role_freeze.js +436 -436
- package/lib/shared_signals_lane_contract.js +54 -54
- package/lib/signed_audit_provenance_contract.js +93 -93
- package/lib/telemetry_lane_contract.js +54 -54
- package/lib/treasury_proof_lane_contract.js +83 -83
- package/lib/trust_intelligence.js +106 -106
- package/lib/trust_portability_boundary_contract.js +66 -66
- package/lib/trust_portability_pack.js +224 -224
- package/lib/verification_service_pack.js +149 -149
- package/package.json +98 -97
- package/proof_sdk.js +6561 -6265
- package/reference/python/README.md +35 -35
- package/reference/python/__pycache__/xnya_reference.cpython-314.pyc +0 -0
- package/reference/python/requirements-optional.txt +1 -1
- package/reference/python/verify_vectors.py +223 -223
- package/reference/python/xnya_reference.py +810 -810
- package/reference/rust/Cargo.toml +11 -11
- package/reference/rust/README.md +28 -28
- package/reference/rust/src/lib.rs +87 -87
- package/scripts/registry_cli.js +157 -157
- package/scripts/verify_all.js +603 -603
- package/scripts/verify_control_plane_contracts.js +34 -34
- package/scripts/verify_control_plane_routes.js +70 -70
- package/scripts/verify_examples.js +19 -19
- package/scripts/verify_external_proof_import_gate.js +84 -84
- package/scripts/verify_forgery_resistance.js +281 -0
- package/scripts/verify_integrations.js +170 -170
- package/scripts/verify_native_hybrid_design_gate.js +114 -114
- package/scripts/verify_reference_promotion_gate.js +74 -74
- package/scripts/verify_reference_python.js +49 -49
- package/scripts/verify_reference_python_crypto.js +87 -87
- package/scripts/verify_reference_rust_scaffold.js +50 -50
- package/scripts/verify_release_candidate.js +131 -131
- package/scripts/verify_service.js +3038 -2940
- package/scripts/verify_tooling.js +1251 -1251
- package/scripts/verify_trust_portability.js +56 -56
- package/scripts/verify_vectors.js +192 -192
- package/scripts/verify_verification_services.js +56 -56
- package/server.js +4223 -4099
- package/vectors/adversarial-vectors.json +552 -552
- package/vectors/conformance-vectors.json +446 -446
- package/vectors/native-atom-vectors.json +101 -101
- package/vectors/native-payload-profile-vectors.json +50 -50
- package/OPERATIONS_RUNBOOK.md +0 -50
- package/OPERATOR_START_HERE.md +0 -67
- package/PROGRAM_COMPLETE_RELEASE.md +0 -52
- package/PROGRAM_STATUS.md +0 -57
- package/PUBLISH_PLAN.md +0 -25
- package/RELEASE_CHECKLIST.md +0 -16
package/XNYA_CONFORMANCE_MARK.md
CHANGED
|
@@ -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
|