xytara 2.5.0 → 2.7.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 (71) hide show
  1. package/.env.example +29 -0
  2. package/BSV_TERANODE_SETUP.md +43 -0
  3. package/README.md +66 -7
  4. package/REAL_PAYMENT_SETUP.md +61 -0
  5. package/RELEASE_NOTES.md +23 -6
  6. package/SERVICE_CONTRACT.md +31 -0
  7. package/START_HERE.md +107 -6
  8. package/TREASURY_DESTINATIONS.example.json +66 -0
  9. package/TREASURY_DESTINATIONS.production.template.json +108 -0
  10. package/adapters/examples/langchain-reference-execution-adapter.js +81 -0
  11. package/adapters/examples/langchain-reference-execution-adapter.manifest.json +79 -0
  12. package/adapters/examples/langgraph-reference-execution-adapter.js +81 -0
  13. package/adapters/examples/langgraph-reference-execution-adapter.manifest.json +79 -0
  14. package/bin/xytara-first-run.js +244 -0
  15. package/bin/xytara.js +30 -5
  16. package/integrations/dispatch.js +7 -2
  17. package/integrations/registry.js +123 -2
  18. package/lib/activity_audit_contract.js +322 -0
  19. package/lib/adapter_depth_contract.js +156 -0
  20. package/lib/bolt_lane_contract.js +55 -0
  21. package/lib/bolt_payment_front.js +172 -0
  22. package/lib/capability_execution_truth.js +269 -0
  23. package/lib/capability_registry.js +39 -2
  24. package/lib/checkout_event_security.js +142 -0
  25. package/lib/command_flow.js +169 -36
  26. package/lib/commerce_artifacts.js +23 -4
  27. package/lib/commerce_checkout.js +134 -4
  28. package/lib/commerce_client.js +20 -0
  29. package/lib/commerce_economics.js +109 -9
  30. package/lib/commerce_runtime.js +38 -2
  31. package/lib/commerce_shell.js +4 -2
  32. package/lib/external_execution_runtime.js +132 -0
  33. package/lib/go_live_operator_pack.js +339 -0
  34. package/lib/http_transport.js +32 -0
  35. package/lib/integration_matrix_contract.js +6 -0
  36. package/lib/l402_lane_contract.js +55 -0
  37. package/lib/l402_payment_front.js +192 -0
  38. package/lib/network_transport.js +110 -0
  39. package/lib/operator_intelligence.js +215 -1
  40. package/lib/payment_config.js +80 -3
  41. package/lib/payment_front_registry.js +53 -0
  42. package/lib/payment_protocol_contract.js +165 -0
  43. package/lib/payment_verification.js +23 -3
  44. package/lib/pricing_optimization_contract.js +556 -0
  45. package/lib/release_history.js +27 -0
  46. package/lib/request_rate_limit.js +144 -0
  47. package/lib/runtime_bridge.js +10 -2
  48. package/lib/runtime_operations_worker.js +282 -0
  49. package/lib/settlement_bsv_live.js +79 -4
  50. package/lib/stripe_mpp_lane_contract.js +3 -0
  51. package/lib/stripe_mpp_payment_front.js +158 -0
  52. package/lib/treasury_destinations_contract.js +543 -0
  53. package/lib/treasury_egress_policy_contract.js +91 -0
  54. package/package.json +15 -21
  55. package/scripts/generate_treasury_destinations.js +195 -0
  56. package/scripts/registry_cli.js +275 -0
  57. package/scripts/verify_adapters.js +554 -0
  58. package/scripts/verify_all.js +4963 -0
  59. package/scripts/verify_examples.js +19 -0
  60. package/scripts/verify_integrations.js +620 -0
  61. package/scripts/verify_production_readiness.js +251 -0
  62. package/scripts/verify_release_candidate.js +54 -0
  63. package/scripts/verify_service.js +14810 -0
  64. package/scripts/verify_tooling.js +1404 -0
  65. package/server.js +627 -88
  66. package/OPERATIONS_RUNBOOK.md +0 -66
  67. package/OPERATOR_START_HERE.md +0 -63
  68. package/PROGRAM_COMPLETE_RELEASE.md +0 -63
  69. package/PROGRAM_STATUS.md +0 -57
  70. package/PUBLISH_PLAN.md +0 -14
  71. package/RELEASE_CHECKLIST.md +0 -16
package/.env.example CHANGED
@@ -21,6 +21,35 @@ XYTARA_BSV_TERANODE_SATS_PER_USD_CENT=100
21
21
  XYTARA_BSV_TERANODE_SETTLEMENT_RUNTIME_MODE=mock
22
22
  XYTARA_CREDIT_BRIDGE_BEARER_TOKEN=
23
23
  XYTARA_ACCOUNT_AUTH_BEARER_TOKEN=
