Sudont exposes standard JSON-RPC methods plus a small set of diagnostic methods. Blocked send-path calls return standard JSON-RPC errors with structured Sudont data underDocumentation Index
Fetch the complete documentation index at: https://docs.sudont.xyz/llms.txt
Use this file to discover all available pages before exploring further.
error.data.sudont.
Each method below cross-references its Rust implementation in
rust/rpc/src/server.rs. Use the function name as a stable anchor — line
numbers may drift across revisions.Solana Demo Methods
sendTransaction
Guard-and-forward a serialized Solana transaction.
Implementation: RpcServerImpl::send_transaction in rust/rpc/src/server.rs.
- Decodes the transaction.
- Extracts canonical Solana intent.
- Simulates with LiteSVM and logs the local protocol surface used for replay.
- Evaluates the Constitution.
ALLOW: records an approval attestation for the signed transaction artifact, then either returns a terminal-demo noop signature or broadcasts through configured Solana egress and returns the transaction id.INTERROGATE/DENY: does not broadcast; returns a structured JSON-RPC error.
sudont_executeAgentIntent
Same guarded send path as sendTransaction, with a human-readable agent note
included for logging and demo UX. The note is not trusted for policy approval.
The sidecar still derives canonical intent from the signed transaction bytes and
the simulated state diff.
Implementation: RpcServerImpl::execute_agent_intent in rust/rpc/src/server.rs.
sudont_optimizeSwap
Off-hot-path planning endpoint used by the terminal demo. The sidecar hydrates
approved route state, samples deterministic size/split candidates, applies the
same Constitution limits used by the hot-path Judge, and returns a recommended
swap construction. This endpoint does not broadcast and does not approve the
trade by itself; the agent must still sign the recommended transaction and send
it back through sendTransaction.
The sidecar terminal logs route-hydration stats for this endpoint: approved
venues loaded, reserve accounts represented, sample count, policy tail bound,
and the fact that the final signed trade is independently rechecked on the hot
path.
Implementation: RpcServerImpl::optimize_swap in rust/rpc/src/server.rs.
sol_simulateTransaction
Simulation-only method for the console log panel. It decodes and runs the
transaction in LiteSVM, but does not evaluate policy and never forwards.
Implementation: RpcServerImpl::simulate_solana_transaction in rust/rpc/src/server.rs.
SimOutcome with fields such as:
sudont_diagnoseRawTransaction
No-broadcast diagnosis method for a base64 Solana transaction. It returns the
decoded intent, simulation outcome, and Judge verdict in the result envelope.
Implementation: RpcServerImpl::diagnose_raw_transaction in rust/rpc/src/server.rs.
Health And Policy
sudont_getHealth
Returns node, egress, Solana egress, policy posture, and request counters.
Implementation: RpcServerImpl::get_health in rust/rpc/src/server.rs.
sudont_getPolicySnapshot
Returns the loaded policy snapshot.
Implementation: RpcServerImpl::get_policy_snapshot in rust/rpc/src/server.rs.
sudont_getPolicy
Alias used by the demo console for sudont_getPolicySnapshot.
Implementation: RpcServerImpl::get_policy in rust/rpc/src/server.rs.
sudont_getCapabilities
Returns supported methods, freshness states, send mode, and state source.
Implementation: RpcServerImpl::get_capabilities in rust/rpc/src/server.rs.
sudont_getAttackReport
Best-effort local report endpoint for the browser Attack Mode. The sidecar looks
for a generated attack-report.json in common local paths, or at the explicit
SUDONT_ATTACK_REPORT_PATH, and returns the parsed report when available.
Implementation: RpcServerImpl::get_attack_report in rust/rpc/src/server.rs.