24
+ XYTARA_CALLBACK_DELIVERY_ENABLED=true
25
+ XYTARA_CALLBACK_SIGNING_SECRET=
26
+ XYTARA_CALLBACK_TIMEOUT_MS=5000
27
+ XYTARA_CALLBACK_MAX_ATTEMPTS=5
28
+ XYTARA_CALLBACK_RETRY_BASE_MS=2000
29
+ XYTARA_RUNTIME_WORKER_INTERVAL_MS=500
30
+ XYTARA_SETTLEMENT_REFRESH_INTERVAL_MS=1500
31
+ XYTARA_RATE_LIMIT_ENABLED=true
32
+ XYTARA_RATE_LIMIT_WINDOW_MS=60000
33
+ XYTARA_RATE_LIMIT_MAX_REQUESTS=600
34
+ XYTARA_EXTERNAL_EXECUTION_REQUIRED=false
35
+ XYTARA_EXECUTION_TARGETS_JSON=[]
36
+ XYTARA_L402_ENABLED=false
37
+ XYTARA_L402_SHARED_SECRET=
38
+ XYTARA_BOLT_ENABLED=false
39
+ XYTARA_BOLT_SHARED_SECRET=
40
+ XYTARA_BOLT_NETWORK=mainnet
41
+ XYTARA_BOLT_PROOF_MODE=spv_or_block_header_verifiable
42
+ XYTARA_BOLT_MAX_AGE_SECONDS=300
43
+ XYTARA_MPP_ENABLED=false
44
+ XYTARA_MPP_SHARED_SECRET=
45
+ XYTARA_MPP_PROVIDER=stripe_tempo_compatible
46
+ XYTARA_MPP_SETTLEMENT_FAMILY=cards_or_stablecoin_or_lightning
47
+ XYTARA_MPP_MAX_AGE_SECONDS=300
48
+ XYTARA_NETWORK_DNS_RESULT_ORDER=verbatim
49
+ XYTARA_NETWORK_PREFERRED_IP_FAMILY=auto
50
+ XYTARA_EXTERNAL_EXECUTION_IP_FAMILY=auto
51
+ XYTARA_CALLBACK_IP_FAMILY=auto
52
+ XYTARA_SETTLEMENT_IP_FAMILY=auto
24
53
  XYTARA_STATE_FILE=./var/xytara/runtime-state.json
25
54
  XYTARA_STATE_SNAPSHOT_INTERVAL_MS=5000
26
55
  XYTARA_SUPABASE_URL=
@@ -13,6 +13,8 @@ Use this guide when you want the public package to emit BSV/Teranode-aware payme
13
13
 
14
14
  This is still a runtime-side settlement contract, not a bundled bank or broadcaster. Real external custody still depends on the BSV/Teranode infrastructure you configure behind it.
15
15
 
16
+ The runtime worker now also auto-submits and auto-refreshes settlement records after payment acceptance, so a configured live rail can progress without manual operator calls.
17
+
16
18
  ## Recommended Environment
17
19
 
18
20
  ```env
@@ -31,6 +33,7 @@ XYTARA_BSV_TERANODE_RPC_API_KEY=
31
33
  XYTARA_BSV_TERANODE_RPC_AUTH_HEADER=authorization
32
34
  XYTARA_BSV_TERANODE_RPC_AUTH_SCHEME=
33
35
  XYTARA_BSV_TERANODE_OBSERVER_URL=
36
+ XYTARA_SETTLEMENT_REFRESH_INTERVAL_MS=1500
34
37
  ```
35
38
 
36
39
  Optional:
@@ -63,9 +66,20 @@ then `xytara` can derive a BSV/Teranode treasury destination automatically for `
63
66
  If you need more explicit destination control, use:
64
67
 
65
68
  - `XYTARA_TREASURY_DESTINATIONS_JSON`
69
+ - `XYTARA_TREASURY_DESTINATIONS_PATH`
70
+
71
+ For a file-driven example, use:
72
+
73
+ - [TREASURY_DESTINATIONS.example.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/TREASURY_DESTINATIONS.example.json)
66
74
 
67
75
  with a `bsv_teranode` entry.
68
76
 
77
+ For `bsv_teranode`, the key real landing field is:
78
+
79
+ - `external_ref`
80
+
81
+ That should hold the actual BSV address or paymail you want accepted funds to land on.
82
+
69
83
  ## Runtime Behavior
70
84
 
71
85
  For a native `bsv_teranode` quote:
@@ -84,9 +98,16 @@ For live settlement follow-through after payment acceptance, use:
84
98
 
85
99
  - `GET /v1/settlement/bsv-teranode`
86
100
  - `GET /v1/settlement/bsv-teranode/:settlement_id`
101
+ - `POST /v1/settlement/bsv-teranode/:settlement_id/submission-material`
87
102
  - `POST /v1/settlement/bsv-teranode/:settlement_id/submit`
88
103
  - `POST /v1/settlement/bsv-teranode/:settlement_id/refresh`
89
104
 
105
+ In current runtime posture:
106
+
107
+ - the background runtime worker auto-submits newly created settlement records
108
+ - the same worker auto-refreshes pending live settlements on the configured interval
109
+ - the manual `submit` and `refresh` routes still exist for operator override and debugging
110
+
90
111
  If the signed payment payload already carries:
91
112
 
92
113
  - `bsv_teranode.txid`
@@ -99,6 +120,28 @@ If the signed payment payload also carries:
99
120
 
100
121
  then `arc` mode can submit the raw transaction through ARC before refresh.
101
122
 
123
+ If a settlement record already exists but was created before the payment payload carried finality material, attach the material through the operator route before calling `submit`:
124
+
125
+ ```powershell
126
+ $headers = @{
127
+ Authorization = "Bearer $env:XYTARA_ACCOUNT_AUTH_BEARER_TOKEN"
128
+ "Content-Type" = "application/json"
129
+ }
130
+
131
+ $body = @{
132
+ txid = "64_HEX_CHARACTER_BSV_TXID"
133
+ # or raw_tx = "RAW_TRANSACTION_HEX_FOR_ARC_SUBMISSION"
134
+ provider_ref = "operator-finality-material"
135
+ } | ConvertTo-Json
136
+
137
+ Invoke-RestMethod "https://xytara.onrender.com/v1/settlement/bsv-teranode/SETTLEMENT_ID/submission-material" `
138
+ -Method Post `
139
+ -Headers $headers `
140
+ -Body $body
141
+ ```
142
+
143
+ The route only accepts a 64-character hex `txid` or raw transaction hex, preserves the existing settlement status, clears prior submission-material errors, and leaves finality to the normal `submit` and `refresh` path.
144
+
102
145
  ## Notes
103
146
 
104
147
  - `bsv_teranode` is the canonical public settlement name
package/README.md CHANGED
@@ -1,28 +1,84 @@
1
1
  # xytara
2
2
 
3
- `xytara` is the machine transaction and execution layer for the final two-repo public stack.
3
+ `xytara` is the runtime and payment layer for the public two-repo stack.
4
4
 
5
5
  It exists to let agents, developers, and systems:
6
6
 
7
7
  - discover tasks and workflows
8
8
  - quote work before execution
9
9
  - pay through supported payment paths
10
+ - fund reusable balances and credits
10
11
  - execute tasks and workflows
12
+ - dispatch runtime work
11
13
  - receive deliverables
14
+ - inspect usage, metering, and lifecycle state
15
+ - reconcile payment and settlement outcomes
12
16
  - inspect lifecycle state
13
17
  - operate through summaries and dashboards
18
+ - review disputes, refunds, and remediation flows
14
19
  - integrate third-party adapters
15
20
  - emit proof-compatible facts for `xoonya` verification
16
21
 
17
- This repo is the hot-state commerce layer. It does not define base proof semantics. It references and emits proof-compatible facts, while `xoonya` owns canonical proof.
22
+ This repo is the runtime layer. It does not define base proof semantics. It references and emits proof-compatible facts, while `xoonya` owns canonical proof.
18
23
 
19
24
  The 10-phase public program is now complete. `xytara` is in terminal closeout posture rather than active milestone build posture.
20
25
 
26
+ ## Public Boundary
27
+
28
+ The public adoption story is intentionally simple:
29
+
30
+ - install
31
+ - discover
32
+ - quote
33
+ - pay or spend credits
34
+ - execute
35
+ - receive deliverables
36
+ - hand off to `xoonya` when proof or review is needed
37
+
38
+ Public docs and package surfaces should help builders integrate and pay for useful work. Real treasury destinations, custody details, and operator-only controls belong in private runtime configuration and operator handling, not in public marketing surfaces.
39
+
40
+ ## Universal Runtime Shape
41
+
42
+ `xytara` is intended to be usable from:
43
+
44
+ - CLI and terminal
45
+ - direct API calls
46
+ - chat and agent environments that can issue HTTP calls
47
+ - browsers and hosted checkout flows
48
+ - operating-system or service wrappers
49
+ - partner systems that need to add adapters or registry integrations
50
+
51
+ The shortest public runtime loop is:
52
+
53
+ - discover
54
+ - quote
55
+ - pay or spend credits
56
+ - execute
57
+ - receive deliverables
58
+ - inspect results and economic state
59
+ - hand off into `xoonya` when proof or review is required
60
+
61
+ The current runtime breadth already includes:
62
+
63
+ - discovery and workflow lookup
64
+ - pricing and quote generation
65
+ - direct machine payment
66
+ - credits, grants, entitlements, and delegated spend
67
+ - execution, result packages, and delivery
68
+ - usage metering and account economics
69
+ - hosted checkout and runtime-bridge dispatch surfaces
70
+ - disputes, refunds, and remediation
71
+ - activity ledger, reconciliation, and treasury-control visibility
72
+ - adapter registration, review, and promotion surfaces
73
+
21
74
  ## One-Line After Install
22
75
 
23
76
  If you only run two commands after install, use:
24
77
 
25
78
  - `xytara start-here`
79
+ - `xytara first-run`
80
+ - `xytara first-run --run-quote --account ACCOUNT_REF --pretty`
81
+ - `xytara first-run --execute-with-credits --account ACCOUNT_REF --pretty`
26
82
  - `xytara release --summary`
27
83
 
28
84
  If you want the shortest machine-readable discovery path, inspect:
@@ -43,13 +99,10 @@ If you are new to the public stack, use this order:
43
99
  3. run `npm run verify:all`
44
100
  4. use [FINAL_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/FINAL_CONTRACT.md) and [SERVICE_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/SERVICE_CONTRACT.md) as the durable public contract
45
101
 
46
- If you are evaluating the post-program operating posture, read:
102
+ If you are reading the GitHub repo and want deeper product context beyond the npm starter path, continue with:
47
103
 
48
- - [PROGRAM_STATUS.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/PROGRAM_STATUS.md)
49
- - [OPERATOR_START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/OPERATOR_START_HERE.md)
50
- - [OPERATIONS_RUNBOOK.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/OPERATIONS_RUNBOOK.md)
51
- - [PROGRAM_COMPLETE_RELEASE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/PROGRAM_COMPLETE_RELEASE.md)
52
104
  - [WHY_XYTARA_XOONYA.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/WHY_XYTARA_XOONYA.md)
105
+ - [PARTNER_READY_PATH.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/PARTNER_READY_PATH.md)
53
106
 
54
107
  If you want one concrete cross-repo adoption story, start with:
55
108
 
@@ -81,6 +134,10 @@ The fastest copy-and-adapt third-party starter now lives under:
81
134
  - `adapters/examples/minimal-third-party-execution-registration.record.json`
82
135
  - `adapters/examples/minimal-third-party-execution.certification-pack.json`
83
136
  - `adapters/examples/minimal-third-party-execution.submission-bundle.json`
137
+ - `adapters/examples/langgraph-reference-execution-adapter.manifest.json`
138
+ - `adapters/examples/langgraph-reference-execution-adapter.js`
139
+ - `adapters/examples/langchain-reference-execution-adapter.manifest.json`
140
+ - `adapters/examples/langchain-reference-execution-adapter.js`
84
141
 
85
142
  If you are wiring the native BSV settlement base, continue with:
86
143
 
@@ -583,6 +640,8 @@ Initial certification starts with:
583
640
  npm run verify:adapters
584
641
  ```
585
642
 
643
+ The LangGraph and LangChain reference adapters are local contract adapters. They normalize framework-style graph, chain, checkpoint, trace, and context payloads and emit proof-compatible execution facts. They do not claim live external framework-provider execution.
644
+
586
645
  The current seed freezes the starter contract for:
587
646
 
588
647
  - adapter identity
@@ -35,6 +35,36 @@ You can also load the wallet registry and treasury map from files through:
35
35
  - `XYTARA_WALLET_REGISTRY_PATH`
36
36
  - `XYTARA_TREASURY_DESTINATIONS_PATH`
37
37
 
38
+ For multi-rail treasury landings, use:
39
+
40
+ - [TREASURY_DESTINATIONS.example.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/TREASURY_DESTINATIONS.example.json)
41
+ - [TREASURY_DESTINATIONS.production.template.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/TREASURY_DESTINATIONS.production.template.json)
42
+
43
+ Important:
44
+
45
+ - yes, for rails you actually want to receive and store value on, you should enter real receiving destinations
46
+ - in `xytara`, that is the `external_ref` field for each rail
47
+ - for practical purposes, `external_ref` is where the real landing address / paymail / custody account / external receiving reference goes
48
+
49
+ Examples:
50
+
51
+ - `bsv_teranode`
52
+ - BSV address or paymail
53
+ - `evm` / `base`
54
+ - EVM address
55
+ - `usdc` / `dai`
56
+ - the stablecoin receiving address on the intended chain
57
+ - `monero`
58
+ - Monero address, only if you are explicitly enabling the internal optional privacy reserve
59
+
60
+ Recommended file-driven setup:
61
+
62
+ ```env
63
+ XYTARA_TREASURY_DESTINATIONS_PATH=./TREASURY_DESTINATIONS.production.json
64
+ ```
65
+
66
+ Then create `TREASURY_DESTINATIONS.production.json` from the production template and replace every placeholder `external_ref` with the real destination you control.
67
+
38
68
  ## What This Gives You
39
69
 
40
70
  With `local_signed` enabled:
@@ -53,8 +83,10 @@ With `local_signed` enabled:
53
83
  - nonce uniqueness
54
84
  - accepted payments are recorded into:
55
85
  - `payment-ledger`
86
+ - `activity-ledger`
56
87
  - `treasury-summary`
57
88
  - `rail-summary`
89
+ - `treasury-egress-policy`
58
90
  - `reconciliation-report`
59
91
 
60
92
  ## What It Does Not Do By Itself
@@ -77,6 +109,23 @@ That is where:
77
109
 
78
110
  become the actual real-world landing point for accepted funds.
79
111
 
112
+ For native `bsv_teranode`, the runtime can now:
113
+
114
+ - create settlement records automatically when payment is accepted
115
+ - auto-submit them when settlement runtime material is available
116
+ - auto-refresh them toward observed or confirmed state through the background runtime worker
117
+
118
+ That still does not remove the need for real merchant identity, real transport, and real operator-controlled destinations.
119
+
120
+ So the short operational rule is:
121
+
122
+ - no, you should not leave treasury rails as abstract names only
123
+ - yes, you should configure real landing destinations for each rail you claim is operational
124
+ - if a rail does not yet have a real destination, keep it visible as supported architecture, but do not claim it as an active treasury landing path
125
+ - public treasury surfaces now expose `public_claim_status`, `public_claim_allowed`, and `public_claim_boundary`; only rails with `public_claim_allowed: true` should be described as live landing paths
126
+ - rails with `readiness_template_only`, `partial_configuration_not_public_claim`, or `fallback_not_public_multi-rail_claim` are architecture/readiness surfaces until real per-rail destinations exist
127
+ - `internal_policy_gated_not_public` rails must stay out of public live-landing claims
128
+
80
129
  ## Best Current Public Model
81
130
 
82
131
  Use the stack like this:
@@ -94,8 +143,20 @@ If you want the native BSV path specifically, continue with [BSV_TERANODE_SETUP.
94
143
  After acceptance, inspect:
95
144
 
96
145
  - `GET /v1/payment-ledger`
146
+ - `GET /v1/activity-ledger`
97
147
  - `GET /v1/economics/accounts/:account_id/treasury-summary`
98
148
  - `GET /v1/economics/accounts/:account_id/rail-summary`
149
+ - `GET /v1/treasury-destinations`
150
+ - `GET /v1/treasury-destinations/operator-pack`
151
+ - `GET /v1/treasury-egress-policy`
99
152
  - `GET /v1/reconciliation-report`
100
153
 
101
154
  These tell you what was accepted, where it was routed in the runtime model, and what still needs reconciliation against the underlying real-world rail.
155
+
156
+ If `XYTARA_ACCOUNT_AUTH_BEARER_TOKEN` is configured, the operator-only routes above require that bearer token.
157
+
158
+ Public/private boundary:
159
+
160
+ - `GET /v1/treasury-destinations` is the safe readiness surface
161
+ - `GET /v1/treasury-destinations/operator-pack` is where real landing refs belong
162
+ - public website and public catalog surfaces should never expose actual treasury destination refs or custody-provider refs
package/RELEASE_NOTES.md CHANGED
@@ -1,10 +1,26 @@
1
- # xytara 2.5.0 Release Notes
1
+ # xytara 2.7.0 Release Notes
2
2
 
3
- `xytara` 2.5.0 is the adoption-surface line for contracts, providers, frameworks, protocols, payment lanes, settlement lanes, observability, provenance, artifact distribution, and rollout portability.
3
+ `xytara` 2.7.0 is the expansion-closeout release line for package-hardening, clean-consumer release smoke testing, and disciplined adapter/product claim boundaries.
4
+
5
+ Highlights:
6
+
7
+ - ships `scripts/` in the npm artifact so packaged verification commands are available to consumers
8
+ - adds release-candidate guards that fail if required verifier scripts are missing from `npm pack`
9
+ - participates in the Naxytra release-smoke harness that installs packed tarballs into a clean consumer project before synchronized release
10
+ - keeps the 2.6.0 expansion capabilities and adapter surfaces intact while closing the packaging reliability gap
11
+
12
+ # xytara 2.6.0 Release Notes
13
+
14
+ `xytara` 2.6.0 is the expansion release line for first-run execution polish, provider-backed adapter depth, and framework reference adapters while preserving the existing machine-commerce, settlement, observability, and release surfaces.
4
15
 
5
16
  Highlights:
6
17
 
7
18
  - umbrella CLI entrypoint with `xytara start-here`, plus `xytara run` and `xytara release`
19
+ - public first-run quote and credits-first execution posture for outside builders
20
+ - provider-backed `adapter.mcp.invoke` depth with concrete MCP tool binding
21
+ - executable LangGraph and LangChain reference framework adapters with manifests and proof-compatible execution facts
22
+ - adapter verifier coverage for provider and framework execution posture
23
+ - read-only operator observability across activity, payment, delivery, settlement, external credit grants, adapter failures, and pricing telemetry
8
24
  - first-class public contract lanes for `OpenAPI`, `AsyncAPI`, and `CloudEvents`
9
25
  - first-class provider, framework, protocol, and integration-matrix discovery surfaces
10
26
  - surfaced runtime breadth across `MCP`, `A2A`, `A2C`, `x402`, `Stripe MPP`, stablecoins, major rails, treasury, and registry-backed integrations
@@ -21,10 +37,11 @@ Recommended first checks:
21
37
  3. `npm run verify:release-candidate`
22
38
  4. `node examples/partner_launch_walkthrough.js`
23
39
  5. inspect `/v1/providers`, `/v1/frameworks`, `/v1/protocols`, and `/v1/integration-matrix`
24
- 6. inspect `/v1/mcp`, `/v1/a2a`, `/v1/a2c`, `/v1/x402`, and `/v1/settlement`
25
- 7. inspect `/v1/telemetry`, `/v1/provenance`, `/v1/artifact-distribution`, `/v1/shared-signals`, and `/v1/feature-control`
26
- 8. inspect `/v1/economics/accounts/:account_id/wallet-ledger-bundle`
27
- 9. inspect `/v1/economics/accounts/:account_id/network-participation-package`
40
+ 6. inspect `/v1/adapter-depth/summary` and `/v1/operator-observability/summary`
41
+ 7. inspect `/v1/mcp`, `/v1/a2a`, `/v1/a2c`, `/v1/x402`, and `/v1/settlement`
42
+ 8. inspect `/v1/telemetry`, `/v1/provenance`, `/v1/artifact-distribution`, `/v1/shared-signals`, and `/v1/feature-control`
43
+ 9. inspect `/v1/economics/accounts/:account_id/wallet-ledger-bundle`
44
+ 10. inspect `/v1/economics/accounts/:account_id/network-participation-package`
28
45
 
29
46
  Recommended first docs:
30
47
 
@@ -37,6 +37,8 @@ Core routes:
37
37
  - `GET /v1/a2c/summary`
38
38
  - `GET /v1/x402`
39
39
  - `GET /v1/x402/summary`
40
+ - `GET /v1/payment-protocols`
41
+ - `GET /v1/payment-protocols/summary`
40
42
  - `GET /v1/settlement`
41
43
  - `GET /v1/settlement/summary`
42
44
  - `GET /v1/stripe-mpp`
@@ -47,6 +49,22 @@ Core routes:
47
49
  - `GET /v1/major-rails/summary`
48
50
  - `GET /v1/treasury`
49
51
  - `GET /v1/treasury/summary`
52
+ - `GET /v1/pricing-optimization`
53
+ - `GET /v1/pricing-optimization/summary`
54
+ - `GET /v1/pricing-optimization/quote-abandonment-summary`
55
+ - `GET /v1/pricing-optimization/quote-cohorts`
56
+ - `GET /v1/pricing-optimization/recommendations`
57
+ - `GET /v1/activity-ledger`
58
+ - `GET /v1/activity-ledger/summary`
59
+ - `GET /v1/operator-observability`
60
+ - `GET /v1/operator-observability/summary`
61
+ - `GET /v1/treasury-destinations`
62
+ - `GET /v1/treasury-destinations/summary`
63
+ - `GET /v1/treasury-destinations/operator-pack`
64
+ - `GET /v1/treasury-destinations/operator-pack/summary`
65
+ - `POST /v1/treasury-destinations/validate-preview`
66
+ - `GET /v1/treasury-egress-policy`
67
+ - `GET /v1/treasury-egress-policy/summary`
50
68
  - `GET /v1/erc8004`
51
69
  - `GET /v1/erc8004/summary`
52
70
  - `GET /v1/event-systems`
@@ -87,11 +105,21 @@ Operational note:
87
105
  - for production acceptance, `POST /x402/commands/execute` and `POST /x402/mcp/tools/invoke` should normally run with `XYTARA_PAYMENT_VERIFICATION_MODE=local_signed` or a stronger verifier mode
88
106
  - `GET /v1/identity-interop` exposes how native authority and machine identity map to `JWT`, `DID/VC`, and `SD-JWT VC` interop lanes without replacing the native runtime authority model
89
107
  - `GET /v1/x402` exposes the first-class quote -> challenge -> pay -> execute lane for paid machine execution
108
+ - `GET /v1/payment-protocols` makes the charging boundary explicit: keep auth, discovery, docs, catalog, and lightweight preview free while keeping execution, credit consumption, and consequence-bearing runtime work paid
90
109
  - `GET /v1/settlement` exposes the settlement family map across native BSV/Teranode, EVM/Base/USDC, and the major-rails family
91
110
  - `GET /v1/stripe-mpp` exposes the hosted-checkout and external-funding entry lane without making provider-specific checkout semantics the center of the stack
92
111
  - `GET /v1/stablecoins` exposes the current USDC/Base runtime family and marks Circle Nanopayments/CCTP as adapter-ready extensions instead of pretending they are already core first-party rails
93
112
  - `GET /v1/major-rails` exposes Solana plus the Antelope/Proton XPR/Metal family as one practical non-default settlement lane
94
113
  - `GET /v1/treasury` exposes the treasury-connectivity posture and the internal reserve doctrine of BSV/Teranode plus DAI/USDC, with Monero retained only as an optional hidden privacy reserve
114
+ - `GET /v1/pricing-optimization` exposes minimum charge floors, starter pricing posture, credit-pack breakpoints, high-consequence premium multipliers, and quote abandonment visibility so revenue posture is reviewable instead of implicit
115
+ - `GET /v1/pricing-optimization/quote-cohorts` and `GET /v1/pricing-optimization/recommendations` expose how quote conversion and abandonment behave by pricing band, payment protocol, and settlement mode so monetization tuning can be data-shaped rather than guessed
116
+ - `GET /v1/activity-ledger` exposes one operator-grade ledger across quote, payment, settlement, delivery, dispute, refund, credit-grant, bridge, and integration-admission activity so operators can answer who did what, paid what, received what, and through which route
117
+ - `GET /v1/operator-observability` exposes a protected read-only pack across activity, payment, delivery, settlement, adapter failure, credit-grant, and pricing telemetry posture without moving funds or submitting settlements
118
+ - `GET /v1/treasury-destinations` is public-readiness only: it shows which rails are operationally configured without exposing actual landing references
119
+ - `GET /v1/treasury-destinations/operator-pack` is the operator-only custody surface and is where real destination references belong
120
+ - `POST /v1/treasury-destinations/validate-preview` lets operators preview per-rail custody readiness before they claim a rail as operational
121
+ - `GET /v1/treasury-egress-policy` makes the treasury black-hole posture explicit: funds can come in easily through configured rails, but treasury release remains blocked until manual operator review with explicit reason and signoff
122
+ - when `XYTARA_ACCOUNT_AUTH_BEARER_TOKEN` is configured, `GET /v1/activity-ledger`, `GET /v1/operator-observability`, `GET /v1/treasury-destinations/operator-pack`, `POST /v1/treasury-destinations/validate-preview`, and `GET /v1/treasury-egress-policy` require that bearer token
95
123
  - `GET /v1/providers` exposes the OpenAI Codex and Claude/MCP family as first-class provider entry lanes
96
124
  - `GET /v1/frameworks` exposes LangGraph, LangChain, AutoGen, and Semantic Kernel as the primary runtime framework lanes, with CrewAI and LlamaIndex surfaced as registry-backed framework breadth
97
125
  - `GET /v1/protocols` exposes the canonical protocol and transport family across MCP, A2A, A2C, ACP, gRPC, Kafka, NATS, MQTT, ROS2, and webhook-event-bus posture
@@ -103,6 +131,9 @@ Operational note:
103
131
  - `GET /v1/feature-control` exposes OpenFeature/OFREP-aligned rollout and policy portability posture across pricing, authority, identity, trust, and release gates
104
132
  - accepted payments then flow into payment-ledger, treasury-summary, rail-summary, and reconciliation surfaces
105
133
  - the default first-party settlement posture is now `bsv_teranode`, and `x402` challenge quotes carry native BSV/Teranode settlement hints when that default path is in use
134
+ - the default machine-payment lane remains `x402`, while credits and `stripe_mpp` provide repeat-use and human-funding paths, and future protocol expansion should normally enter through the payment front rather than replacing the default machine lane
135
+ - quote-based pricing is intentionally preferred over flat pricing because it protects margin on high-consequence work without overpricing small utility flows, but quote abandonment and conversion should still be monitored through the pricing-optimization layer
136
+ - production acceptance on `bsv_teranode`, `evm`, `base`, `usdc`, `dai`, or `monero` should only be claimed once the corresponding treasury destination is explicitly configured and visible through `GET /v1/treasury-destinations`, with real custody details limited to `GET /v1/treasury-destinations/operator-pack`
106
137
  - in production, `POST /v1/credit-bridge/grants` should normally require `authorization: Bearer <token>` backed by `XYTARA_CREDIT_BRIDGE_BEARER_TOKEN`
107
138
  - in production, spend-credential issuance/revoke should normally require `authorization: Bearer <token>` backed by `XYTARA_ACCOUNT_AUTH_BEARER_TOKEN`
108
139
 
package/START_HERE.md CHANGED
@@ -18,6 +18,45 @@ Its job is to let a caller:
18
18
 
19
19
  ## 2. Run The Fastest Real Example
20
20
 
21
+ For an outside builder, the shortest public spine is:
22
+
23
+ ```text
24
+ quote -> pay/credits -> execute -> prove
25
+ ```
26
+
27
+ Open:
28
+
29
+ ```text
30
+ https://www.naxytra.com/v1/first-run-path
31
+ https://www.naxytra.com/v1/first-run-kit
32
+ ```
33
+
34
+ The first safe runtime command is quote-only:
35
+
36
+ ```bash
37
+ xytara first-run --run-quote --account ACCOUNT_REF --pretty
38
+ ```
39
+
40
+ The underlying command is:
41
+
42
+ ```bash
43
+ xytara-run --url https://xytara.onrender.com --account ACCOUNT_REF --task adapter.mcp.invoke --command mcp.invoke:summarize --body-json "{\"tool_name\":\"summarize\",\"arguments\":{\"text\":\"Summarize the Naxytra first-run path in one sentence.\"}}" --quote-only --pretty
44
+ ```
45
+
46
+ Then execute with direct signed payment or a credits-first funded account:
47
+
48
+ ```bash
49
+ xytara first-run --execute-with-credits --account ACCOUNT_REF --pretty
50
+ ```
51
+
52
+ Then hand the result into `xoonya` for proof review and verification:
53
+
54
+ ```bash
55
+ xoonya first-run --verify-native --pretty
56
+ ```
57
+
58
+ ## 3. Run The Fastest Local Package Example
59
+
21
60
  Run:
22
61
 
23
62
  ```bash
@@ -37,7 +76,7 @@ If you want the shortest neutral external-adoption bundle, continue with:
37
76
  - [EXAMPLE_PATHS.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/EXAMPLE_PATHS.md)
38
77
  - `node examples/partner_launch_walkthrough.js`
39
78
 
40
- ## 3. Verify The Whole Package
79
+ ## 4. Verify The Whole Package
41
80
 
42
81
  Run:
43
82
 
@@ -53,9 +92,22 @@ If you are evaluating a real deployment that will use grants, credits, entitleme
53
92
  npm run verify:production-readiness
54
93
  ```
55
94
 
56
- That gate is stricter than local verification and expects runtime persistence to be configured through `XYTARA_STATE_FILE` on persistent disk or `XYTARA_SUPABASE_*`.
95
+ That gate is stricter than local verification and expects:
96
+
97
+ - runtime persistence through `XYTARA_STATE_FILE` on persistent disk or `XYTARA_SUPABASE_*`
98
+ - signed payment verification with a real wallet registry
99
+ - real operator bearer tokens
100
+ - treasury destinations configured through `XYTARA_TREASURY_DESTINATIONS_PATH`
101
+ - callback signing configured through `XYTARA_CALLBACK_SIGNING_SECRET`
102
+ - hosted checkout event verification configured through `XYTARA_CHECKOUT_WEBHOOK_SECRET`
103
+ - `L402` ingress verification configured through `XYTARA_L402_SHARED_SECRET` when `XYTARA_L402_ENABLED=true`
104
+ - `BOLT` ingress verification configured through `XYTARA_BOLT_SHARED_SECRET` when `XYTARA_BOLT_ENABLED=true`
105
+ - `MPP` ingress verification configured through `XYTARA_MPP_SHARED_SECRET` when `XYTARA_MPP_ENABLED=true`
106
+ - write-path rate limiting configured and enabled
107
+ - execution targets configured through `XYTARA_EXECUTION_TARGETS_JSON` whenever you require provider-backed execution for live sold capabilities
108
+ - non-mock native settlement runtime mode
57
109
 
58
- ## 4. Read The Durable Contract
110
+ ## 5. Read The Durable Contract
59
111
 
60
112
  For long-term product understanding, read:
61
113
 
@@ -79,14 +131,38 @@ For long-term product understanding, read:
79
131
  - `GET /v1/a2a`
80
132
  - `GET /v1/a2c`
81
133
  - `GET /v1/x402`
134
+ - `GET /v1/l402`
135
+ - `GET /v1/l402/security`
136
+ - `GET /v1/bolt`
137
+ - `GET /v1/bolt/security`
138
+ - `GET /v1/stripe-mpp`
139
+ - `GET /v1/stripe-mpp/security`
140
+ - `GET /v1/network-transport`
141
+ - `GET /v1/payment-protocols`
142
+ - `GET /v1/payment-protocols/strategy`
143
+ - `GET /v1/payment-fronts`
144
+ - `GET /v1/checkout/events/security`
82
145
  - `GET /v1/settlement`
83
146
  - `GET /v1/stripe-mpp`
84
147
  - `GET /v1/stablecoins`
85
148
  - `GET /v1/major-rails`
86
149
  - `GET /v1/treasury`
150
+ - `GET /v1/pricing-optimization`
151
+ - `GET /v1/pricing-optimization/quote-cohorts`
152
+ - `GET /v1/pricing-optimization/recommendations`
153
+ - `GET /v1/activity-ledger`
154
+ - `GET /v1/treasury-destinations`
155
+ - `GET /v1/treasury-destinations/operator-pack`
156
+ - `POST /v1/treasury-destinations/validate-preview`
157
+ - `GET /v1/treasury-egress-policy`
87
158
  - `GET /v1/erc8004`
88
159
  - `GET /v1/event-systems`
89
160
  - `GET /v1/integrations`
161
+ - `GET /v1/capability-registry/execution-truth`
162
+ - `GET /v1/capability-registry/execution-truth/summary`
163
+ - `GET /v1/capability-registry/commercialization-summary`
164
+ - `GET /v1/go-live`
165
+ - `GET /v1/go-live/summary`
90
166
  - [PROGRAM_STATUS.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/PROGRAM_STATUS.md)
91
167
  - [OPERATOR_START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/OPERATOR_START_HERE.md)
92
168
  - [OPERATIONS_RUNBOOK.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/OPERATIONS_RUNBOOK.md)
@@ -96,9 +172,11 @@ For long-term product understanding, read:
96
172
  - [PARTNER_READY_PATH.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/PARTNER_READY_PATH.md)
97
173
  - [BSV_TERANODE_SETUP.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/BSV_TERANODE_SETUP.md)
98
174
  - [REAL_PAYMENT_SETUP.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/REAL_PAYMENT_SETUP.md)
175
+ - [TREASURY_DESTINATIONS.example.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/TREASURY_DESTINATIONS.example.json)
176
+ - [TREASURY_DESTINATIONS.production.template.json](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/TREASURY_DESTINATIONS.production.template.json)
99
177
  - [TERMINOLOGY.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/TERMINOLOGY.md)
100
178
 
101
- ## 5. If You Are Building Adapters
179
+ ## 6. If You Are Building Adapters
102
180
 
103
181
  Continue with:
104
182
 
@@ -107,7 +185,7 @@ Continue with:
107
185
  - [adapters/ONBOARDING_POSTURE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/adapters/ONBOARDING_POSTURE.md)
108
186
  - [adapters/THIRD_PARTY_SUBMISSION_PROCESS.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xytara/adapters/THIRD_PARTY_SUBMISSION_PROCESS.md)
109
187
 
110
- ## 6. Production Reading Rule
188
+ ## 7. Production Reading Rule
111
189
 
112
190
  If you only remember one thing, remember this:
113
191
 
@@ -123,7 +201,30 @@ If you want the shortest CLI-first read of the package after install, use:
123
201
  - `xytara release --summary`
124
202
  - `xytara run --help`
125
203
 
126
- ## 7. If You Are Operating The Closed Program
204
+ If you are operationalizing monetization and multi-rail treasury custody, use:
205
+
206
+ - `GET /v1/go-live`
207
+ - `GET /v1/go-live/summary`
208
+ - `GET /v1/pricing-optimization/quote-abandonment-summary`
209
+ - `GET /v1/pricing-optimization/quote-cohorts`
210
+ - `GET /v1/pricing-optimization/recommendations`
211
+ - `GET /v1/treasury-destinations`
212
+ - `GET /v1/treasury-destinations/operator-pack`
213
+ - `POST /v1/treasury-destinations/validate-preview`
214
+ - `GET /v1/treasury-egress-policy`
215
+ - `GET /v1/activity-ledger`
216
+ - `GET /v1/capability-registry/execution-truth`
217
+ - `GET /v1/capability-registry/execution-truth/summary`
218
+ - `GET /v1/capability-registry/commercialization-summary`
219
+
220
+ Public/private rule:
221
+
222
+ - `GET /v1/treasury-destinations` is safe for public-readiness visibility
223
+ - `GET /v1/treasury-destinations/operator-pack` is where real custody landing refs belong
224
+ - public website and public catalog surfaces should never expose treasury landing refs or custody-provider refs
225
+ - when `XYTARA_ACCOUNT_AUTH_BEARER_TOKEN` is configured, operator-only routes like `activity-ledger`, `treasury-destinations/operator-pack`, `treasury-destinations/validate-preview`, and `treasury-egress-policy` require that bearer token
226
+
227
+ ## 8. If You Are Operating The Closed Program
127
228
 
128
229
  Use:
129
230