Skip to main content
Glama

AssetFare — precomputed cross-chain route intelligence for AI agents

AssetFare saves agent time and tokens by exploring multi-amount candidate curves every 30 minutes. On six Solana-origin Base/Arbitrum pilot corridors, those observations only shortlist three candidates; the caller's request then quotes all three at the actual requested amount and returns at most two choices inside the time profile. Balanced defaults to 60 seconds, fast to 30 seconds, and economy is an explicit slower mode. Candidates over the time limit remain reference-only. Selection reuses the exact request-time quote while valid; after expiry it refreshes only the chosen candidate at the same amount and never silently switches routes. Selection itself is never transaction authority. Caller approves and signs; the server never signs or submits.

Core 2.17.0 quotes also include strict continuation_v3. MCP 1.21.6 verifies the canonical full-quote hash, route-summary hash and fingerprint claim, exact path/providers, caller wallet-chain and event-signer requirements, base-unit bounds, allowed mode and TTL. Every quote remains unranked_candidate; no adapter selects it automatically, and caller_approved:true alone is not human-approval proof.

The portable quote hash removes continuation_v3, replaces duplicated raw base-unit numbers with the exact decimal strings in direct_route_summary, then hashes AssetFare typed-canonical-v1 bytes. That encoding preserves JSON type, uses exact IEEE-754 binary64 bytes for finite numbers, UTF-8 byte lengths and byte-sorted object keys, distinguishes -0 from 0, and rejects every non-substituted integral number outside JavaScript's safe-integer range. The required literal quote_payload_sha256_spec appears both on continuation_v3 and in its fingerprint claim, preventing numeric-string collisions and cross-language precision ambiguity.

Public safety checks npm version AssetFare MCP connector Listed on mcpservers.org

AssetFare is an agent-native, non-custodial native-USDC bridge and cross-chain route service. Solana native USDC → Base native USDC is the canonical route: an agent gets a fresh quote and, only after explicit caller approval, a bounded unsigned transaction plan the caller verifies and signs. AssetFare also provides bridge and cross-chain swap routes across 65 curated public route products: 3 core, 50 conditional, and 12 strategic/scarce. AssetFare service fee 1bp; Circle/provider/network fees additional; quote exposes total token-path cost and live availability; server never signs/submits. Solana SOL → Base USDC and Optimism USDC → Base USDC are also supported. AssetFare never receives private keys, signs, or submits.

For product inclusion and review timing, read economic_guidance and the complete research catalog at https://assetfare.dev/route-economics.json. price_recommended_for_amount is advisory; when it is false, compare a fresh all-in quote if price matters. It does not add an acknowledgement field or block prepare/session creation. The API accepts USD 1 as a shared technical minimum.

For agent-wallet funding, use AssetFare for aggregate refills or material transfers rather than reacting to each failed x402 micropayment. Use the route-specific best-from amount and confirm the fresh quote. A wallet that is empty on every supported source chain is not an AssetFare use case.

Verify before trusting: public source, Ed25519-signed manifest, public key, security.txt, and on-chain execution evidence. Best-from calls are not 100% guarantees; confirm the fresh AssetFare quote.

Every v2 quote includes direct_route_summary, an intent-bound ordered provider path with normalized chain:asset endpoints, exact base-unit amount bounds as decimal strings, the single AssetFare 1bp fee step, and server-signing/server-submission=false. direct_protocol_only means every step uses a disclosed direct protocol. All current routes use that classification; external_intent remains only as a compatibility enum. route_aggregator_used=false describes AssetFare's own engine and does not claim every provider avoids internal aggregation. Circle/provider costs remain in cost_summary.provider_fee_components. Contract 2.6.1 also exposes known LayerZero native fees and bounded source-gas estimates in separately_paid_costs, provides expected_all_in_cost_usd_estimate, and names the native balance the caller must retain. Costs that still cannot be priced remain explicit in unpriced_costs.

continuation_v3 binds the entire quote (excluding the continuation object itself) to a process-local, maximum-60-second Core cache. A later exact approval_v3 selects one_shot or session, may only strengthen the quote's maximum-input/minimum-output bounds, and fails closed after expiry, restart, path/provider drift, wallet/signer requirement drift, mode conflict or replay. Multi-step routes are session-only. Omitting approval_v3 is explicitly legacy_advisory; the boolean gate remains required but is not human proof.

Independent agent verifier

The dependency-free assetfare-verify CLI verifies evidence instead of accepting an AssetFare pass, safe, score, or verdict field. From this checkout, live verification is explicit:

node scripts/assetfare-verify.mjs --live

A package release that contains the assetfare-verify bin entry can be invoked with npx --yes --package=assetfare-mcp assetfare-verify --live. Do not pin an older package version that predates this command.

Live mode uses the public Ed25519 key and key id embedded in the verifier. It fetches only the pinned manifest and its hash-bound safety bundle, rejects redirects, unexpected MIME types, non-canonical JSON, unknown/missing schema keys, oversized responses, expired manifests, and subjective safety claims. It then obtains eth_chainId and exact eth_getCode bytes from two independently pinned public RPC providers on every supported EVM chain. The raw bytes must agree with one another and with both the bundle's SHA-256 and Ethereum Keccak-256 evidence. These are read-only calls; the command has no signing or transaction-submission path.

For deterministic or air-gapped checking, pass all three trust-material files explicitly:

node scripts/assetfare-verify.mjs --offline \
  --manifest ./fixtures/manifest.json \
  --bundle ./fixtures/safety-bundle.json \
  --pubkey ./fixtures/assetfare-manifest.pub

Offline mode makes no network requests. It verifies the supplied manifest signature, the signed bundle hash, exact schemas and claims, release/build/ deployment provenance, all seven EVM chains, and every embedded raw runtime-code hash. Its successful status is offline_evidence_verified, not a live RPC quorum result. npm run verify-selftest creates deterministic local fixtures and exercises bad signatures, bad bundle hashes and schemas, redirects, MIME confusion, chain/code disagreements, incomplete RPC evidence, and forbidden subjective claims.

AssetFare is maintained by a distributed project team using one public release namespace during the pilot. Roles, release controls, and the current public owner are documented in GOVERNANCE.md and MAINTAINERS.md; this is not a claim of incorporation or independent third-party audit.

Interfaces: MCP + A2A + REST/OpenAPI.

This repository contains an optional MCP adapter. The primary remote endpoint exposes eleven current v2 tools: signed manifest, capabilities, route selection, selected-candidate quoting, direct AssetFare quote, one-shot caller-approved prepare, and the five session-lifecycle operations. The 13 unversioned legacy tools remain available at the separate /mcp/legacy compatibility endpoint for the original Solana SOL → Base/Arbitrum ETH workflow. The two profiles never appear together on a remote endpoint. Agents can also evaluate any current v2 route without installing or connecting MCP:

  • APIs.json: https://assetfare.dev/apis.json

  • Capabilities: https://api.assetfare.dev/v2/capabilities

  • OpenAPI v2: https://api.assetfare.dev/v2/openapi.json

  • Provider status: https://api.assetfare.dev/v2/status

  • Read-only Arazzo workflow: https://assetfare.dev/arazzo.yaml

  • Independent agent pilot: https://assetfare.dev/pilot/

Safety model

  • AssetFare MCP never accepts a private key and never signs or submits a transaction.

  • Every available route models and collects an AssetFare service fee of exactly 1bp at one eligible successful atomic action; no route is fee-free. The 1bp is not the total cost: Circle (including any fixed CCTP forwarding fee), provider, and network fees are additional and appear in the quote's total token-path cost.

  • assetfare_v2_capabilities and assetfare_v2_quote expose the 65 curated public route products. Thirty-five additional researched routes are not offered. Availability is live: check capabilities/quote before preparing. The shared USD 1 technical minimum applies.

  • Product classification is whole-route and reviewed weekly across REST, MCP, A2A and CLI. It never adds a separate acknowledgement step or grants execution authority.

  • Remote MCP/A2A clients must send strict approval_v3 to prepare and session create. Its selected mode is schema-bound (one_shot versus session), and session approval must use the same idempotency key. The lower-level REST compatibility surface still labels omission legacy_advisory; it is not action authority for a new flow. Each call also requires literal caller_approved:true; the adapters never insert it and never describe it as human proof. Private key/seed/signed-transaction inputs are refused.

  • A session capability is a sensitive bearer credential, never a private key. Remote clients generate 32 random bytes locally, encode them as base64url without padding, and supply it only in X-AssetFare-Session-Token. The server stores only its hash. The remote MCP/A2A service never generates the secret; assetfare-plan keeps it in memory by default and writes it only to an explicit new mode-0600 file. The optional local stdio helper remains offline-only.

  • Remote MCP session create/get/observe/refresh calls must also retain the strict caller-side verification_context from the selected quote, approval and public wallet map. A2A v1 uses the same object as required verificationContext. Both adapters validate it before any upstream call, keep it out of the upstream request, apply the complete semantic verifier to every returned current_action, and emit a fresh self-verifying wallet handoff. If context is missing after a restart or any target/program/bounds/binding drifts, the adapter fails before creating state or exposing an action.

  • Remote MCP/A2A one-shot prepare likewise requires a separately typed one-shot verification context. The adapter validates it before prepare, keeps it caller-side, verifies the first EVM, Solana or Aptos action and approval bounds, and returns the untouched Core bundle inside a verified wrapper with a fresh wallet handoff. The nested bundle retains its original payload_sha256; wrapper fields are not part of that Core hash.

  • The unversioned MCP quote/status and all MCP authentication/session/action tools are isolated at /mcp/legacy for original-corridor compatibility only.

  • MCP state-changing tools only create authentication/session records or prepare/verify unsigned legacy workflow actions. MCP clients should require user approval for those calls.

  • The caller independently verifies every returned unsigned action and signs/submits with its own wallets.

Related MCP server: crypto-knowledge

Remote endpoint

https://api.assetfare.dev/mcp

Official MCP Registry servers: io.github.assetfare/assetfare and io.github.assetfare/assetfare-bridge. The historical io.github.odaiin/* records were retired during the ownership-preserving GitHub organization migration tracked in registry issue #1666. npm, the public source, the hosted endpoint, and Registry metadata target 1.21.6 for this 65-route whole-product-policy release.

Primary MCP quote scope: 65 curated public routes: 3 core, 50 conditional, and 12 strategic/scarce. The 35 research/retire routes are not offered. The only technical quote minimum is $1; no route has a separate economic floor or adapter-enforced maximum. The route-specific guidance is non-enforcing and changes as observations accumulate. Live upstream availability and liquidity still apply. Each route charges an AssetFare service fee of exactly 1bp; Circle/provider/network fees are additional, and each quote exposes total token-path cost and live availability. Canonical examples are solana:SOL → base:USDC, solana:USDC → base:USDC, and ethereum:USDC → solana:USDC. X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea and Aptos contribute eighteen source-only routes to Base/Solana. The unversioned legacy workflow remains limited to solana:SOL → base:ETH and solana:SOL → arbitrum:ETH; it does not limit the v2 route matrix.

The USD 1 API minimum is technical only. Price-verified quotes include a best-from amount; availability-only quotes include null. Confirm every fresh quote before choosing.

The six pilots are solana:USDC->base:USDC, solana:USDC->base:ETH, solana:SOL->base:USDC, solana:SOL->base:ETH, solana:USDC->arbitrum:USDC, and solana:SOL->arbitrum:ETH. Their applicable verified components form 2, 8, 8, 32, 2, and 32 complete internal graphs respectively (84 total), explored at USD 50, 100, 500, 1,000, 5,000, and 10,000 every 30 minutes.

For a new evaluation, call assetfare_v2_capabilities, then assetfare_v2_route_selection with the actual intended amount. On a pilot corridor it uses precomputed curves to identify the recent top two plus the best AssetFare direct graph, fetches those three exact request-time quotes, and returns the top two. Every response also reports AssetFare's current exact cost, ETA, cost rank, and—only when supported by at least two higher tested buckets—a non-guaranteed recent amount range. A conflicting exact quote removes that range. After the caller explicitly chooses one, call assetfare_v2_quote_selected_candidate; it returns the already-fetched quote while valid and refreshes only the chosen candidate after expiry. An AssetFare choice contains the normal continuation_v3 quote; an external choice contains normalized quote facts and its handoff without an executable payload. assetfare_v2_quote remains available for direct AssetFare-only quoting and compatibility. The primary endpoint has no legacy tools to misselect. Existing unversioned clients can connect to https://api.assetfare.dev/mcp/legacy; new clients must not use it.

REST/OpenAPI first call

Use the public v2 quote endpoint when an agent has not explicitly connected MCP. No API key, wallet authentication, session, signature, or transaction is required for this read-only evaluation call:

curl -sS https://api.assetfare.dev/v2/quote \
  -H 'content-type: application/json' \
  -d '{"from_chain":"solana","from_token":"USDC","to_chain":"base","to_token":"USDC","amount_usd":1000}'

From a cloned repository, the dependency-free examples are:

node examples/rest-quote.mjs 1000 solana USDC base USDC
python3 examples/rest_quote.py 1000 solana USDC base USDC

For a one-command, agent-readable evaluation that verifies the signed release manifest and remains strictly quote-only:

npx --yes --package=assetfare-mcp@1.21.6 assetfare-route-eval \
  --amount 1000 --from-chain solana --from-token USDC \
  --to-chain base --to-token USDC --quote-output quote.json

From a cloned repository, the equivalent command is npm run route-eval -- ....

The evaluator writes the exact validated quote only when --quote-output is explicitly supplied. The path must not exist and is created mode 0600. The evaluation remains read-only and unranked; compare it with fresh executable alternatives before selection.

After that comparison and explicit caller approval, the shortest server-enforced path to one verified unsigned plan is:

npx --yes --package=assetfare-mcp@1.21.6 assetfare-plan \
  --caller-approved --mode session \
  --quote quote.json --select-exact-quote-bounds \
  --wallet solana=<CALLER_SOLANA_PUBLIC_KEY> \
  --wallet base=<CALLER_BASE_PUBLIC_ADDRESS> \
  --event-signer-public <CALLER_OWNED_SOLANA_PUBLIC_KEY> \
  --session-token-output ./session-capability.json \
  --wallet-handoff-output ./caller-wallet-handoff.json

--select-exact-quote-bounds is an explicit local selection of the quote's maximum-input and minimum-output bounds. It generates strict approval_v3 in memory and does not claim that --caller-approved proves human approval. For custom stricter bounds or an independently reviewable approval artifact, keep the three-step path: run assetfare-select with explicit bounds and pass its mode-0600 approval.json to assetfare-plan --approval approval.json. Economic guidance remains advisory in the CLI. Compare a fresh all-in quote when price matters; no additional acknowledgement flag is required.

assetfare-plan validates the quote and approval binding, makes only the selected prepare/session POST, checks the returned path/provider/bounds and ActionSafetyReceiptV1/raw/action/bundle hashes, and stops unsigned and unsubmitted. Session tokens never appear in stdout or structured results. The optional token output path must not exist and is created mode 0600; omit it only if loss of recovery after process exit is acceptable.

The optional caller-wallet handoff file removes the next-action ambiguity without crossing the custody boundary. For EVM actions it contains ordered, verified EIP-1193 eth_sendTransaction request templates; for Solana it contains the exact verified instructions, fee payer, required signers, and explicit fresh-blockhash construction requirements for a Solana Wallet Standard client. It is self-contained: the exact verified bundle, ActionSafetyReceiptV1, plan verification results, raw/action/bundle bindings, and a canonical handoff hash travel with the wallet request data so a receiving process can recompute them. Handoff v3 separates two different authorities. AssetFare itself is always forbidden from invoking a wallet. A human may confirm each request manually, or an external agent may execute it automatically only under a separate, caller-owned local policy with explicit amount, receive, fee and transaction caps. AssetFare does not choose that policy, invoke the wallet, hold a key, sign, or submit.

For session mode, keep that capability file until the workflow is terminal. If the session-create response is lost, repeat the same plan command with --session-capability-input ./session-capability.json; it reuses the exact token and idempotency key. Once the file contains a session ID, resume without recreating the session:

npx --yes --package=assetfare-mcp@1.21.6 assetfare-session \
  --operation get --capability-file ./session-capability.json

npx --yes --package=assetfare-mcp@1.21.6 assetfare-session \
  --operation observe-source --capability-file ./session-capability.json \
  --idempotency-key source-0001 \
  --transaction-hash <CALLER_ALREADY_SUBMITTED_TRANSACTION_HASH>

assetfare-session accepts only transaction hashes from actions the caller has already verified, signed, and submitted. It sends the bearer token only in the session header and never prints it. The mode-0600 capability also preserves the strict approval, exact intent, public wallet map and direct-route summary needed to apply the full first-action semantic verifier to every later current_action. Each later EVM or Solana action receives a fresh self-verifying caller-wallet handoff; use --wallet-handoff-output <new-file> to persist it. Legacy v1 capability files may read an action-free session but fail closed before exposing an unverified action. Structured 409 recovery flags are preserved in CLI errors. Immediately before opening the caller wallet, request a just-in-time handoff:

npx --yes --package=assetfare-mcp@1.21.6 assetfare-session \
  --operation wallet-ready \
  --capability-file ./session-capability.json \
  --idempotency-key wallet-ready-0001 \
  --wallet-handoff-output ./wallet-ready-handoff.json

The quote binding stays at 60 seconds. A selected unsigned action bundle is valid for 180 seconds and its EVM on-chain deadline is 240 seconds. wallet-ready accepts a current action only when at least 120 seconds remain; if the unsubmitted action has expired, it refreshes that exact session step, deeply verifies the replacement, and writes a new mode-0600 handoff. It never replaces a still-live action early, invokes a wallet, signs, or submits.

Caller-owned autonomous execution

assetfare-agent-runner connects the verified session handoff to an external agent's existing wallet without making AssetFare a custodian. It runs in the caller's process. The caller supplies two local files:

Every AssetFare unsigned action is now a proof-carrying handoff. Remote MCP semantic verification is useful transport evidence, but is deliberately not signing authority. The local package recomputes the bundle and handoff hashes, intent, wallets, path/providers, amount bounds, decoded targets/programs, selectors/instructions, and signer set. It first returns the compact assetfare-local-verification-verdict-1.0.0 status verified_for_simulation. Only after the caller-owned wallet adapter simulates the exact bound payload successfully and the delegated policy still authorizes it does the runner produce verified_for_signing and invoke that local adapter. Agents therefore consume one small verdict instead of reasoning over the raw transaction. An external-provider recommendation is only a provider handoff; AssetFare does not build or claim to verify that provider's transaction.

The packaged delegated runner supports EVM and Solana handoffs. Aptos routes return a verified Aptos Wallet Standard unsigned-BCS handoff with delegated runner execution disabled; the caller confirms, simulates, signs and submits that handoff in its own Aptos wallet.

Before funding it, validate the local adapter contract without invoking any wallet, signer, RPC submit, or network request:

npx --yes --package=assetfare-mcp@1.21.6 assetfare-adapter-conformance \
  --wallet-adapter ./my-local-wallet-adapter.mjs

The CLI deliberately has no private-key, seed, mnemonic, keystore, raw signed transaction, remote signer, or hosted-wallet option:

npx --yes --package=assetfare-mcp@1.21.6 assetfare-agent-runner \
  --capability-file ./session-capability.json \
  --policy-file ./caller-execution-policy.json \
  --state-file ./caller-runner-state.json \
  --wallet-adapter ./my-local-wallet-adapter.mjs

For every current action the runner revalidates the self-verifying handoff, requires the configured remaining lifetime, reserves worst-case EVM native spend before the first approval, checks gas/fee/rent and transaction-count caps before each submission, and checks the policy, total runtime, and action expiry again after simulation and immediately before every normal or recovery submit. The v2 adapter must echo the exact execution-window hash and performs its own final check before using the caller wallet. The runner invokes only the caller adapter, persists only public hashes and cost summaries, observes the submitted hashes through the session, and repeats until the bound final minimum is confirmed. Approval-only failure can invoke the caller adapter's exact-zero revocation recovery. Adapter calls are idempotently bound to a public operation ID for crash recovery.

The local adapter signs and submits through the caller's wallet/RPC. The packaged reference adapter accepts standard provider objects, never key strings, and stores only mode-0600 public operation metadata for idempotent retries. It returns only simulations, public confirmations, and transaction hashes. The remote MCP and A2A services still expose no wallet, key, signing, submission, or runner tool. In every result:

key_location: caller_wallet_adapter_only
signed_by: caller_wallet_adapter
submitted_by: caller_wallet_adapter
assetfare_server_key_access: false
assetfare_server_signing: false
assetfare_server_submission: false

For a wallet that controls several EVM chains, evmProvider may be either one EIP-1193 provider or an async (chainId) => provider resolver. The reference adapter resolves the exact request chain before simulation, signing, submission and confirmation, rejects a mismatched chain/account, and requires two EVM confirmations by default. Solana confirmation remains finalized.

The session CLI and AssetFare server have no signing or submission path. Quote selection and plan creation also require at least 15 seconds of quote TTL remaining; otherwise obtain and confirm a fresh quote instead of racing expiry.

The evaluator defaults to the representative USD 1,000 solana:USDC -> base:USDC request. That USDC result is one AssetFare candidate, not a cross-provider market comparison; apply its route-specific best-from rule and confirm the fresh quote. The former solana:SOL -> base:ETH comparison route is currently inactive on economics, so the public API rejects it instead of returning an AssetFare offer or triggering competitor requests. Use the 100-route catalog and live capabilities before evaluating any route.

Read-only framework integrations are available for Coinbase AgentKit and GOAT, plus project-reviewed (a project-authored repository review, not independent third-party assurance) SendAI Solana Agent Kit plugin and elizaOS plugin, plus quote tools for Agenti. None of these integrations exposes preparation, signing, submission, funding, swap, or bridge execution.

Dify agents can install the reviewed AssetFare Marketplace plugin. It exposes two native REST tools—live capabilities and one route quote—with no credentials, wallet, authentication, session, preparation, signing, submission, swap, or bridge execution tool.

Hugging Face smolagents users can load the reviewed quote tool or capabilities tool from free Static Spaces. Hub tools execute remote code locally: inspect tool.py, set trust_remote_code=True, and pin the documented immutable revision. The complete source and tests are in assetfare/smolagents-assetfare.

A2A v1 quote adapter

AssetFare also exposes A2A Agent Card version 1.7.0 for agents that discover quote and caller-approved unsigned workflows without MCP:

  • canonical Agent Card: https://api.assetfare.dev/.well-known/agent-card.json

  • legacy discovery alias returning the identical card: https://api.assetfare.dev/.well-known/agent.json

  • JSON-RPC v1 endpoint: https://api.assetfare.dev/a2a

  • protocol: official @a2a-js/sdk v1, A2A-Version: 1.0, Content-Type: application/json

The read-only quote skill accepts one structured DataPart containing fromChain, fromToken, toChain, toToken, and amountUsd. It calls the public v2 capabilities, status, and quote endpoints and returns one quote with its passed-through caller_action_plan_handoff. amountUsd must be finite and at least 1; the adapter imposes no maximum, while live upstream availability and liquidity still apply. Two additional caller-approved A2A skills mirror the MCP execution tools: a deeply verified one-shot prepare operation with a self-verifying wallet handoff and the full session lifecycle (session_create, session_get, observe_source, observe_output, refresh_action). Before calling session_create, the A2A client generates its session token locally; the remote A2A endpoint deliberately exposes no token-generation operation. Every session operation also requires the same hash-bound verificationContext copied from the exact selected quote, strict approval and public-wallet map. The adapter validates that context before the upstream request, verifies every EVM, Solana or Aptos current_action, and emits a fresh self-verifying caller-wallet handoff. Each execution operation requires an explicit callerApproved:true and the caller's public wallet addresses; AssetFare never signs or submits, and only the caller's own submitted transaction hashes are observed. A safe 409 response is preserved as structured reapproval/recovery guidance; it never authorizes automatic requoting, replay, or a replacement session.

A card fetch, registry health check, TCK request, or registry-generated SendMessage probe is discovery/conformance traffic, not customer demand.

The public endpoint was checked with official a2aproject/a2a-tck commit 263b9cfa: all 55 applicable MUST checks passed. Five generic TCK SUT fixture tests send fixed TextPart payloads with magic messageId prefixes and require unrelated text/file/data artifacts. They are deliberately not implemented by this structured non-custodial agent; the exception is disclosed rather than presented as a full 100% pass.

Connect a remote MCP client directly—no package installation or AssetFare API key is required:

claude mcp add --transport http assetfare https://api.assetfare.dev/mcp
{
  "mcpServers": {
    "assetfare": {
      "url": "https://api.assetfare.dev/mcp"
    }
  }
}

Codex CLI and app

Add the remote server from the CLI:

codex mcp add assetfare --url https://api.assetfare.dev/mcp

Or add it to ~/.codex/config.toml or a project .codex/config.toml. The writes approval mode prompts for tools that are not annotated read-only:

[mcp_servers.assetfare]
url = "https://api.assetfare.dev/mcp"
default_tools_approval_mode = "writes"

Gemini CLI

gemini mcp add --transport http assetfare https://api.assetfare.dev/mcp

Equivalent ~/.gemini/settings.json entry:

{
  "mcpServers": {
    "assetfare": {
      "url": "https://api.assetfare.dev/mcp",
      "type": "http",
      "trust": false
    }
  }
}

Cursor

Add the following server to a project .cursor/mcp.json or the global ~/.cursor/mcp.json:

{
  "mcpServers": {
    "assetfare": {
      "url": "https://api.assetfare.dev/mcp"
    }
  }
}

Connecting is unauthenticated. The primary endpoint uses caller-owned public wallets and, for session mode, a client-generated capability. Only the separate legacy endpoint uses the wallet-bound token produced by the old signMessage flow; never place either capability in an MCP configuration file.

Agent skill

The portable Agent Skill is skills/assetfare-route/SKILL.md. Skills.lc-compatible clients can install it directly from this public GitHub repository.

npx --yes skills add assetfare/assetfare-mcp --skill assetfare-route -g -y

Portable Agent Plugin

Clients that support the published vendor-neutral Agent Plugins 1.0 format can install this repository from its Git URL. The current plugins CLI can install the same MCP connection and AssetFare route-evaluation skill through the included compatibility metadata:

npx plugins add assetfare/assetfare-mcp

The primary MCP endpoint is v2-only. Legacy wallet-auth/session tools are isolated at /mcp/legacy. AssetFare never receives private keys, signs, or submits, and the skill keeps REST/OpenAPI v2 as the primary evaluation path.

Circle Agent Stack and other shell-capable agents can use the same skill and public REST/OpenAPI flow; see integrations/circle-agent-stack.

First-call evaluation

Run npm run first-call-eval to verify a fresh MCP client can discover the primary v2 quote-only tools, validate current capabilities, and obtain a representative USD 1,000 Solana-native-USDC to Base-native-USDC quote without creating a wallet login, session, action, signature, or transaction. Legacy tools are absent from the primary endpoint. Use USD 1 only for a deliberate reachability/schema smoke test.

Use Streamable HTTP. The endpoint has no server-side API key. Read-only v2 tools never authenticate a wallet; prepare/session tools require explicit caller approval and public wallets. Legacy wallet authentication is a separate endpoint.

Local stdio

The repository also contains a stdio-compatible all-tools wrapper for self-hosting, including the local-only session-capability helper. The public Registry entry uses the lean v2-only Streamable HTTP endpoint. Package and Registry releases remain separately reviewed from remote deployment.

npm release publishing

npm releases use GitHub Actions OIDC trusted publishing through .github/workflows/publish-npm.yml. The workflow is manually dispatched with an existing immutable v<package-version> GitHub release tag, verifies that the exact tag is on main and matches package.json, runs the complete package checks and production audit, refuses an already-published version, and publishes with short-lived OIDC credentials. No npm write token is stored in GitHub or this repository.

The npm trusted-publisher record is pinned to GitHub organization assetfare, repository assetfare-mcp, and workflow filename publish-npm.yml. Direct npm publish is allowed only for that workflow. Package settings should require 2FA and disallow traditional tokens after the OIDC connection is verified.

Integration npm releases

The five stable integration packages use a separate, package-allowlisted release path. Their immutable tags are pinned exactly as follows:

  • assetfare-agenti-route-tools-v1.3.0 (@assetfare/agenti-route-tools)

  • assetfare-agentkit-action-provider-v1.3.0

  • assetfare-elizaos-route-plugin-v1.3.0

  • assetfare-goat-plugin-v1.3.0 (@assetfare/goat-plugin)

  • assetfare-solana-agent-kit-plugin-v1.3.0

Current stable packages and direct installation commands:

Framework

npm package

Install

Agenti

@assetfare/agenti-route-tools

npm install @assetfare/agenti-route-tools ai zod

Coinbase AgentKit

assetfare-agentkit-action-provider

npm install assetfare-agentkit-action-provider @coinbase/agentkit zod

elizaOS

assetfare-elizaos-route-plugin

npm install assetfare-elizaos-route-plugin @elizaos/core zod

GOAT

@assetfare/goat-plugin

npm install @assetfare/goat-plugin @goat-sdk/core zod

Solana Agent Kit

assetfare-solana-agent-kit-plugin

npm install assetfare-solana-agent-kit-plugin solana-agent-kit zod

release-integration-provenance.yml accepts only those five package choices. It requires the corresponding lightweight tag to resolve to a commit signed by the pinned AssetFare release key and contained in main, requires an already published non-draft GitHub release, runs the package's locked checks, tests, build, production audit, and pack verification, then uploads exactly the npm tarball and its SHA-256 file and records GitHub build provenance. It never publishes to npm.

Both workflows must be dispatched with --ref set to that package's exact tag, never main or another branch/tag. They require GITHUB_REF to equal refs/tags/<exact-package-tag> and GITHUB_SHA to equal the signed tag commit; the tag itself must contain the same two workflow files and pinned signer data. For example, after the trusted-publisher prerequisite below is complete, the provenance phase for AgentKit is selected with gh workflow run release-integration-provenance.yml --ref assetfare-agentkit-action-provider-v1.0.0 -f package=assetfare-agentkit-action-provider. The publish phase uses the same --ref and package choice with publish-integration-npm.yml only after provenance succeeds.

publish-integration-npm.yml accepts the same allowlist and the exact version mapped to each immutable tag above. It repeats the signed-tag, release, manifest, lockfile, test, build, audit, and pack checks; downloads only the two exact release assets; verifies GitHub's asset digest, SHA-256 file, GitHub attestation, package identity, and byte-for-byte reproducibility; then publishes that downloaded tarball with short-lived OIDC credentials. An existing registry version is accepted only when its shasum matches exactly; a conflict fails closed. The final gate requires the expected latest tag, shasum, and npm SLSA provenance.

Do not dispatch either integration release workflow until the target npm package's Settings → Trusted Publisher entry is configured and independently checked with organization assetfare, repository assetfare-mcp, exact workflow filename publish-integration-npm.yml, no environment, and direct npm publish permission. Configure that exact entry separately for all five packages. Do not substitute publish-npm.yml, a fork, a differently named workflow, or an npm write token. The existing root v1.x provenance and publish workflows remain separate and unchanged.

Trust material

  • Security contact: security@assetfare.dev

  • Security policy and private reporting: https://github.com/assetfare/assetfare-mcp/security/policy

  • Signed manifest: https://api.assetfare.dev/.well-known/assetfare-manifest.json

  • Public signing key: https://assetfare.dev/.well-known/assetfare-manifest.pub

  • Continuously revalidated operator ownership: https://api.assetfare.dev/.well-known/owners.json

  • Active-route source status: https://api.assetfare.dev/v2/status

  • Active-route capabilities: https://api.assetfare.dev/v2/capabilities

  • Primary OpenAPI v2: https://api.assetfare.dev/v2/openapi.json

  • Legacy MCP-backed v1 OpenAPI: https://api.assetfare.dev/openapi.json

  • APIs.json: https://assetfare.dev/apis.json

  • Arazzo: https://assetfare.dev/arazzo.yaml

  • Server card: https://api.assetfare.dev/.well-known/mcp/server-card.json

  • A2A Agent Card: https://api.assetfare.dev/.well-known/agent-card.json

  • A2A endpoint: https://api.assetfare.dev/a2a

  • Agent guide: https://assetfare.dev/llms-full.txt

  • Mainnet evidence: https://assetfare.dev/evidence/

  • Paired route evidence: evidence/solana-base-paired-quotes-20260916.md

  • Agent-payment route evidence: evidence/solana-base-usdc-paired-quotes-20260916.md

  • Historical same-input comparison for an inactive corridor: https://assetfare.dev/compare/solana-to-base/

  • Dated Solana USDC → Base USDC comparison ($250, 2026-09-23; explicit non-all-in and non-identical-lane caveats): https://assetfare.dev/compare/solana-usdc-to-base-usdc/

Discovery

  • Official MCP Registry: io.github.assetfare/assetfare and io.github.assetfare/assetfare-bridge

  • MCP Servers: https://mcpservers.org/servers/assetfare/assetfare-mcp

  • Smithery: https://smithery.ai/servers/twotw55/assetfare

  • Glama: https://glama.ai/mcp/connectors/io.github.odaiin/assetfare

  • Agent Skill: https://www.skills.sh/assetfare/assetfare-mcp/assetfare-route

  • Dify Marketplace: https://marketplace.dify.ai/plugin/odaiin/assetfare

  • Hugging Face quote tool: https://huggingface.co/spaces/odaiin/assetfare-quote (canonical reviewed revision a2895876d7adec645e93d7092e63b2ed4be17ef5)

  • Hugging Face capabilities tool: https://huggingface.co/spaces/odaiin/assetfare-capabilities (canonical reviewed revision bdbe1e82be617c77283dd44e67cc9bda2d220ec7)

  • Hugging Face prepare tool: https://huggingface.co/spaces/odaiin/assetfare-prepare (canonical reviewed revision bc4619ea3d5443ed24e0e0892994530dea259188)

  • Hugging Face session-create tool: https://huggingface.co/spaces/odaiin/assetfare-session-create (canonical reviewed revision f4af546056d1ac3f3cf44af428b66766f8beef15)

  • A2A Registry: https://a2aregistry.org/agents/d4f9ab1a-904c-4227-8fc6-548e45749de1

  • ARD: https://assetfare.dev/.well-known/ard.json

The wrapper deliberately contains no AssetFare route engine, wallets, RPC credentials, or internal operations data.

Agent use case

For any supported v2 request, an agent first reads v2 capabilities and requests a fresh quote through REST/OpenAPI or the read-only assetfare_v2_quote MCP tool. Only an existing original-corridor client should connect separately to /mcp/legacy. The caller independently signs and submits every on-chain action; this MCP server never does.

See the first-call evaluation script, the public mainnet evidence at https://assetfare.dev/evidence/, and the end-to-end case study at https://assetfare.dev/case-studies/solana-to-base-mainnet-canary/.

Available Tools

24 tools
assetfare_create_sessionA
Idempotent
Inspect

Lock one fresh legacy assetfare_quote into a wallet-bound v1 execution session. Use only after legacy wallet authentication for the original Solana-SOL-to-Base/Arbitrum-ETH workflow; for a v2 quote use assetfare_v2_session_create instead. Makes a network request and reserves the caller's one active legacy session slot, but creates no blockchain transaction and never signs or submits.

NameRequiredDescriptionDefault
quote_idYesFresh legacy v1 quote UUID returned by assetfare_quote. A v2 quote ID is invalid here.
access_tokenYesSensitive legacy v1 wallet-bound bearer token returned by assetfare_finish_wallet_auth. Use only with unversioned legacy session tools; never log or use it as a v2 session capability.
source_walletYesCaller-owned Solana public wallet address for the legacy v1 source. Public address only; never provide a seed phrase or private key.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.
destination_walletYesCaller-owned Base or Arbitrum EVM destination address as 0x plus 40 hex characters. Public address only; never provide a private key.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, the description discloses that the tool makes a network request, reserves the caller's single active legacy session slot, creates no blockchain transaction, and never signs or submits. This is valuable behavior context and does not contradict the readOnlyHint=false/idempotentHint=true annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, each earning its place: core purpose, usage/alternative, and behavioral caveats. It is front-loaded with the most important information and contains no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a create-style tool with five required parameters and no output schema, the description still covers the essential selection, invocation, and safety context: prerequisites, alternative, slot reservation, and the no-transaction guarantee. Nothing needed to select or invoke it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all five parameters in detail. The description adds contextual expectations like the quote being 'fresh' and v1, but it does not need to carry parameter-level semantics because the schema is complete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description leads with a specific verb and resource: 'Lock one fresh legacy assetfare_quote into a wallet-bound v1 execution session.' It clearly defines what the tool does and explicitly distinguishes it from the v2 session tool, so an agent can differentiate it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states the precondition ('Use only after legacy wallet authentication'), the intended workflow (Solana-SOL to Base/Arbitrum-ETH), and names the alternative for v2 quotes (assetfare_v2_session_create). This gives explicit when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_finish_wallet_authAInspect

Verify the caller's signature over the exact legacy login challenge and return a sensitive wallet-bound access token. Use only after assetfare_start_wallet_auth; do not use for a v2 session, transaction signature, or arbitrary message. Makes a network request and consumes login-challenge state, but never signs or submits.

NameRequiredDescriptionDefault
signatureYesCaller-produced Solana signature for the exact indicated legacy message or transaction. Never provide a seed phrase, private key, or signed transaction payload.
challenge_idYesShort-lived legacy wallet-login challenge UUID returned by assetfare_start_wallet_auth.
source_walletYesCaller-owned Solana public wallet address for the legacy v1 source. Public address only; never provide a seed phrase or private key.
terms_versionYesExact terms version supplied in the legacy wallet-login challenge; copy it unchanged from that challenge.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=false, and destructiveHint=false, so the description's statement 'Makes a network request and consumes login-challenge state, but never signs or submits' adds valuable context beyond the annotations—specifically clarifying non-idempotency and non-destructive behavior. It also flags the output as 'sensitive', which is not in the annotations. This is strong added value, though it doesn't detail error or token-expiry behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with zero waste: the first sentence states purpose and output, the second provides usage constraints and side effects. It is front-loaded with the core action and uses phrasing that directly guides the agent without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having no output schema, the description mentions the returned output ('sensitive wallet-bound access token'), the network request, state consumption, and the exact conditions for use. For a four-parameter authentication tool with clear annotations and schema coverage, nothing essential an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage, all four parameters (signature, challenge_id, source_wallet, terms_version) are already well-documented in the schema with type, constraints, and guidance. The description adds no additional parameter semantics beyond restating the legacy context; it does not compensate for any schema gaps because there are none. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Verify the caller's signature over the exact legacy login challenge and return a sensitive wallet-bound access token,' which specifies a specific verb, resource, and outcome. It further differentiates itself from siblings by explicitly naming the prerequisite (assetfare_start_wallet_auth) and excluding v2 sessions, transaction signatures, and arbitrary messages.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly commands 'Use only after assetfare_start_wallet_auth' and lists what not to use it for ('v2 session, transaction signature, or arbitrary message'), providing clear positive and negative use cases. This leaves no ambiguity for an agent choosing between this and the many sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_manifestA
Read-onlyIdempotent
Inspect

Read the Ed25519-signed release manifest and safety-bundle binding before preparing an action. Example: call this once to verify the current release and contract pins; it never creates state, signs, or submits.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
serviceYes
executionYes
signatureYes
safety_bundleYes
release_commitYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description reinforces this by stating it never creates state, signs, or submits, and adds that it reads an Ed25519-signed manifest and safety-bundle binding, plus the 'call once' guidance which implies idempotency. This adds value beyond the annotations without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core purpose and followed by a concrete usage example. Every sentence contributes meaningful information without redundancy, and the structure is clean and scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with no parameters and an existing output schema, the description is complete. It explains what the tool reads, when to call it, and its safety guarantees. The presence of an output schema means the description need not detail return values, and the guidance covers the essential usage context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the input schema is trivially covered (100%). The description provides no parameter details because none exist, and per the baseline for 0-parameter tools, this is appropriate. No further explanation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool reads an Ed25519-signed release manifest and safety-bundle binding, which is a specific verb-resource pair. It distinguishes itself from siblings by emphasizing it's a verification step before preparation, and explicitly notes it never creates state, signs, or submits. However, it does not name any sibling tool to contrast with, so differentiation is implicit rather than explicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: call this before preparing an action and once to verify current release and contract pins. It implies the tool is a prerequisite step and safe to use repeatedly, but it does not explicitly state when to avoid using it or mention alternative tools. The guidance is useful but not exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_observe_cctpA
Idempotent
Inspect

Verify Circle attestation and the forwarded Base or Arbitrum USDC mint for a caller-submitted legacy v1 burn, then advance the session record. Use only after the CCTP burn is submitted; use assetfare_read_session for inspection without advancement and a v2 session observe tool for v2 routes. Makes a network request but never signs or submits.

NameRequiredDescriptionDefault
session_idYesLegacy v1 session UUID returned by assetfare_create_session. Use only with the unversioned legacy workflow; do not pass a v2 session ID.
access_tokenYesSensitive legacy v1 wallet-bound bearer token returned by assetfare_finish_wallet_auth. Use only with unversioned legacy session tools; never log or use it as a v2 session capability.
burn_signatureYesFinalized Solana burn signature already submitted by the caller for this legacy CCTP step.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, and idempotentHint=true. The description adds valuable context beyond annotations by stating 'Makes a network request but never signs or submits' and 'advance the session record', clarifying the mutation nature and the non-signing/submitting behavior. This is useful supplementary detail, though not exhaustive (e.g., no mention of error handling or side effects).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences with zero waste. The purpose is front-loaded, followed by usage guidance and a behavioral note. Every sentence earns its place, and the structure is immediately scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema, the description covers the core purpose, usage constraints, and behavioral transparency. It does not explicitly describe return values or error conditions, but given the tool's role (verify and advance session), the description is sufficient for an agent to call it correctly. Minor gap is the lack of mention of what happens on verification failure, but this is not critical.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters are already well-documented in the schema. The description does not add significant meaning beyond what the schema provides; it merely refers to 'caller-submitted legacy v1 burn' which aligns with burn_signature. Per the baseline for high coverage, a 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Verify' and 'advance') with a clear resource ('Circle attestation and the forwarded Base or Arbitrum USDC mint for a caller-submitted legacy v1 burn'). It explicitly distinguishes itself from sibling tools by naming assetfare_read_session for inspection without advancement and a v2 observe tool for v2 routes, so an agent can easily tell them apart.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit when-to-use ('Use only after the CCTP burn is submitted') and names alternatives with their conditions ('use assetfare_read_session for inspection without advancement and a v2 session observe tool for v2 routes'). This leaves no ambiguity about when to invoke this tool versus siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_observe_destinationA
Idempotent
Inspect

Verify an already-submitted destination UserOperation receipt and finalize the legacy v1 workflow record. Use only after the caller independently submits assetfare_prepare_destination_action; for v2 output observation use assetfare_v2_session_observe_output instead. Makes a network request and advances session state, but never signs or submits.

NameRequiredDescriptionDefault
session_idYesLegacy v1 session UUID returned by assetfare_create_session. Use only with the unversioned legacy workflow; do not pass a v2 session ID.
access_tokenYesSensitive legacy v1 wallet-bound bearer token returned by assetfare_finish_wallet_auth. Use only with unversioned legacy session tools; never log or use it as a v2 session capability.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.
transaction_hashYesDestination EVM transaction hash already submitted by the caller, formatted as 0x plus 64 hex characters.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses meaningful side effects beyond the annotations: 'Makes a network request and advances session state, but never signs or submits.' This tells an agent exactly what state impact to expect and what side effects are excluded. It is consistent with the annotations, and nothing in the description contradicts them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with distinct jobs: first states purpose, second states usage and alternatives, third states behavioral side effects. There is no filler, and the most decision-relevant information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The definition covers purpose, sequencing, alternatives, side effects, and parameter semantics comprehensively. The only minor gap is that it does not indicate what the verification result or finalization output looks like, and with no output schema present the description could carry that burden more fully.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description does not add parameter-level detail beyond the schema, but the schema already documents formats, sensitivities, and version constraints for all four parameters, so no compensation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Verify an already-submitted destination UserOperation receipt and finalize the legacy v1 workflow record.' It clearly identifies the operation's scope and workflow version, and explicitly names the sibling tool it is not, assetfare_v2_session_observe_output, making differentiation immediate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives an explicit sequencing precondition: 'Use only after the caller independently submits assetfare_prepare_destination_action.' It also names the v2 alternative explicitly, and the schema reinforces that the session_id and access_token are legacy-v1-only. This is unambiguous when-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_prepare_cctp_actionA
Idempotent
Inspect

Prepare the unsigned CCTP burn for the current legacy v1 session using a caller-owned event signer public key. Use only when the legacy workflow reports this as the next action; for v2 routes use assetfare_v2_prepare or assetfare_v2_session_create instead. Requires caller approval and advances preparation state, but never receives the event signer private key, signs, or submits.

NameRequiredDescriptionDefault
session_idYesLegacy v1 session UUID returned by assetfare_create_session. Use only with the unversioned legacy workflow; do not pass a v2 session ID.
access_tokenYesSensitive legacy v1 wallet-bound bearer token returned by assetfare_finish_wallet_auth. Use only with unversioned legacy session tools; never log or use it as a v2 session capability.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.
event_signer_publicYesFresh caller-generated ephemeral Solana event signer public key for the legacy CCTP burn. Keep the matching private key client-side; never send it.

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false. The description adds meaningful behavioral context beyond those annotations: it requires caller approval, advances preparation state, and explicitly does not receive the private key, sign, or submit. This is useful for an agent deciding whether this is the right mutation step. It does not describe the response shape, but no output schema exists and the core behavioral traits are well covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded: it states the core action first, then usage constraints, then exclusions. Every sentence earns its place, and the sibling differentiation is woven in without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 4-parameter tool with no output schema, the description covers the action, the workflow context, the v2 alternative, the caller-approval requirement, and the non-goals (no private key, no signing, no submission). The only minor gap is that it does not describe what the response contains or how to detect success, but the description is otherwise complete enough for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all four parameters. The description adds value by clarifying the event_signer_public is caller-generated and ephemeral, and by reinforcing that the private key must never be sent. It also clarifies the access_token is legacy v1 wallet-bound and not a v2 capability. This goes beyond the schema's field descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('prepare'), a specific resource ('unsigned CCTP burn'), and the exact context ('current legacy v1 session using a caller-owned event signer public key'). It also explicitly distinguishes itself from v2 sibling tools, so an agent can tell it apart from assetfare_v2_prepare and assetfare_v2_session_create without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when-to-use guidance: 'Use only when the legacy workflow reports this as the next action' and explicitly names alternatives for v2 routes. It also states what the tool does not do (never receives the private key, signs, or submits), which helps an agent avoid misuse.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_prepare_destination_actionA
Idempotent
Inspect

Prepare the exact-cap permit and unsigned ERC-4337 destination settlement plan for the current legacy v1 session. Use only when the legacy workflow reports the destination step and after caller approval; v2 sessions expose their current action through assetfare_v2_session_get. Makes a network request and advances preparation state, but never signs or submits.

NameRequiredDescriptionDefault
session_idYesLegacy v1 session UUID returned by assetfare_create_session. Use only with the unversioned legacy workflow; do not pass a v2 session ID.
access_tokenYesSensitive legacy v1 wallet-bound bearer token returned by assetfare_finish_wallet_auth. Use only with unversioned legacy session tools; never log or use it as a v2 session capability.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, the description explains that calling this tool 'Makes a network request and advances preparation state, but never signs or submits.' This is valuable safety-relevant context for a settlement tool. It doesn't contradict the annotations (readOnlyHint=false, idempotentHint=true, destructiveHint=false), though it could say more about the exact state changes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences pack the action, the exact trigger condition, the v2 alternative, and the network/state/signing boundary with zero fluff. The most important information is front-loaded in the first sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex state-advancing tool, the description covers when to call it, the alternative, the scope, and the safety boundary, while annotations plus 100% schema coverage handle idempotency and parameters. It does not explicitly describe the return value, which is a small gap given there is no output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters are fully documented in the schema. The tool description does not need to add param-level meaning; it correctly relies on the schema and provides no additional parameter semantics beyond it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb-resource pair: 'Prepare the exact-cap permit and unsigned ERC-4337 destination settlement plan' for the legacy v1 session. It is explicitly scoped to the destination step and distinguishes from v2 by naming v2 sessions' current action exposure, so an agent can disambiguate among the sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit condition: 'Use only when the legacy workflow reports the destination step and after caller approval.' It also names the alternative for v2 sessions (assetfare_v2_session_get), giving clear routing guidance and an exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_prepare_source_actionA
Idempotent
Inspect

Prepare the bounded unsigned Solana source action for the current legacy v1 session step. Use only after assetfare_create_session and explicit caller approval; for a v2 route use assetfare_v2_prepare or assetfare_v2_session_create instead. Makes a network request and advances preparation state, but never signs or submits.

NameRequiredDescriptionDefault
session_idYesLegacy v1 session UUID returned by assetfare_create_session. Use only with the unversioned legacy workflow; do not pass a v2 session ID.
access_tokenYesSensitive legacy v1 wallet-bound bearer token returned by assetfare_finish_wallet_auth. Use only with unversioned legacy session tools; never log or use it as a v2 session capability.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate it is not read-only, not destructive, and idempotent. The description adds that it 'makes a network request and advances preparation state, but never signs or submits,' which clarifies the side-effect profile and the non-submission guarantee. This adds value beyond annotations, though it doesn't cover error behavior or return details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no redundancy. The main purpose is front-loaded, followed by usage constraints and behavioral notes. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers prerequisites, alternatives, side effects, and what it does not do (sign/submit). The only gap is that it does not describe the return value or output format, which is notable since there is no output schema. Still, for a state-advancing step in a flow, the description is largely sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameters have detailed descriptions in the schema itself. The tool description does not add parameter-specific meaning, but the schema already does the heavy lifting, so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Prepare') and a specific resource ('bounded unsigned Solana source action'), and scopes it to the legacy v1 session step. It clearly distinguishes itself from v2 siblings by naming them, so an agent can tell it apart without opening other schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states when to use it ('after assetfare_create_session and explicit caller approval') and when not to use it ('for a v2 route use assetfare_v2_prepare or assetfare_v2_session_create instead'). This is exactly the when/when-not/alternative guidance expected.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_quoteA
Read-onlyIdempotent
Inspect

Legacy v1 original-corridor quote: get Solana SOL to Base or Arbitrum ETH pricing. Use only with the unversioned legacy wallet-auth/session tools; for every new v2 evaluation use assetfare_v2_quote instead. Read-only; makes a network request and never authenticates, creates a session, prepares an action, signs, or submits.

NameRequiredDescriptionDefault
amount_usdYesWhole-dollar input value for the legacy Solana SOL route, minimum 1. Use assetfare_v2_quote for fractional amounts or any v2 route.
destination_chainNoLegacy destination chain for SOL-to-ETH only: base or arbitrum. Use a v2 route tool for any other destination or token.base

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, openWorld and non-destructive. The description adds genuine context beyond them: that it makes a network request and never authenticates, creates a session, prepares an action, signs, or submits, which clarifies its boundary versus prepare/auth siblings.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three compact sentences, all front-loaded: what it is, when to use it, and its safety/behavior boundary. Every sentence earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only quote tool with annotations covering the safety profile and a fully-described schema, the definition is nearly complete. It does not describe the return format, but with no output schema and an implied quote response this is a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and both parameters (amount_usd, destination_chain) are already documented in the schema with constraints and enums. The description adds no syntax or format detail beyond what the schema provides, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('get Solana SOL to Base or Arbitrum ETH pricing') with explicit scope ('Legacy v1 original-corridor quote'). Names and distinguishes the sibling assetfare_v2_quote so the agent can route without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use it ('only with the unversioned legacy wallet-auth/session tools') and when not ('for every new v2 evaluation use assetfare_v2_quote instead'). Names the alternative and the condition selecting it, leaving nothing to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_read_sessionA
Read-onlyIdempotent
Inspect

Read a legacy v1 session summary, workflow state, receipt, or current unsigned action. Use to inspect or resume a session created by assetfare_create_session; for a v2 session use assetfare_v2_session_get instead and do not use this call to advance state. Read-only and makes a network request; never signs or submits.

NameRequiredDescriptionDefault
viewNoLegacy read projection: session summary, workflow state, receipt, or next_action. This selection never advances the workflow.session
session_idYesLegacy v1 session UUID returned by assetfare_create_session. Use only with the unversioned legacy workflow; do not pass a v2 session ID.
access_tokenYesSensitive legacy v1 wallet-bound bearer token returned by assetfare_finish_wallet_auth. Use only with unversioned legacy session tools; never log or use it as a v2 session capability.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false. The description adds useful behavioral context beyond those annotations: it 'makes a network request; never signs or submits' and states that the view selection 'never advances the workflow.' No contradiction with the annotations exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. It front-loads the primary action, then adds the key routing instruction and safety caveat. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only tool with 3 fully described parameters and no side effects, the description is nearly complete. It covers purpose, usage, legacy vs v2 routing, and behavioral guarantees. It could go slightly further by describing the shape of the returned data, but the absence of an output schema is mitigated by the description stating exactly which projections can be read.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description does not add much parameter-level meaning; the schema already documents view projections, the legacy session UUID, and the sensitive access token. The phrase 'current unsigned action' slightly reinforces the next_action enum, but the schema already explains this.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Read a legacy v1 session summary, workflow state, receipt, or current unsigned action.' It clearly identifies the legacy v1 scope and distinguishes it from v2 tools by naming the exact alternative (assetfare_v2_session_get).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says when to use the tool ('inspect or resume a session created by assetfare_create_session'), when not to use it ('for a v2 session use assetfare_v2_session_get instead'), and what to avoid ('do not use this call to advance state'). This fully routes an agent to the correct sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_start_wallet_authAInspect

Create a short-lived, non-transactional Solana signMessage challenge for the legacy v1 workflow. Use only after selecting a fresh legacy assetfare_quote and obtaining caller approval; v2 quote and session tools do not use wallet authentication. Makes a network request and creates login-challenge state, but cannot move funds, sign, or submit.

NameRequiredDescriptionDefault
source_walletYesCaller-owned Solana public wallet address for the legacy v1 source. Public address only; never provide a seed phrase or private key.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare readOnlyHint=false, which could imply a mutating operation, but the description clarifies the actual scope: 'Makes a network request and creates login-challenge state, but cannot move funds, sign, or submit.' This meaningfully contextualizes the non-read-only hint and prevents the agent from assuming the tool can execute transactions. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with zero waste: the first fronts the core purpose with key qualifiers, the second provides usage conditions and exclusion, the third discloses behavioral limits. Every sentence earns its place and the most decision-relevant information appears first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no output schema, the description covers purpose, preconditions, exclusions, and behavioral safety limits comprehensively. The only minor gap is that it doesn't name the natural follow-up step (e.g., assetfare_finish_wallet_auth) or hint at the response shape, but the sibling naming and 'login-challenge state' mention make this a small omission rather than a blocking one.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — the sole parameter 'source_wallet' is already well documented in the schema as a caller-owned public address with an explicit warning against seed phrases/private keys. The tool description adds only indirect context (the fresh quote precondition), so the schema carries the heavy lifting and the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Create') and a specific resource ('short-lived, non-transactional Solana signMessage challenge'), scoped precisely to the legacy v1 workflow. It also distinguishes itself from the sibling family by explicitly noting that v2 quote and session tools do not use wallet authentication, so an agent can route correctly without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit preconditions ('Use only after selecting a fresh legacy assetfare_quote and obtaining caller approval') and an explicit exclusion ('v2 quote and session tools do not use wallet authentication'). This tells the agent both when to invoke this tool and when not to, leaving little to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_statusA
Read-onlyIdempotent
Inspect

Read legacy v1 compatibility status and original-corridor safety gates. Use only before the unversioned Solana-SOL-to-Base/Arbitrum-ETH workflow; for every current v2 route use assetfare_v2_capabilities instead. Read-only; makes a network request and never authenticates, signs, submits, or advances a session.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnly, idempotent, openWorld and non-destructive traits, so the bar is lower. The description nonetheless adds real behavioral context: it makes a network request and explicitly never authenticates, signs, submits, or advances a session, which resolves ambiguity about side effects for a status endpoint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three compact sentences: purpose, usage routing, and safety profile. The most decision-relevant information (what it is and when to use it) is front-loaded, with zero filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless read-only status tool with no output schema, the description covers purpose, routing, and side-effect profile. The only minor gap is that it does not characterize the shape or content of the returned status/gates, though the surrounding detail is otherwise sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so per the rubric the baseline is 4. There is nothing for the description to disambiguate and it does not need to.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Read) plus a clearly scoped resource (legacy v1 compatibility status and original-corridor safety gates). It differentiates itself from the v2 sibling by naming its exact applicability domain, so an agent can distinguish it without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use it ('only before the unversioned Solana-SOL-to-Base/Arbitrum-ETH workflow') and when not to, routing agents to assetfare_v2_capabilities for every current v2 route. This is the strongest form of when/when-not/alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_capabilitiesA
Read-onlyIdempotent
Inspect

Read the 65 curated public routes, live provider readiness, whole-route product classification, direct_route_summary, and continuation_v3 contracts before quoting. The offered routes comprise 3 core, 50 conditional, and 12 strategic/scarce routes; 35 additional researched routes are not public products. Example: call once before requesting an exact route quote, then confirm the fresh quote. Route classification never adds an execution gate. continuation_v3 separately binds execution selection, wallets, bounds, and mode. Read-only; creates no wallet login, session, or action.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
chainsYes
statusYes
server_signingYes
action_lifetimeYes
asset_endpointsYes
continuation_v3Yes
economic_guidanceNo
server_submissionYes
public_api_enabledYes
source_only_routesYes
direct_route_summaryYes
execution_availabilityNo
execution_ready_routesYes
phase_b_blocked_routesYes
blocked_source_only_routesYes
directed_conversion_routesYes
unsigned_route_plans_readyYes
source_only_asset_endpointsYes
caller_owned_agent_executionYes
execution_implemented_routesNo
currently_prepare_ready_routesNo
temporarily_unavailable_routesNo
temporarily_unavailable_route_countNo

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnly, idempotent, openWorld and non-destructive, but the description adds real context: no wallet login, no session, no action is created, which distinguishes it from the session_create siblings, and 'call once' reinforces idempotence. It also explains the taxonomy of the returned route set (3 core, 50 conditional, 12 strategic, 35 non-public), which shapes how the agent interprets results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The lead sentence is front-loaded with the resource list, which is correct ordering, but the body is dense with undefined internal terminology (direct_route_summary, continuation_v3) and mixes contract inventory, route counts, and execution-binding caveats in a single block. Sentences earn their place individually but the whole is harder to parse than it needs to be.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description need not describe return values, and it covers the remaining essentials: what is read, when to call it relative to quoting, the absence of side effects, and the fact that classification does not gate execution. A brief definition of the named contracts would close the remaining gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so the baseline is 4 and there is nothing for the description to disambiguate. The usage note about calling it once serves as the only invocation guidance needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence names a concrete verb ('Read') and enumerates the exact resources returned: 65 curated public routes, live provider readiness, product classification, direct_route_summary and continuation_v3 contracts. It is clearly a discovery/contract-reading tool rather than a quoting or session tool, though the internal jargon (direct_route_summary, continuation_v3) is not defined.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states the sequencing rule: 'call once before requesting an exact route quote, then confirm the fresh quote,' which positions it ahead of assetfare_v2_quote. It also clarifies that route classification 'never adds an execution gate,' steering the agent away from treating it as a prerequisite for execution. No explicit when-not-to-use case is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_new_session_capabilityA
Read-only
Inspect

Local stdio only: generate one caller-owned 256-bit session capability without a network call. Remote MCP/A2A servers deliberately do not expose this helper; remote clients generate 32 random bytes locally, encode them as 43-character base64url without padding, and pass the result to assetfare_v2_session_create and every lifecycle call. The token is a sensitive bearer capability, never a private key.

NameRequiredDescriptionDefault

No parameters

Output Schema

NameRequiredDescription
usageYesHandling and tool-use instructions for the capability.
token_bitsYesEntropy size of the generated CSPRNG token in bits.
sensitivityYesClassification showing that the token is a sensitive bearer capability.
token_lengthYesLength of the unpadded base64url token in characters.
session_tokenYesNew 256-bit, URL-safe caller-owned bearer capability. Treat as sensitive and never log, share, or persist it in plaintext.
is_private_keyYesAlways false: this capability is not a wallet private key and cannot sign transactions.
server_signingYesAlways false: AssetFare never signs caller transactions.
server_submissionYesAlways false: AssetFare never submits caller transactions.

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this as read-only and non-destructive, so the safety profile is covered. The description adds useful behavioral context beyond annotations: no network call is made, the output is a sensitive bearer capability, and it is never a private key. This is meaningful additional transparency without contradicting the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded with the most important constraint ('Local stdio only'). Each sentence adds distinct value: scope, generation mechanics, and security classification. There is no fluff or redundant restatement of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With zero parameters and an output schema present, the description covers everything an agent needs to know: when to use it, how remote clients should behave instead, where the result should be passed, and the security sensitivity of the value. Nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema is empty, so the baseline is 4. The description compensates by clarifying the semantic nature of the generated value and how it is encoded, which is the only parameter-like information an agent needs.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('generate') and a specific resource ('one caller-owned 256-bit session capability') without a network call. It also clearly distinguishes the local stdio context from remote MCP/A2A servers, so an agent can differentiate this from the many session-related siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says this helper is local stdio only and that remote clients should generate the capability themselves by producing 32 random bytes and base64url-encoding them. It also instructs that the result should be passed to assetfare_v2_session_create and every lifecycle call, giving concrete usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_prepareAInspect

Return one deeply verified first unsigned bundle and caller-wallet handoff. Example: pass caller_approved=true, a one_shot approval_v3, and the quote-bound verification_context; multi-step routes reject one_shot. Economic guidance is advisory and adds no request field. Context is validated before the upstream request and never forwarded. AssetFare never signs or submits.

NameRequiredDescriptionDefault
walletsYesMap each chain needed by this route to the caller's public wallet address. Include public addresses only; never private keys or seed phrases.
to_chainYesDestination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations.
to_tokenYesOutput token symbol on to_chain. The chain-token pair must appear in current v2 capabilities.
amount_usdYesRequested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount.
from_chainYesSource chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain.
from_tokenYesInput token symbol on from_chain. The chain-token pair must appear in current v2 capabilities.
approval_v3YesStrict one-shot approval copied from the exact unexpired selected quote; its bounds may only be strengthened.
caller_approvedYesLegacy caller assertion that MUST be supplied explicitly. It is not human-proof and is never auto-inserted; approval_v3 adds server-enforced quote binding.
event_signer_publicNoSolana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key.
verification_contextYesStrict caller-held one-shot context copied from the selected quote, approval and public wallets. It is verified before prepare and never forwarded upstream.

Output Schema

NameRequiredDescription
bundleYesExact Core bundle whose payload_sha256 remains scoped only to this nested object.
action_verificationYesFail-closed semantic and approval-bound verification result; it never authorizes a signature by itself.
local_execution_gateYesRemote verification is not signing authority. Recompute locally and require verified_for_signing after fresh wallet simulation.
caller_wallet_handoffYesFresh self-verifying EIP-1193 or Solana Wallet Standard handoff. The caller still simulates, confirms, signs and submits.
semantic_verificationYesTrue only after full decoded action, intent, receipt, payload and caller-bound verification.

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With annotations already declaring readOnlyHint=false, openWorldHint=true and idempotentHint=false, the description still adds real behavioral value: no signing or submission occurs, verification_context is validated before the upstream request and never forwarded, and economic guidance is advisory only. It does not describe idempotency/retry behavior or error semantics, which keeps it short of a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Five short sentences with the deliverable front-loaded and no repetition of schema detail. The 'Example:' sentence is slightly awkwardly framed and 'Economic guidance is advisory and adds no request field' is opaque, but overall the text is dense and earns its length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has an output schema and 100% schema coverage, so return values need no prose. What is missing is flow context: which sibling tools must be called first to obtain the quote-bound approval_v3 and verification_context, and what the caller does with the handoff afterwards. For a prepare step in a ten-tool pipeline, that sequencing gap is the main shortfall.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the nested approval_v3 and verification_context structures are already documented field by field. The description only adds that approval_v3 must be one_shot and that the context is quote-bound, which is useful framing but marginal beyond the schema. Baseline 3 is correct.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a concrete deliverable: a verified unsigned transaction bundle plus caller-wallet handoff, and notes AssetFare never signs or submits. That is specific enough for an agent to know this is a prepare/return-artifact step, not a quote or a session tool. It never names a sibling (quote, route_selection, session_create) explicitly, so differentiation is inferred from the 'one_shot' vs 'multi-step routes' contrast rather than stated.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a conditional usage rule ('multi-step routes reject one_shot') and sketches the required payload, which implies this tool is only for single-step routes. It never states the prerequisites — which sibling produces approval_v3 and verification_context, or when to prefer a session tool instead — so the agent must infer the call ordering.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_quoteA
Read-only
Inspect

Get one fresh AssetFare quote with amount-specific economic_guidance, direct_route_summary, continuation_v3, and unsigned_prepare_requirements. Example: quote Solana USDC to Base USDC. price_recommended_for_amount is advisory; compare alternatives when price matters, but no economic acknowledgement field is required. The quote remains an unranked_candidate until separate explicit approval selects one mode. The adapter validates hashes, path, bounds, and TTL and never creates approval, prepares, signs, or submits.

NameRequiredDescriptionDefault
to_chainYesDestination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations.
to_tokenYesOutput token symbol on to_chain. The chain-token pair must appear in current v2 capabilities.
amount_usdYesRequested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount.
from_chainYesSource chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain.
from_tokenYesInput token symbol on from_chain. The chain-token pair must appear in current v2 capabilities.

Output Schema

NameRequiredDescription
etaYes
riskYes
as_ofYes
offerYes
routeYes
intentYes
statusYes
quote_idYes
executionYes
ttl_secondsYes
cost_summaryYes
continuation_v3Yes
economic_guidanceYes
direct_route_summaryYes
caller_action_plan_handoffYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the readOnly/openWorld annotations by disclosing the lifecycle constraint (quote remains an unranked_candidate until a separate explicit approval selects a mode), that no economic acknowledgement field is required, and that the adapter validates hashes, path, bounds, and TTL while never creating approval, preparing, signing, or submitting. This is meaningful context an agent cannot infer from annotations alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and return contents, followed by an example and then the guardrails. Dense terminology (unranked_candidate, continuation_v3, unsigned_prepare_requirements) is used without definition, but every sentence carries a distinct constraint rather than restating the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so the description does not need to explain return shapes, and it is complete on the operational side: validation scope, non-mutating guarantees, and the approval-gating rule are all stated. The only shortfall is that it does not explicitly route the agent to the sibling needed after quoting (prepare or selected-candidate).

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the schema itself carries the substantive detail (amount_usd guidance on USD 1 vs 1,000, source-only chain exclusion on from_chain). The description adds only the 'amount-specific' framing and a single example corridor, so it neither repeats nor meaningfully extends the parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource ('Get one fresh AssetFare quote') with an enumeration of what the response carries (economic_guidance, direct_route_summary, continuation_v3, unsigned_prepare_requirements). It also distinguishes itself from the selection path by noting the quote stays an unranked_candidate, though it never names assetfare_v2_quote_selected_candidate or assetfare_v2_route_selection explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides an example corridor and a caveat that price_recommended_for_amount is advisory and alternatives should be compared when price matters, which implies usage but does not say when to call this versus the selected-candidate or route-selection siblings. The 'compare alternatives' instruction is given without naming the tool that does the comparison.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_quote_selected_candidateA
Read-only
Inspect

Reuse the chosen exact request-time quote while valid; after expiry refresh only that candidate at the same amount and never reselect. Example: pass candidate_id and the selection receipt hash. An AssetFare result requires a caller-local proof check and fresh wallet simulation before verified_for_signing; remote verification is not signing authority. An external result is only its provider handoff and has no AssetFare transaction-verification claim. Never prepares, signs, submits, or grants transaction authority.

NameRequiredDescriptionDefault
profileNoTime policy: fast (30s), balanced (60s default), or explicit economy (60s). Every recommendation profile has an absolute 60-second ceiling.
to_chainYesDestination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations.
to_tokenYesOutput token symbol on to_chain. The chain-token pair must appear in current v2 capabilities.
amount_usdYesRequested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount.
from_chainYesSource chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain.
from_tokenYesInput token symbol on from_chain. The chain-token pair must appear in current v2 capabilities.
candidate_idYesExact candidate_id returned by assetfare_v2_route_selection; it is never chosen automatically.
max_eta_secondsNoOptional stricter maximum ETA in seconds; it cannot exceed 60 or the selected profile limit.
selection_receipt_sha256YesExact selection_receipt.sha256 returned with the fresh shortlist.

Output Schema

NameRequiredDescription
statusYes
versionYes
choice_bindingYes
server_signingYes
execution_handoffYes
server_submissionYes
selected_candidateYes
selection_quote_sourceYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds meaningful context beyond the annotations: caller-local proof check and fresh wallet simulation are required before verified_for_signing, remote verification is not signing authority, and external results carry no AssetFare verification claim. The 'never prepares, signs, submits, or grants transaction authority' line reinforces the readOnly profile. With annotations already covering the safety surface, this is solid added value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Leads with the core reuse/refresh behavior before the verification caveats, so the actionable part is front-loaded. The last two sentences overlap somewhat ('remote verification is not signing authority' vs 'never prepares, signs, submits'), a minor redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained. For a 7-required-parameter tool the description covers the reuse/refresh semantics and the verification boundary an agent must respect. Gaps are minor and largely covered by the rich schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 9 parameters thoroughly. The description only restates two required inputs (candidate_id and the receipt hash), adding no format or constraint detail beyond the schema. Baseline 3 applies when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: 'Reuse the chosen exact request-time quote while valid' and 'refresh only that candidate at the same amount and never reselect.' This clearly distinguishes it from a fresh-quote sibling like assetfare_v2_quote. It stops short of naming that sibling explicitly, so an agent must infer the alternative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete when-to-use context: reuse while valid, refresh only the chosen candidate after expiry, never reselect. The example ('pass candidate_id and the selection receipt hash') clarifies the call site. No explicit exclusion naming an alternative tool, which keeps it from a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_route_selectionA
Read-only
Inspect

Quote the recent top two plus the best AssetFare graph at the exact amount; return up to two all-in choices labeled assetfare_verified_unsigned or external_provider_handoff. AssetFare cost, ETA and rank are always present; a recent winning range needs two supporting higher buckets and disappears on conflict. Example: compare Solana USDC to Base USDC at USD 347.25 with balanced (60s). Fast is 30s; balanced and explicit economy are 60s. The 60-second ceiling is absolute for recommendations; slower routes are reference-only. Never approves, prepares, signs, or submits.

NameRequiredDescriptionDefault
profileNoTime policy: fast (30s), balanced (60s default), or explicit economy (60s). Every recommendation profile has an absolute 60-second ceiling.
to_chainYesDestination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations.
to_tokenYesOutput token symbol on to_chain. The chain-token pair must appear in current v2 capabilities.
amount_usdYesRequested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount.
from_chainYesSource chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain.
from_tokenYesInput token symbol on from_chain. The chain-token pair must appear in current v2 capabilities.
max_eta_secondsNoOptional stricter maximum ETA in seconds; it cannot exceed 60 or the selected profile limit.

Output Schema

NameRequiredDescription
as_ofYes
intentYes
safetyYes
statusYes
coverageYes
shadow_onlyYes
reference_onlyYes
schema_versionYes
recommendationsYes
selection_policyYes
selection_receiptYes
public_api_changedYes
exact_quote_failuresYes
assetfare_amount_guidanceYes
shortlisted_candidate_idsYes
assetfare_direct_referenceYes
selection_quote_expires_atYes
precompute_amounts_used_usdYes
shortlisted_candidate_countYes
precompute_latest_evidence_atYes
request_amount_quoted_exactlyYes
request_time_exact_quote_countYes
automatic_reselection_forbiddenYes
expired_selection_refresh_scopeYes
selection_quote_reused_while_validYes
selection_grants_execution_authorityYes
precompute_used_for_shortlisting_onlyYes
fresh_requote_required_after_selectionYes

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, non-destructive, open-world, non-idempotent. The description adds real behavioral context beyond that: the explicit 'Never approves, prepares, signs, or submits' safety boundary, the absolute 60-second recommendation ceiling with slower routes being 'reference-only,' and the rule that a recent winning range needs two supporting higher buckets and disappears on conflict. These are meaningful traits the annotations don't convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

It is front-loaded with the core action, which is good, but the middle is dense and cryptic ('a recent winning range needs two supporting higher buckets and disappears on conflict') and some content duplicates the schema's profile enum descriptions. Several clauses feel like internal implementation notes rather than agent guidance, diluting the useful signal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With annotations and a full output schema present, the description need not explain safety or return shape. It does cover timing policy and the no-side-effect boundary, but it omits the one thing an agent most needs for a 10-sibling toolset: an explicit statement of when this route-selection tool should be chosen over assetfare_v2_quote or assetfare_v2_quote_selected_candidate. That omission leaves the core selection decision underspecified.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents profile timing, chain/token constraints, min-1/max-60 bounds, and the amount semantics. The description mostly echoes profile timing (fast 30s, balanced/economy 60s) and adds the example corridor rather than new parameter syntax. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a specific verb+resource: it quotes routes and returns up to two all-in choices with defined labels (assetfare_verified_unsigned / external_provider_handoff). It also implicitly separates itself from write siblings with 'Never approves, prepares, signs, or submits.' However, it never explicitly distinguishes itself from the closely named sibling quote tools (assetfare_v2_quote, assetfare_v2_quote_selected_candidate), so the differentiation is incomplete.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied through the example ('compare Solana USDC to Base USDC at USD 347.25 with balanced') and the selection logic described, but there is no explicit 'use this when X, use sibling Y instead' routing. An agent must infer that this is the multi-candidate selection variant rather than a plain single quote, which is a meaningful gap given several near-identical quote siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_session_createB
Idempotent
Inspect

Create one receipt-driven workflow. Example: pass caller_approved=true, a session approval_v3, its idempotency_key, a caller-local session token, and the quote-bound verification_context. Economic guidance is advisory and adds no request field. The adapter validates approval and context before the upstream request. Every returned action is deeply verified and receives a caller-wallet handoff. AssetFare never signs or submits.

NameRequiredDescriptionDefault
walletsYesMap each chain needed by this route to the caller's public wallet address. Include public addresses only; never private keys or seed phrases.
to_chainYesDestination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations.
to_tokenYesOutput token symbol on to_chain. The chain-token pair must appear in current v2 capabilities.
amount_usdYesRequested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount.
from_chainYesSource chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain.
from_tokenYesInput token symbol on from_chain. The chain-token pair must appear in current v2 capabilities.
approval_v3YesStrict Core 2.4.1 session quote-bound selection from the exact unexpired quote. Required for every remote session flow.
session_tokenYesSensitive caller-generated v2 session capability: at least 32 CSPRNG bytes encoded as 43-128 URL-safe base64 characters. Generate it locally; never log it or substitute a private key or legacy access token.
caller_approvedYesLegacy caller assertion that MUST be supplied explicitly. It is not human-proof and is never auto-inserted; approval_v3 adds server-enforced quote binding.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.
event_signer_publicNoSolana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key.
verification_contextYesStrict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.

Output Schema

NameRequiredDescription
signedYes
statusYes
submittedYes
session_idYes
quote_bindingYes
current_actionYes
server_signingYes
action_availableYes
server_submissionYes

TDQS

B3.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations (idempotentHint, destructiveHint=false, openWorldHint), it discloses that validation occurs before the upstream request, that returned actions are verified and handed off to caller wallets, and that AssetFare never signs or submits. This non-custodial, verify-then-handoff behavior is genuinely additive context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The creation statement is front-loaded and the following sentences are dense with distinct facts (example inputs, validation order, handoff, no signing). The 'Economic guidance is advisory and adds no request field' sentence is slightly cryptic but not wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 12-parameter, deeply nested, open-world session tool, the description covers prerequisites and the non-custodial guarantee but omits lifecycle context: how the created session relates to session_get/refresh_action/observe_* tools, and what the caller must do with the returned action. It relies heavily on the schema and output schema to fill those gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description names several required parameters but only restates the schema's intent; it adds no format, constraint, or inter-parameter dependency information beyond what the highly detailed schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description says 'Create one receipt-driven workflow', which gives a verb but replaces the actual resource ('session') with in-house jargon. It never distinguishes this from siblings such as assetfare_v2_session_get, assetfare_v2_prepare, or assetfare_v2_quote, so an agent cannot route on the description alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides a sample call (caller_approved, approval_v3, idempotency_key, session_token, verification_context) but never states when to use session_create versus the other session_* or quote/prepare tools, nor any when-not condition. Usage is only implied through the example.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_session_getA
Read-onlyIdempotent
Inspect

Read an existing v2 workflow without advancing it. Example: pass session_id, session_token, and the original verification_context after restart. The adapter deeply verifies any current_action and emits a self-verifying wallet handoff, or fails closed. Read-only; never signs or submits.

NameRequiredDescriptionDefault
session_idYesV2 workflow session UUID returned by assetfare_v2_session_create. Use only with assetfare_v2_session_* tools; do not pass a legacy session ID.
session_tokenYesSensitive caller-generated v2 session capability: at least 32 CSPRNG bytes encoded as 43-128 URL-safe base64 characters. Generate it locally; never log it or substitute a private key or legacy access token.
verification_contextYesStrict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.

Output Schema

NameRequiredDescription
signedYes
statusYes
submittedYes
session_idYes
quote_bindingYes
current_actionYes
server_signingYes
action_availableYes
server_submissionYes

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover readOnly/idempotent/non-destructive, but the description adds genuinely new behavior: deep verification of current_action, emission of a self-verifying wallet handoff, and fail-closed semantics. 'Never signs or submits' usefully reinforces the handoff boundary rather than restating annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, purpose front-loaded, with the example and safety note following. No filler, though the example sentence is slightly awkwardly compressed and could be tightened.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the description still covers the non-advancing contract and fail-closed behavior. Given the deeply nested verification_context schema, it is complete enough to invoke correctly, with only alternative-tool routing left implicit.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description only adds the point that verification_context must be the 'original' one after restart, which is mildly useful but adds little beyond the rich per-property schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Read an existing v2 workflow') and adds the crucial scope qualifier 'without advancing it,' which functionally distinguishes it from assetfare_v2_session_refresh_action. It stops short of naming any sibling explicitly, so an agent must infer the contrast.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'after restart' example gives one concrete usage context, implying when a caller would rehydrate a session. However, there is no guidance on when to prefer this over assetfare_v2_session_refresh_action or the observe_* siblings, and no stated preconditions beyond the example.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_session_observe_outputA
Idempotent
Inspect

Record an already-produced bridge or destination output, then advance the workflow. Example: pass the output hash, a new idempotency key, and the original verification_context. Any next current_action is deeply verified and receives a wallet handoff. AssetFare never signs or submits.

NameRequiredDescriptionDefault
session_idYesV2 workflow session UUID returned by assetfare_v2_session_create. Use only with assetfare_v2_session_* tools; do not pass a legacy session ID.
session_tokenYesSensitive caller-generated v2 session capability: at least 32 CSPRNG bytes encoded as 43-128 URL-safe base64 characters. Generate it locally; never log it or substitute a private key or legacy access token.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.
transaction_hashNoOptional bridge or destination transaction hash already produced outside AssetFare. Omit only when the provider output can be observed without a hash.
verification_contextYesStrict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.

Output Schema

NameRequiredDescription
signedYes
statusYes
submittedYes
session_idYes
quote_bindingYes
current_actionYes
server_signingYes
action_availableYes
server_submissionYes

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare idempotent=true, readOnly=false, destructive=false, so the safety profile is covered. The description adds real behavioral context beyond them: it advances the workflow, the next current_action gets deeply verified with a wallet handoff, and AssetFare never signs or submits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences, front-loaded with the action and effect, then an example, then the non-custodial guarantee. Dense but essentially waste-free; 'deeply verified' is the only slightly vague phrase.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and the description covers the essential behavioral facts (idempotency, workflow advancement, wallet handoff, no server signing). Minor gaps remain around what happens on a failed or duplicate observation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description's example loosely maps the call to the output hash, a fresh idempotency key, and the original verification_context, but adds no format or constraint detail beyond what the schema already documents.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Record an already-produced bridge or destination output') plus the side effect of advancing the workflow. It clearly contrasts with the source-side sibling through the word 'output', though it never names assetfare_v2_session_observe_source explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The trigger condition is clear: use this once a bridge/destination output already exists outside AssetFare. The worked example (output hash, new idempotency key, original verification_context) tells an agent exactly what a call looks like, but there is no explicit when-not or alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_session_observe_sourceA
Idempotent
Inspect

Record source hashes the caller already signed and submitted, then advance the workflow. Example: pass one finalized source hash, a new idempotency key, and the original verification_context. Any next current_action is deeply verified and receives a wallet handoff. AssetFare never signs or submits.

NameRequiredDescriptionDefault
session_idYesV2 workflow session UUID returned by assetfare_v2_session_create. Use only with assetfare_v2_session_* tools; do not pass a legacy session ID.
session_tokenYesSensitive caller-generated v2 session capability: at least 32 CSPRNG bytes encoded as 43-128 URL-safe base64 characters. Generate it locally; never log it or substitute a private key or legacy access token.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.
transaction_hashesYesOne to eight hashes for source transactions the caller already signed and submitted. Do not provide unsigned payloads or destination hashes.
verification_contextYesStrict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.

Output Schema

NameRequiredDescription
signedYes
statusYes
submittedYes
session_idYes
quote_bindingYes
current_actionYes
server_signingYes
action_availableYes
server_submissionYes

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare idempotentHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds real context beyond that: it advances workflow state, the next current_action is 'deeply verified' and receives a wallet handoff, and AssetFare never signs or submits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the action and followed by an example and a trust boundary. No filler, though the closing 'AssetFare never signs or submits' is partly reassurance rather than instruction.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need not be explained, and the description covers the essential workflow semantics (record hashes, advance state, possible wallet handoff). It leaves the relationship to the other session_* tools implicit, which is the only notable gap for a multi-step workflow.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description still adds meaning by mapping the example onto the parameters: one finalized source hash (transaction_hashes), a new idempotency key, and the original verification_context — the 'original/new' qualifiers are not stated in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a concrete verb and resource: 'Record source hashes the caller already signed and submitted, then advance the workflow.' This clearly separates it from a plain read or from the output-side sibling, though it never names an alternative tool explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied through the example ('pass one finalized source hash, a new idempotency key, and the original verification_context'), which shows the call shape but not when to choose this over observe_output or refresh_action. No explicit when/when-not conditions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_v2_session_refresh_actionA
Idempotent
Inspect

Refresh an expired action only while it remains unsubmitted. Example: pass the existing session, a new idempotency key, and the original verification_context. The refreshed action is deeply verified and receives a wallet handoff. Never refresh a submitted step; AssetFare never signs or submits.

NameRequiredDescriptionDefault
session_idYesV2 workflow session UUID returned by assetfare_v2_session_create. Use only with assetfare_v2_session_* tools; do not pass a legacy session ID.
session_tokenYesSensitive caller-generated v2 session capability: at least 32 CSPRNG bytes encoded as 43-128 URL-safe base64 characters. Generate it locally; never log it or substitute a private key or legacy access token.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.
verification_contextYesStrict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.

Output Schema

NameRequiredDescription
signedYes
statusYes
submittedYes
session_idYes
quote_bindingYes
current_actionYes
server_signingYes
action_availableYes
server_submissionYes

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=true and destructiveHint=false, but the description adds real context: the refreshed action is 'deeply verified', receives a 'wallet handoff', and 'AssetFare never signs or submits'. That custody/handoff disclosure is genuine value beyond the structured hints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and its condition, then an example, then the safety boundary. Three dense sentences with little waste; the example sentence is efficient rather than redundant.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a high-complexity tool with nested objects and an output schema, the description covers purpose, preconditions, an example, and the signing/submission boundary. Return values are covered by the output schema, so nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds refresh-specific semantics: pass the 'existing session', a 'new idempotency key', and the 'original verification_context', clarifying which value should be fresh vs. reused. This meaningfully supplements the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Refresh an expired action') with the key constraint ('only while it remains unsubmitted'), which is far more specific than a tautology. It does not explicitly name a sibling alternative or contrast with session_get/session_create, so it falls short of 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear when-to-use ('refresh an expired action') and an explicit when-not ('Never refresh a submitted step'), plus a concrete usage example. It does not route the agent to a specific alternative tool for the excluded case, so it stops short of 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assetfare_verify_source_receiptA
Idempotent
Inspect

Verify a finalized Solana source signature already submitted by the caller and advance the legacy v1 workflow. Use only after the caller independently submits assetfare_prepare_source_action; for a v2 session use assetfare_v2_session_observe_source instead. Requires caller approval and makes a network request, but never signs or submits.

NameRequiredDescriptionDefault
signatureYesCaller-produced Solana signature for the exact indicated legacy message or transaction. Never provide a seed phrase, private key, or signed transaction payload.
session_idYesLegacy v1 session UUID returned by assetfare_create_session. Use only with the unversioned legacy workflow; do not pass a v2 session ID.
access_tokenYesSensitive legacy v1 wallet-bound bearer token returned by assetfare_finish_wallet_auth. Use only with unversioned legacy session tools; never log or use it as a v2 session capability.
idempotency_keyYesCaller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=false, idempotentHint=true, and destructiveHint=false. The description adds valuable behavioral context: it requires caller approval, makes a network request, never signs or submits, and advances a stateful workflow. This goes beyond schema/annotations without contradicting them, though it could say a bit more about failure behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, each carrying distinct value: purpose, usage/alternative, and behavioral caveat. The most important scoping information is front-loaded, and there is no repeated or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a stateful v1 workflow step with no output schema, the description adequately covers ordering, v1/v2 routing, and safety profile. It could be slightly more explicit about what 'advances the workflow' means for subsequent steps or response interpretation, but the essential invocation context is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and each parameter has a clear, detailed description (e.g., signature format and security warning, session_id scope, access_token sensitivity, idempotency_key reuse rule). The tool description itself adds workflow context but does not need to repeat parameter details; the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Verify'), names the exact resource ('finalized Solana source signature already submitted by the caller'), and states the workflow effect ('advance the legacy v1 workflow'). It also explicitly distinguishes this tool from the v2 sibling assetfare_v2_session_observe_source, so an agent can select it correctly without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives an explicit precondition: use only after the caller independently submits assetfare_prepare_source_action. It also states the alternative for v2 sessions, making the when-to-use and when-not-to-use boundaries clear. The added note about caller approval and network behavior further clarifies prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv1.21.6
    • Changedassetfare_v2_capabilities19 fields changed
      • changedOutput schema / properties / asset_endpoints / items / properties / chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedOutput schema / properties / asset_endpoints / maxItems
        Previous value: -20New value: +24
      • changedOutput schema / properties / caller_owned_agent_execution / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_key_access": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "command": {
        -        "const": "assetfare-agent-runner",
        -        "type": "string"
        -      },
        -      "key_location": {
        -        "const": "caller_wallet_adapter_only",
        -        "type": "string"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.5.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "const": "assetfare-mcp",
        -        "type": "string"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v1.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "scope": {
        -        "const": "caller_process_only",
        -        "type": "string"
        -      },
        -      "supported": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v1",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.7.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.7.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.3",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.4",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.9.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.10.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.11.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.12.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.13.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.13.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.13.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.3",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.4",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.5",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.15.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.15.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.15.3",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_key_access": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "command": {
        +        "const": "assetfare-agent-runner",
        +        "type": "string"
        +      },
        +      "key_location": {
        +        "const": "caller_wallet_adapter_only",
        +        "type": "string"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.5.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "const": "assetfare-mcp",
        +        "type": "string"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v1.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "scope": {
        +        "const": "caller_process_only",
        +        "type": "string"
        +      },
        +      "supported": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v1",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.7.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.7.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.4",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.9.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.10.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.11.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.12.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.4",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.5",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.16.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.17.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.18.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.19.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.19.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.20.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.20.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.21.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_key_access": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "key_location": {
        +        "const": "caller_wallet_adapter_only",
        +        "type": "string"
        +      },
        +      "local_verdict_schema": {
        +        "const": "https://assetfare.dev/schemas/assetfare-local-verification-verdict-1.0.0.json",
        +        "type": "string"
        +      },
        +      "manual_transaction_reasoning_required": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.21.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "const": "assetfare-mcp",
        +        "type": "string"
        +      },
        +      "plan_command": {
        +        "const": "assetfare-plan",
        +        "type": "string"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "proof_carrying_action_required": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "remote_mcp_tool": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "remote_semantic_verification_is_not_signing_authority": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "required_pre_sign_status": {
        +        "const": "verified_for_signing",
        +        "type": "string"
        +      },
        +      "scope": {
        +        "const": "caller_process_only",
        +        "type": "string"
        +      },
        +      "session_runner_command": {
        +        "const": "assetfare-agent-runner",
        +        "type": "string"
        +      },
        +      "supported": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v3",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version",
        +      "local_verdict_schema",
        +      "manual_transaction_reasoning_required",
        +      "plan_command",
        +      "proof_carrying_action_required",
        +      "remote_semantic_verification_is_not_signing_authority",
        +      "required_pre_sign_status",
        +      "session_runner_command"
        +    ],
        +    "type": "object"
        +  }
        +]
      • changedOutput schema / properties / chains / items / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedOutput schema / properties / chains / maxItems
        Previous value: -16New value: +19
      • changedOutput schema / properties / currently_prepare_ready_routes / maximum
        Previous value: -98New value: +100
      • changedOutput schema / properties / direct_route_summary / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "assetfare_fee_step_bound": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "base_unit_amounts_are_decimal_strings": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "classification_values": {
        -        "items": [
        -          {
        -            "const": "direct_protocol_only",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_intent",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "external_intent": {
        -        "const": "Across only for Robinhood ingress; provider-internal liquidity sourcing or aggregation remains possible",
        -        "type": "string"
        -      },
        -      "normalized_chain_asset_endpoints": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "ordered_provider_path": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "required_on_every_quote": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_aggregator_used_scope": {
        -        "const": "assetfare_engine_only",
        -        "type": "string"
        -      },
        -      "route_count": {
        -        "const": 76,
        -        "type": "number"
        -      },
        -      "server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "step_count": {
        -        "const": 172,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-direct-route-summary-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "required_on_every_quote",
        -      "route_count",
        -      "step_count",
        -      "ordered_provider_path",
        -      "normalized_chain_asset_endpoints",
        -      "base_unit_amounts_are_decimal_strings",
        -      "assetfare_fee_step_bound",
        -      "classification_values",
        -      "route_aggregator_used_scope",
        -      "external_intent",
        -      "server_signing",
        -      "server_submission"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "assetfare_fee_step_bound": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "base_unit_amounts_are_decimal_strings": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "classification_values": {
        -        "items": [
        -          {
        -            "const": "direct_protocol_only",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_intent",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "economic_eligibility_is_route_and_amount_conditioned": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "external_coverage_only_route_count": {
        -        "const": 9,
        -        "type": "number"
        -      },
        -      "external_intent": {
        -        "const": "Across only for nine Robinhood ingress coverage routes; provider-internal liquidity sourcing or aggregation remains possible",
        -        "type": "string"
        -      },
        -      "normalized_chain_asset_endpoints": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "ordered_provider_path": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "primary_direct_route_count": {
        -        "const": 67,
        -        "type": "number"
        -      },
        -      "product_classification_values": {
        -        "items": [
        -          {
        -            "const": "primary_direct",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_coverage_only",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "required_on_every_quote": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_aggregator_used_scope": {
        -        "const": "assetfare_engine_only",
        -        "type": "string"
        -      },
        -      "route_count": {
        -        "const": 76,
        -        "type": "number"
        -      },
        -      "server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "step_count": {
        -        "const": 170,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-direct-route-summary-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "required_on_every_quote",
        -      "route_count",
        -      "primary_direct_route_count",
        -      "external_coverage_only_route_count",
        -      "step_count",
        -      "ordered_provider_path",
        -      "normalized_chain_asset_endpoints",
        -      "base_unit_amounts_are_decimal_strings",
        -      "assetfare_fee_step_bound",
        -      "classification_values",
        -      "product_classification_values",
        -      "economic_eligibility_is_route_and_amount_conditioned",
        -      "route_aggregator_used_scope",
        -      "external_intent",
        -      "server_signing",
        -      "server_submission"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "assetfare_fee_step_bound": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "base_unit_amounts_are_decimal_strings": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "classification_values": {
        -        "items": [
        -          {
        -            "const": "direct_protocol_only",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_intent",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "economic_eligibility_is_route_and_amount_conditioned": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "external_coverage_only_route_count": {
        -        "const": 0,
        -        "type": "number"
        -      },
        -      "external_intent": {
        -        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        -        "type": "string"
        -      },
        -      "normalized_chain_asset_endpoints": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "ordered_provider_path": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "primary_direct_route_count": {
        -        "const": 76,
        -        "type": "number"
        -      },
        -      "product_classification_values": {
        -        "items": [
        -          {
        -            "const": "primary_direct",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_coverage_only",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "required_on_every_quote": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_aggregator_used_scope": {
        -        "const": "assetfare_engine_only",
        -        "type": "string"
        -      },
        -      "route_count": {
        -        "const": 76,
        -        "type": "number"
        -      },
        -      "server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "step_count": {
        -        "const": 184,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-direct-route-summary-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "required_on_every_quote",
        -      "route_count",
        -      "primary_direct_route_count",
        -      "external_coverage_only_route_count",
        -      "step_count",
        -      "ordered_provider_path",
        -      "normalized_chain_asset_endpoints",
        -      "base_unit_amounts_are_decimal_strings",
        -      "assetfare_fee_step_bound",
        -      "classification_values",
        -      "product_classification_values",
        -      "economic_eligibility_is_route_and_amount_conditioned",
        -      "route_aggregator_used_scope",
        -      "external_intent",
        -      "server_signing",
        -      "server_submission"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "assetfare_fee_step_bound": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "base_unit_amounts_are_decimal_strings": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "classification_values": {
        -        "items": [
        -          {
        -            "const": "direct_protocol_only",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_intent",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "economic_eligibility_is_route_and_amount_conditioned": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "external_coverage_only_route_count": {
        -        "const": 0,
        -        "type": "number"
        -      },
        -      "external_intent": {
        -        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        -        "type": "string"
        -      },
        -      "normalized_chain_asset_endpoints": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "ordered_provider_path": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "primary_direct_route_count": {
        -        "const": 80,
        -        "type": "number"
        -      },
        -      "product_classification_values": {
        -        "items": [
        -          {
        -            "const": "primary_direct",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_coverage_only",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "required_on_every_quote": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_aggregator_used_scope": {
        -        "const": "assetfare_engine_only",
        -        "type": "string"
        -      },
        -      "route_count": {
        -        "const": 80,
        -        "type": "number"
        -      },
        -      "server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "step_count": {
        -        "const": 188,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-direct-route-summary-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "required_on_every_quote",
        -      "route_count",
        -      "primary_direct_route_count",
        -      "external_coverage_only_route_count",
        -      "step_count",
        -      "ordered_provider_path",
        -      "normalized_chain_asset_endpoints",
        -      "base_unit_amounts_are_decimal_strings",
        -      "assetfare_fee_step_bound",
        -      "classification_values",
        -      "product_classification_values",
        -      "economic_eligibility_is_route_and_amount_conditioned",
        -      "route_aggregator_used_scope",
        -      "external_intent",
        -      "server_signing",
        -      "server_submission"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "assetfare_fee_step_bound": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "base_unit_amounts_are_decimal_strings": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "classification_values": {
        -        "items": [
        -          {
        -            "const": "direct_protocol_only",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_intent",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "economic_eligibility_is_route_and_amount_conditioned": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "external_coverage_only_route_count": {
        -        "const": 0,
        -        "type": "number"
        -      },
        -      "external_intent": {
        -        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        -        "type": "string"
        -      },
        -      "normalized_chain_asset_endpoints": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "ordered_provider_path": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "primary_direct_route_count": {
        -        "const": 54,
        -        "type": "number"
        -      },
        -      "product_classification_values": {
        -        "items": [
        -          {
        -            "const": "primary_direct",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_coverage_only",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "required_on_every_quote": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_aggregator_used_scope": {
        -        "const": "assetfare_engine_only",
        -        "type": "string"
        -      },
        -      "route_count": {
        -        "const": 54,
        -        "type": "number"
        -      },
        -      "server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "step_count": {
        -        "const": 95,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-direct-route-summary-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "required_on_every_quote",
        -      "route_count",
        -      "primary_direct_route_count",
        -      "external_coverage_only_route_count",
        -      "step_count",
        -      "ordered_provider_path",
        -      "normalized_chain_asset_endpoints",
        -      "base_unit_amounts_are_decimal_strings",
        -      "assetfare_fee_step_bound",
        -      "classification_values",
        -      "product_classification_values",
        -      "economic_eligibility_is_route_and_amount_conditioned",
        -      "route_aggregator_used_scope",
        -      "external_intent",
        -      "server_signing",
        -      "server_submission"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "external_intent": {
        +        "const": "Across only for Robinhood ingress; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 172,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 9,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "Across only for nine Robinhood ingress coverage routes; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 67,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 170,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 184,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 80,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 80,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 188,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 54,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 54,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 95,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 98,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 98,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 206,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 100,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 100,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 208,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 65,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 65,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 118,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  }
        +]
      • changedOutput schema / properties / directed_conversion_routes / enum
        Previous value: -[
        -  54,
        -  42,
        -  76,
        -  80
        -]New value: +[
        +  100,
        +  98,
        +  65,
        +  54,
        +  42,
        +  76,
        +  80
        +]
      • changedOutput schema / properties / economic_guidance / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "advisory_start_distribution": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "100": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "1000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "10000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "250": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "2500": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "50": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "500": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "5000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          }
        -        },
        -        "required": [
        -          "50",
        -          "100",
        -          "250",
        -          "500",
        -          "1000",
        -          "2500",
        -          "5000",
        -          "10000"
        -        ],
        -        "type": "object"
        -      },
        -      "amount_is_never_rejected_by_economic_guidance": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "as_of": {
        -        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        -        "type": "string"
        -      },
        -      "confidence_counts": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "coverage_only_retest": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "measured_route_specific": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "measured_two_day": {
        -            "maximum": 80,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "reworked_route_remeasure": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "structural_estimate": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          }
        -        },
        -        "required": [
        -          "measured_two_day",
        -          "measured_route_specific",
        -          "structural_estimate",
        -          "reworked_route_remeasure",
        -          "coverage_only_retest"
        -        ],
        -        "type": "object"
        -      },
        -      "currency": {
        -        "const": "USD",
        -        "type": "string"
        -      },
        -      "economic_guidance_is_non_enforcing": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "fresh_quote_and_caller_decision_control": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_count": {
        -        "const": 80,
        -        "type": "number"
        -      },
        -      "technical_quote_minimum_usd": {
        -        "const": 1,
        -        "type": "number"
        -      },
        -      "update_policy": {
        -        "const": "append_daily_observations_then_replace_values_without_schema_change",
        -        "type": "string"
        -      },
        -      "values_change_with_market": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "version": {
        -        "const": "assetfare-route-economic-guidance-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "as_of",
        -      "route_count",
        -      "currency",
        -      "technical_quote_minimum_usd",
        -      "economic_guidance_is_non_enforcing",
        -      "amount_is_never_rejected_by_economic_guidance",
        -      "values_change_with_market",
        -      "fresh_quote_and_caller_decision_control",
        -      "update_policy",
        -      "confidence_counts",
        -      "advisory_start_distribution"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "advisory_start_distribution": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "100": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "1000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "10000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "250": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "2500": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "50": {
        -            "maximum": 98,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "500": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "5000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          }
        -        },
        -        "required": [
        -          "50",
        -          "100",
        -          "250",
        -          "500",
        -          "1000",
        -          "2500",
        -          "5000",
        -          "10000"
        -        ],
        -        "type": "object"
        -      },
        -      "amount_is_never_rejected_by_economic_guidance": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "as_of": {
        -        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        -        "type": "string"
        -      },
        -      "availability_only_route_count": {
        -        "const": 10,
        -        "type": "number"
        -      },
        -      "currency": {
        -        "const": "USD",
        -        "type": "string"
        -      },
        -      "economic_guidance_is_non_enforcing": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "expected_output_ranking": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "first_use_zero_allowance_scenario": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "fresh_quote_and_caller_decision_control": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "incomplete_cost_never_promoted": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "public_active_route_count": {
        -        "const": 54,
        -        "type": "number"
        -      },
        -      "public_inactive_route_count": {
        -        "const": 44,
        -        "type": "number"
        -      },
        -      "recommendation_status_counts": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "active_availability_only": {
        -            "const": 10,
        -            "type": "number"
        -          },
        -          "active_price_verified": {
        -            "const": 44,
        -            "type": "number"
        -          },
        -          "inactive_economics": {
        -            "const": 44,
        -            "type": "number"
        -          }
        -        },
        -        "required": [
        -          "active_price_verified",
        -          "active_availability_only",
        -          "inactive_economics"
        -        ],
        -        "type": "object"
        -      },
        -      "route_count": {
        -        "const": 98,
        -        "type": "number"
        -      },
        -      "technical_quote_minimum_usd": {
        -        "const": 1,
        -        "type": "number"
        -      },
        -      "tested_ceiling_usd": {
        -        "const": 10000,
        -        "type": "number"
        -      },
        -      "update_policy": {
        -        "const": "daily_measurement_with_three_day_reactivation_hysteresis",
        -        "type": "string"
        -      },
        -      "values_change_with_market": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "verified_best_from_route_count": {
        -        "const": 44,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-route-economic-guidance-v3",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "as_of",
        -      "route_count",
        -      "public_active_route_count",
        -      "public_inactive_route_count",
        -      "verified_best_from_route_count",
        -      "availability_only_route_count",
        -      "currency",
        -      "technical_quote_minimum_usd",
        -      "economic_guidance_is_non_enforcing",
        -      "amount_is_never_rejected_by_economic_guidance",
        -      "values_change_with_market",
        -      "fresh_quote_and_caller_decision_control",
        -      "update_policy",
        -      "first_use_zero_allowance_scenario",
        -      "expected_output_ranking",
        -      "incomplete_cost_never_promoted",
        -      "tested_ceiling_usd",
        -      "advisory_start_distribution",
        -      "recommendation_status_counts"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "advisory_start_distribution": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "100": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "1000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "10000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "250": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "2500": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "50": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "500": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "5000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          }
        +        },
        +        "required": [
        +          "50",
        +          "100",
        +          "250",
        +          "500",
        +          "1000",
        +          "2500",
        +          "5000",
        +          "10000"
        +        ],
        +        "type": "object"
        +      },
        +      "amount_is_never_rejected_by_economic_guidance": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "as_of": {
        +        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +        "type": "string"
        +      },
        +      "confidence_counts": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "coverage_only_retest": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "measured_route_specific": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "measured_two_day": {
        +            "maximum": 80,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "reworked_route_remeasure": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "structural_estimate": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          }
        +        },
        +        "required": [
        +          "measured_two_day",
        +          "measured_route_specific",
        +          "structural_estimate",
        +          "reworked_route_remeasure",
        +          "coverage_only_retest"
        +        ],
        +        "type": "object"
        +      },
        +      "currency": {
        +        "const": "USD",
        +        "type": "string"
        +      },
        +      "economic_guidance_is_non_enforcing": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "fresh_quote_and_caller_decision_control": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_count": {
        +        "const": 80,
        +        "type": "number"
        +      },
        +      "technical_quote_minimum_usd": {
        +        "const": 1,
        +        "type": "number"
        +      },
        +      "update_policy": {
        +        "const": "append_daily_observations_then_replace_values_without_schema_change",
        +        "type": "string"
        +      },
        +      "values_change_with_market": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "version": {
        +        "const": "assetfare-route-economic-guidance-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "as_of",
        +      "route_count",
        +      "currency",
        +      "technical_quote_minimum_usd",
        +      "economic_guidance_is_non_enforcing",
        +      "amount_is_never_rejected_by_economic_guidance",
        +      "values_change_with_market",
        +      "fresh_quote_and_caller_decision_control",
        +      "update_policy",
        +      "confidence_counts",
        +      "advisory_start_distribution"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "advisory_start_distribution": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "100": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "1000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "10000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "250": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "2500": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "50": {
        +            "maximum": 100,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "500": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "5000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          }
        +        },
        +        "required": [
        +          "50",
        +          "100",
        +          "250",
        +          "500",
        +          "1000",
        +          "2500",
        +          "5000",
        +          "10000"
        +        ],
        +        "type": "object"
        +      },
        +      "amount_is_never_rejected_by_economic_guidance": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "as_of": {
        +        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +        "type": "string"
        +      },
        +      "availability_only_route_count": {
        +        "const": 10,
        +        "type": "number"
        +      },
        +      "currency": {
        +        "const": "USD",
        +        "type": "string"
        +      },
        +      "economic_guidance_is_non_enforcing": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "expected_output_ranking": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "first_use_zero_allowance_scenario": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "fresh_quote_and_caller_decision_control": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "incomplete_cost_never_promoted": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "public_active_route_count": {
        +        "const": 54,
        +        "type": "number"
        +      },
        +      "public_inactive_route_count": {
        +        "const": 44,
        +        "type": "number"
        +      },
        +      "recommendation_status_counts": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "active_availability_only": {
        +            "const": 10,
        +            "type": "number"
        +          },
        +          "active_price_verified": {
        +            "const": 44,
        +            "type": "number"
        +          },
        +          "inactive_economics": {
        +            "const": 44,
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "active_price_verified",
        +          "active_availability_only",
        +          "inactive_economics"
        +        ],
        +        "type": "object"
        +      },
        +      "route_count": {
        +        "const": 98,
        +        "type": "number"
        +      },
        +      "technical_quote_minimum_usd": {
        +        "const": 1,
        +        "type": "number"
        +      },
        +      "tested_ceiling_usd": {
        +        "const": 10000,
        +        "type": "number"
        +      },
        +      "update_policy": {
        +        "const": "daily_measurement_with_three_day_reactivation_hysteresis",
        +        "type": "string"
        +      },
        +      "values_change_with_market": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "verified_best_from_route_count": {
        +        "const": 44,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-route-economic-guidance-v3",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "as_of",
        +      "route_count",
        +      "public_active_route_count",
        +      "public_inactive_route_count",
        +      "verified_best_from_route_count",
        +      "availability_only_route_count",
        +      "currency",
        +      "technical_quote_minimum_usd",
        +      "economic_guidance_is_non_enforcing",
        +      "amount_is_never_rejected_by_economic_guidance",
        +      "values_change_with_market",
        +      "fresh_quote_and_caller_decision_control",
        +      "update_policy",
        +      "first_use_zero_allowance_scenario",
        +      "expected_output_ranking",
        +      "incomplete_cost_never_promoted",
        +      "tested_ceiling_usd",
        +      "advisory_start_distribution",
        +      "recommendation_status_counts"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "advisory_start_distribution": {
        +        "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution"
        +      },
        +      "amount_is_never_rejected_by_economic_guidance": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "as_of": {
        +        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +        "type": "string"
        +      },
        +      "availability_only_route_count": {
        +        "const": 10,
        +        "type": "number"
        +      },
        +      "compare_required_route_count": {
        +        "const": 44,
        +        "type": "number"
        +      },
        +      "currency": {
        +        "const": "USD",
        +        "type": "string"
        +      },
        +      "economic_guidance_blocks_execution": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "economic_guidance_is_non_enforcing": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "expected_output_ranking": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "first_use_zero_allowance_scenario": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "fresh_quote_and_caller_decision_control": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "incomplete_cost_never_promoted": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "nonrecommended_route_count": {
        +        "const": 54,
        +        "type": "number"
        +      },
        +      "public_active_route_count": {
        +        "const": 98,
        +        "type": "number"
        +      },
        +      "public_inactive_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "recommendation_status_counts": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "active_availability_only": {
        +            "const": 10,
        +            "type": "number"
        +          },
        +          "active_compare_required": {
        +            "const": 44,
        +            "type": "number"
        +          },
        +          "active_price_verified": {
        +            "const": 44,
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "active_price_verified",
        +          "active_availability_only",
        +          "active_compare_required"
        +        ],
        +        "type": "object"
        +      },
        +      "route_count": {
        +        "const": 98,
        +        "type": "number"
        +      },
        +      "technical_quote_minimum_usd": {
        +        "const": 1,
        +        "type": "number"
        +      },
        +      "tested_ceiling_usd": {
        +        "const": 10000,
        +        "type": "number"
        +      },
        +      "update_policy": {
        +        "const": "daily_measurement_with_three_day_recommendation_hysteresis_availability_separate",
        +        "type": "string"
        +      },
        +      "values_change_with_market": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "verified_best_from_route_count": {
        +        "const": 44,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-route-economic-guidance-v4",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "as_of",
        +      "route_count",
        +      "public_active_route_count",
        +      "public_inactive_route_count",
        +      "verified_best_from_route_count",
        +      "availability_only_route_count",
        +      "compare_required_route_count",
        +      "nonrecommended_route_count",
        +      "currency",
        +      "technical_quote_minimum_usd",
        +      "economic_guidance_is_non_enforcing",
        +      "economic_guidance_blocks_execution",
        +      "amount_is_never_rejected_by_economic_guidance",
        +      "values_change_with_market",
        +      "fresh_quote_and_caller_decision_control",
        +      "update_policy",
        +      "first_use_zero_allowance_scenario",
        +      "expected_output_ranking",
        +      "incomplete_cost_never_promoted",
        +      "tested_ceiling_usd",
        +      "advisory_start_distribution",
        +      "recommendation_status_counts"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "advisory_start_distribution": {
        +        "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution"
        +      },
        +      "amount_is_never_rejected_by_economic_guidance": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "as_of": {
        +        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +        "type": "string"
        +      },
        +      "availability_only_route_count": {
        +        "const": 10,
        +        "type": "number"
        +      },
        +      "compare_required_route_count": {
        +        "const": 46,
        +        "type": "number"
        +      },
        +      "currency": {
        +        "const": "USD",
        +        "type": "string"
        +      },
        +      "economic_guidance_blocks_execution": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "economic_guidance_is_non_enforcing": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "expected_output_ranking": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "first_use_zero_allowance_scenario": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "fresh_quote_and_caller_decision_control": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "incomplete_cost_never_promoted": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "nonrecommended_route_count": {
        +        "const": 56,
        +        "type": "number"
        +      },
        +      "public_active_route_count": {
        +        "const": 100,
        +        "type": "number"
        +      },
        +      "public_inactive_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "recommendation_status_counts": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "active_availability_only": {
        +            "const": 10,
        +            "type": "number"
        +          },
        +          "active_compare_required": {
        +            "const": 46,
        +            "type": "number"
        +          },
        +          "active_price_verified": {
        +            "const": 44,
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "active_price_verified",
        +          "active_availability_only",
        +          "active_compare_required"
        +        ],
        +        "type": "object"
        +      },
        +      "route_count": {
        +        "const": 100,
        +        "type": "number"
        +      },
        +      "technical_quote_minimum_usd": {
        +        "const": 1,
        +        "type": "number"
        +      },
        +      "tested_ceiling_usd": {
        +        "const": 10000,
        +        "type": "number"
        +      },
        +      "update_policy": {
        +        "const": "daily_measurement_with_three_day_recommendation_hysteresis_availability_separate",
        +        "type": "string"
        +      },
        +      "values_change_with_market": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "verified_best_from_route_count": {
        +        "const": 44,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-route-economic-guidance-v4",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "as_of",
        +      "route_count",
        +      "public_active_route_count",
        +      "public_inactive_route_count",
        +      "verified_best_from_route_count",
        +      "availability_only_route_count",
        +      "compare_required_route_count",
        +      "nonrecommended_route_count",
        +      "currency",
        +      "technical_quote_minimum_usd",
        +      "economic_guidance_is_non_enforcing",
        +      "economic_guidance_blocks_execution",
        +      "amount_is_never_rejected_by_economic_guidance",
        +      "values_change_with_market",
        +      "fresh_quote_and_caller_decision_control",
        +      "update_policy",
        +      "first_use_zero_allowance_scenario",
        +      "expected_output_ranking",
        +      "incomplete_cost_never_promoted",
        +      "tested_ceiling_usd",
        +      "advisory_start_distribution",
        +      "recommendation_status_counts"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "amount_specific_product_gates": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "as_of": {
        +        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +        "type": "string"
        +      },
        +      "business_class_counts": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "conditional_business": {
        +            "const": 50,
        +            "type": "number"
        +          },
        +          "core_business": {
        +            "const": 3,
        +            "type": "number"
        +          },
        +          "research_or_retire": {
        +            "const": 35,
        +            "type": "number"
        +          },
        +          "strategic_scarce": {
        +            "const": 12,
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "core_business",
        +          "conditional_business",
        +          "strategic_scarce",
        +          "research_or_retire"
        +        ],
        +        "type": "object"
        +      },
        +      "competitor_rankings_public_product": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "decision_unit": {
        +        "const": "whole_route",
        +        "type": "string"
        +      },
        +      "economic_guidance_blocks_execution": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "fresh_quote_and_caller_decision_control": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "next_scheduled_review_at": {
        +        "format": "date-time",
        +        "type": "string"
        +      },
        +      "primary_research_amount_usd": {
        +        "const": 1000,
        +        "type": "number"
        +      },
        +      "public_active_route_count": {
        +        "const": 65,
        +        "type": "number"
        +      },
        +      "public_inactive_route_count": {
        +        "const": 35,
        +        "type": "number"
        +      },
        +      "route_count": {
        +        "const": 100,
        +        "type": "number"
        +      },
        +      "secondary_research_amounts_usd": {
        +        "items": [
        +          {
        +            "const": 100,
        +            "type": "number"
        +          },
        +          {
        +            "const": 10000,
        +            "type": "number"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "version": {
        +        "const": "assetfare-route-economic-guidance-v5",
        +        "type": "string"
        +      },
        +      "weekly_review_anchor": {
        +        "const": "sunday_00_00_utc",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "as_of",
        +      "route_count",
        +      "public_active_route_count",
        +      "public_inactive_route_count",
        +      "business_class_counts",
        +      "decision_unit",
        +      "amount_specific_product_gates",
        +      "competitor_rankings_public_product",
        +      "economic_guidance_blocks_execution",
        +      "fresh_quote_and_caller_decision_control",
        +      "primary_research_amount_usd",
        +      "secondary_research_amounts_usd",
        +      "weekly_review_anchor",
        +      "next_scheduled_review_at"
        +    ],
        +    "type": "object"
        +  }
        +]
      • changedOutput schema / properties / execution_availability / properties / provider_dependent_routes / maximum
        Previous value: -98New value: +100
      • changedOutput schema / properties / execution_implemented_routes / enum
        Previous value: -[
        -  54,
        -  42,
        -  76,
        -  80
        -]New value: +[
        +  100,
        +  98,
        +  65,
        +  54,
        +  42,
        +  76,
        +  80
        +]
      • changedOutput schema / properties / execution_ready_routes / enum
        Previous value: -[
        -  54,
        -  42,
        -  76,
        -  80
        -]New value: +[
        +  100,
        +  98,
        +  65,
        +  54,
        +  42,
        +  76,
        +  80
        +]
      • changedOutput schema / properties / source_only_asset_endpoints / items / properties / chain / enum
        Previous value: -[
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedOutput schema / properties / source_only_asset_endpoints / maxItems
        Previous value: -13New value: +15
      • changedOutput schema / properties / source_only_routes / items / enum
        Previous value: -[
        -  "ethereum:USDC->base:USDC",
        -  "ethereum:USDC->solana:USDC",
        -  "hyperevm:USDC->base:USDC",
        -  "hyperevm:USDC->solana:USDC",
        -  "optimism:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "polygon:USDC->base:USDC",
        -  "xlayer:USDC->base:USDC",
        -  "xlayer:USDC->solana:USDC",
        -  "sei:USDC->base:USDC",
        -  "sei:USDC->solana:USDC",
        -  "sonic:USDC->base:USDC",
        -  "sonic:USDC->solana:USDC",
        -  "monad:USDC->base:USDC",
        -  "monad:USDC->solana:USDC",
        -  "avalanche:USDC->base:USDC",
        -  "avalanche:USDC->solana:USDC",
        -  "cronos:USDC->base:USDC",
        -  "cronos:USDC->solana:USDC",
        -  "injective:USDC->base:USDC",
        -  "injective:USDC->solana:USDC",
        -  "linea:USDC->base:USDC",
        -  "linea:USDC->solana:USDC",
        -  "aptos:USDC->base:USDC",
        -  "aptos:USDC->solana:USDC"
        -]New value: +[
        +  "ethereum:USDC->base:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "polygon:USDC->base:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "unichain:USDC->solana:USDC",
        +  "ink:USDC->solana:USDC"
        +]
      • changedOutput schema / properties / source_only_routes / maxItems
        Previous value: -26New value: +28
      • changedOutput schema / properties / temporarily_unavailable_route_count / maximum
        Previous value: -98New value: +100
      • changedOutput schema / properties / temporarily_unavailable_routes / maxItems
        Previous value: -98New value: +100
      • changedOutput schema / properties / unsigned_route_plans_ready / enum
        Previous value: -[
        -  54,
        -  42,
        -  76,
        -  80
        -]New value: +[
        +  100,
        +  98,
        +  65,
        +  54,
        +  42,
        +  76,
        +  80
        +]
    • Changedassetfare_v2_prepare8 fields changed
      • changedInput schema / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain."
      • changedInput schema / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC",
        -  "ethereum:USDC->solana:USDC",
        -  "ethereum:USDC->base:USDC",
        -  "hyperevm:USDC->solana:USDC",
        -  "hyperevm:USDC->base:USDC",
        -  "xlayer:USDC->solana:USDC",
        -  "xlayer:USDC->base:USDC",
        -  "sei:USDC->solana:USDC",
        -  "sei:USDC->base:USDC",
        -  "sonic:USDC->solana:USDC",
        -  "sonic:USDC->base:USDC",
        -  "monad:USDC->solana:USDC",
        -  "monad:USDC->base:USDC",
        -  "avalanche:USDC->solana:USDC",
        -  "avalanche:USDC->base:USDC",
        -  "cronos:USDC->solana:USDC",
        -  "cronos:USDC->base:USDC",
        -  "injective:USDC->solana:USDC",
        -  "injective:USDC->base:USDC",
        -  "linea:USDC->solana:USDC",
        -  "linea:USDC->base:USDC",
        -  "aptos:USDC->solana:USDC",
        -  "aptos:USDC->base:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC",
        +  "unichain:USDC->solana:USDC",
        +  "ink:USDC->solana:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • addedOutput schema / properties / local_execution_gate
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Remote verification is not signing authority. Recompute locally and require verified_for_signing after fresh wallet simulation.",
        +  "type": "object"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "bundle",
        -  "semantic_verification",
        -  "action_verification",
        -  "caller_wallet_handoff"
        -]New value: +[
        +  "bundle",
        +  "semantic_verification",
        +  "action_verification",
        +  "caller_wallet_handoff",
        +  "local_execution_gate"
        +]
    • Changedassetfare_v2_quote6 fields changed
      • changedInput schema / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain."
      • changedInput schema / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedOutput schema / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedOutput schema / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC",
        -  "ethereum:USDC->solana:USDC",
        -  "ethereum:USDC->base:USDC",
        -  "hyperevm:USDC->solana:USDC",
        -  "hyperevm:USDC->base:USDC",
        -  "xlayer:USDC->solana:USDC",
        -  "xlayer:USDC->base:USDC",
        -  "sei:USDC->solana:USDC",
        -  "sei:USDC->base:USDC",
        -  "sonic:USDC->solana:USDC",
        -  "sonic:USDC->base:USDC",
        -  "monad:USDC->solana:USDC",
        -  "monad:USDC->base:USDC",
        -  "avalanche:USDC->solana:USDC",
        -  "avalanche:USDC->base:USDC",
        -  "cronos:USDC->solana:USDC",
        -  "cronos:USDC->base:USDC",
        -  "injective:USDC->solana:USDC",
        -  "injective:USDC->base:USDC",
        -  "linea:USDC->solana:USDC",
        -  "linea:USDC->base:USDC",
        -  "aptos:USDC->solana:USDC",
        -  "aptos:USDC->base:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC",
        +  "unichain:USDC->solana:USDC",
        +  "ink:USDC->solana:USDC"
        +]
      • changedOutput schema / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedOutput schema / properties / economic_guidance / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "advisory_role": {
        -        "enum": [
        -          "observed_economic_zone_start",
        -          "structural_evaluation_start_not_observed_eligibility",
        -          "retest_start_not_economic_eligibility"
        -        ],
        -        "type": "string"
        -      },
        -      "advisory_start_usd": {
        -        "enum": [
        -          50,
        -          100,
        -          250,
        -          500,
        -          1000,
        -          2500,
        -          5000,
        -          10000
        -        ],
        -        "type": "number"
        -      },
        -      "basis": {
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "confidence": {
        -        "enum": [
        -          "measured_two_day",
        -          "measured_route_specific",
        -          "structural_estimate",
        -          "reworked_route_remeasure",
        -          "coverage_only_retest"
        -        ],
        -        "type": "string"
        -      },
        -      "fresh_quote_required": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "not_a_best_price_guarantee": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "not_an_execution_minimum": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "status": {
        -        "enum": [
        -          "observed_near_parity",
        -          "observed_competitive_or_near_parity",
        -          "provisional_evaluation_start",
        -          "reworked_route_remeasure",
        -          "coverage_only_retest"
        -        ],
        -        "type": "string"
        -      },
        -      "tested_amounts_usd": {
        -        "items": {
        -          "exclusiveMinimum": 0,
        -          "type": "integer"
        -        },
        -        "maxItems": 8,
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "advisory_start_usd",
        -      "advisory_role",
        -      "status",
        -      "confidence",
        -      "basis",
        -      "tested_amounts_usd",
        -      "not_an_execution_minimum",
        -      "not_a_best_price_guarantee",
        -      "fresh_quote_required"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "advisory_start_usd": {
        -        "anyOf": [
        -          {
        -            "type": "null"
        -          },
        -          {
        -            "const": 50,
        -            "type": "number"
        -          },
        -          {
        -            "const": 100,
        -            "type": "number"
        -          },
        -          {
        -            "const": 250,
        -            "type": "number"
        -          },
        -          {
        -            "const": 500,
        -            "type": "number"
        -          },
        -          {
        -            "const": 1000,
        -            "type": "number"
        -          },
        -          {
        -            "const": 2500,
        -            "type": "number"
        -          },
        -          {
        -            "const": 5000,
        -            "type": "number"
        -          },
        -          {
        -            "const": 10000,
        -            "type": "number"
        -          }
        -        ]
        -      },
        -      "availability_only": {
        -        "type": "boolean"
        -      },
        -      "basis": {
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      "best_from_usd": {
        -        "anyOf": [
        -          {
        -            "type": "null"
        -          },
        -          {
        -            "const": 50,
        -            "type": "number"
        -          },
        -          {
        -            "const": 100,
        -            "type": "number"
        -          },
        -          {
        -            "const": 250,
        -            "type": "number"
        -          },
        -          {
        -            "const": 500,
        -            "type": "number"
        -          },
        -          {
        -            "const": 1000,
        -            "type": "number"
        -          },
        -          {
        -            "const": 2500,
        -            "type": "number"
        -          },
        -          {
        -            "const": 5000,
        -            "type": "number"
        -          },
        -          {
        -            "const": 10000,
        -            "type": "number"
        -          }
        -        ]
        -      },
        -      "best_from_verified": {
        -        "type": "boolean"
        -      },
        -      "confidence": {
        -        "enum": [
        -          "paired_all_in_snapshot",
        -          "availability_only_no_price_claim"
        -        ],
        -        "type": "string"
        -      },
        -      "fresh_quote_required": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "not_a_best_price_guarantee": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "not_an_execution_minimum": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "public_activation_status": {
        -        "enum": [
        -          "active_price_verified",
        -          "active_availability_only"
        -        ],
        -        "type": "string"
        -      },
        -      "public_active": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "recommendation_status": {
        -        "enum": [
        -          "active_price_verified",
        -          "active_availability_only"
        -        ],
        -        "type": "string"
        -      },
        -      "recommended_action": {
        -        "enum": [
        -          "use_assetfare_first_at_or_above_best_from",
        -          "use_assetfare_when_route_availability_is_required_without_price_claim"
        -        ],
        -        "type": "string"
        -      },
        -      "tested_amounts_usd": {
        -        "items": {
        -          "exclusiveMinimum": 0,
        -          "type": "integer"
        -        },
        -        "maxItems": 8,
        -        "minItems": 8,
        -        "type": "array"
        -      },
        -      "tested_ceiling_usd": {
        -        "const": 10000,
        -        "type": "number"
        -      }
        -    },
        -    "required": [
        -      "advisory_start_usd",
        -      "best_from_usd",
        -      "best_from_verified",
        -      "availability_only",
        -      "public_activation_status",
        -      "public_active",
        -      "recommendation_status",
        -      "recommended_action",
        -      "confidence",
        -      "basis",
        -      "tested_amounts_usd",
        -      "tested_ceiling_usd",
        -      "not_an_execution_minimum",
        -      "not_a_best_price_guarantee",
        -      "fresh_quote_required"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "anyOf": [
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "advisory_role": {
        +            "enum": [
        +              "observed_economic_zone_start",
        +              "structural_evaluation_start_not_observed_eligibility",
        +              "retest_start_not_economic_eligibility"
        +            ],
        +            "type": "string"
        +          },
        +          "advisory_start_usd": {
        +            "enum": [
        +              50,
        +              100,
        +              250,
        +              500,
        +              1000,
        +              2500,
        +              5000,
        +              10000
        +            ],
        +            "type": "number"
        +          },
        +          "basis": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "confidence": {
        +            "enum": [
        +              "measured_two_day",
        +              "measured_route_specific",
        +              "structural_estimate",
        +              "reworked_route_remeasure",
        +              "coverage_only_retest"
        +            ],
        +            "type": "string"
        +          },
        +          "fresh_quote_required": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "not_a_best_price_guarantee": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "not_an_execution_minimum": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "status": {
        +            "enum": [
        +              "observed_near_parity",
        +              "observed_competitive_or_near_parity",
        +              "provisional_evaluation_start",
        +              "reworked_route_remeasure",
        +              "coverage_only_retest"
        +            ],
        +            "type": "string"
        +          },
        +          "tested_amounts_usd": {
        +            "items": {
        +              "exclusiveMinimum": 0,
        +              "type": "integer"
        +            },
        +            "maxItems": 8,
        +            "type": "array"
        +          }
        +        },
        +        "required": [
        +          "advisory_start_usd",
        +          "advisory_role",
        +          "status",
        +          "confidence",
        +          "basis",
        +          "tested_amounts_usd",
        +          "not_an_execution_minimum",
        +          "not_a_best_price_guarantee",
        +          "fresh_quote_required"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "advisory_start_usd": {
        +            "anyOf": [
        +              {
        +                "type": "null"
        +              },
        +              {
        +                "const": 50,
        +                "type": "number"
        +              },
        +              {
        +                "const": 100,
        +                "type": "number"
        +              },
        +              {
        +                "const": 250,
        +                "type": "number"
        +              },
        +              {
        +                "const": 500,
        +                "type": "number"
        +              },
        +              {
        +                "const": 1000,
        +                "type": "number"
        +              },
        +              {
        +                "const": 2500,
        +                "type": "number"
        +              },
        +              {
        +                "const": 5000,
        +                "type": "number"
        +              },
        +              {
        +                "const": 10000,
        +                "type": "number"
        +              }
        +            ]
        +          },
        +          "availability_only": {
        +            "type": "boolean"
        +          },
        +          "basis": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "best_from_usd": {
        +            "anyOf": [
        +              {
        +                "type": "null"
        +              },
        +              {
        +                "const": 50,
        +                "type": "number"
        +              },
        +              {
        +                "const": 100,
        +                "type": "number"
        +              },
        +              {
        +                "const": 250,
        +                "type": "number"
        +              },
        +              {
        +                "const": 500,
        +                "type": "number"
        +              },
        +              {
        +                "const": 1000,
        +                "type": "number"
        +              },
        +              {
        +                "const": 2500,
        +                "type": "number"
        +              },
        +              {
        +                "const": 5000,
        +                "type": "number"
        +              },
        +              {
        +                "const": 10000,
        +                "type": "number"
        +              }
        +            ]
        +          },
        +          "best_from_verified": {
        +            "type": "boolean"
        +          },
        +          "confidence": {
        +            "enum": [
        +              "paired_all_in_snapshot",
        +              "availability_only_no_price_claim"
        +            ],
        +            "type": "string"
        +          },
        +          "fresh_quote_required": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "not_a_best_price_guarantee": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "not_an_execution_minimum": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "public_activation_status": {
        +            "enum": [
        +              "active_price_verified",
        +              "active_availability_only"
        +            ],
        +            "type": "string"
        +          },
        +          "public_active": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "recommendation_status": {
        +            "enum": [
        +              "active_price_verified",
        +              "active_availability_only"
        +            ],
        +            "type": "string"
        +          },
        +          "recommended_action": {
        +            "enum": [
        +              "use_assetfare_first_at_or_above_best_from",
        +              "use_assetfare_when_route_availability_is_required_without_price_claim"
        +            ],
        +            "type": "string"
        +          },
        +          "tested_amounts_usd": {
        +            "items": {
        +              "exclusiveMinimum": 0,
        +              "type": "integer"
        +            },
        +            "maxItems": 8,
        +            "minItems": 8,
        +            "type": "array"
        +          },
        +          "tested_ceiling_usd": {
        +            "const": 10000,
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "advisory_start_usd",
        +          "best_from_usd",
        +          "best_from_verified",
        +          "availability_only",
        +          "public_activation_status",
        +          "public_active",
        +          "recommendation_status",
        +          "recommended_action",
        +          "confidence",
        +          "basis",
        +          "tested_amounts_usd",
        +          "tested_ceiling_usd",
        +          "not_an_execution_minimum",
        +          "not_a_best_price_guarantee",
        +          "fresh_quote_required"
        +        ],
        +        "type": "object"
        +      },
        +      {
        +        "additionalProperties": false,
        +        "properties": {
        +          "advisory_start_usd": {
        +            "anyOf": [
        +              {
        +                "type": "null"
        +              },
        +              {
        +                "const": 50,
        +                "type": "number"
        +              },
        +              {
        +                "const": 100,
        +                "type": "number"
        +              },
        +              {
        +                "const": 250,
        +                "type": "number"
        +              },
        +              {
        +                "const": 500,
        +                "type": "number"
        +              },
        +              {
        +                "const": 1000,
        +                "type": "number"
        +              },
        +              {
        +                "const": 2500,
        +                "type": "number"
        +              },
        +              {
        +                "const": 5000,
        +                "type": "number"
        +              },
        +              {
        +                "const": 10000,
        +                "type": "number"
        +              }
        +            ]
        +          },
        +          "availability_only": {
        +            "type": "boolean"
        +          },
        +          "basis": {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          "best_from_usd": {
        +            "anyOf": [
        +              {
        +                "type": "null"
        +              },
        +              {
        +                "const": 50,
        +                "type": "number"
        +              },
        +              {
        +                "const": 100,
        +                "type": "number"
        +              },
        +              {
        +                "const": 250,
        +                "type": "number"
        +              },
        +              {
        +                "const": 500,
        +                "type": "number"
        +              },
        +              {
        +                "const": 1000,
        +                "type": "number"
        +              },
        +              {
        +                "const": 2500,
        +                "type": "number"
        +              },
        +              {
        +                "const": 5000,
        +                "type": "number"
        +              },
        +              {
        +                "const": 10000,
        +                "type": "number"
        +              }
        +            ]
        +          },
        +          "best_from_verified": {
        +            "type": "boolean"
        +          },
        +          "confidence": {
        +            "enum": [
        +              "paired_all_in_snapshot",
        +              "availability_only_no_price_claim",
        +              "paired_all_in_snapshot_competitor_cheaper_through_tested_ceiling"
        +            ],
        +            "type": "string"
        +          },
        +          "economic_guidance_blocks_execution": {
        +            "const": false,
        +            "type": "boolean"
        +          },
        +          "economic_selection_policy": {
        +            "const": "advisory_only_no_execution_gate",
        +            "type": "string"
        +          },
        +          "fresh_quote_required": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "not_a_best_price_guarantee": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "not_an_execution_minimum": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "price_recommended_for_amount": {
        +            "type": "boolean"
        +          },
        +          "public_activation_status": {
        +            "enum": [
        +              "active_price_verified",
        +              "active_availability_only",
        +              "active_compare_required"
        +            ],
        +            "type": "string"
        +          },
        +          "public_active": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "quoted_amount_usd": {
        +            "minimum": 1,
        +            "type": "number"
        +          },
        +          "recommendation_status": {
        +            "enum": [
        +              "active_price_verified",
        +              "active_availability_only",
        +              "active_compare_required"
        +            ],
        +            "type": "string"
        +          },
        +          "recommended_action": {
        +            "enum": [
        +              "price_recommended_at_or_above_best_from_otherwise_no_price_recommendation",
        +              "available_no_cheapest_price_claim_compare_if_price_matters",
        +              "available_not_price_recommended_compare_if_price_matters"
        +            ],
        +            "type": "string"
        +          },
        +          "tested_amounts_usd": {
        +            "items": {
        +              "exclusiveMinimum": 0,
        +              "type": "integer"
        +            },
        +            "maxItems": 8,
        +            "minItems": 8,
        +            "type": "array"
        +          },
        +          "tested_ceiling_usd": {
        +            "const": 10000,
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "advisory_start_usd",
        +          "best_from_usd",
        +          "best_from_verified",
        +          "availability_only",
        +          "public_activation_status",
        +          "public_active",
        +          "recommendation_status",
        +          "recommended_action",
        +          "confidence",
        +          "basis",
        +          "economic_selection_policy",
        +          "economic_guidance_blocks_execution",
        +          "tested_amounts_usd",
        +          "tested_ceiling_usd",
        +          "not_an_execution_minimum",
        +          "not_a_best_price_guarantee",
        +          "fresh_quote_required",
        +          "quoted_amount_usd",
        +          "price_recommended_for_amount"
        +        ],
        +        "type": "object"
        +      }
        +    ]
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "amount_specific_product_gate": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "business_class": {
        +        "enum": [
        +          "core_business",
        +          "conditional_business",
        +          "strategic_scarce"
        +        ],
        +        "type": "string"
        +      },
        +      "decision_unit": {
        +        "const": "whole_route",
        +        "type": "string"
        +      },
        +      "fresh_quote_required": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "not_a_best_price_guarantee": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "price_recommended_for_amount": {
        +        "type": "null"
        +      },
        +      "public_active": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "public_status": {
        +        "const": "offered",
        +        "type": "string"
        +      },
        +      "quoted_amount_usd": {
        +        "minimum": 1,
        +        "type": "number"
        +      }
        +    },
        +    "required": [
        +      "amount_specific_product_gate",
        +      "business_class",
        +      "decision_unit",
        +      "fresh_quote_required",
        +      "not_a_best_price_guarantee",
        +      "price_recommended_for_amount",
        +      "public_active",
        +      "public_status",
        +      "quoted_amount_usd"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Addedassetfare_v2_quote_selected_candidate
    • Addedassetfare_v2_route_selection
    • Changedassetfare_v2_session_create6 fields changed
      • changedInput schema / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain."
      • changedInput schema / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC",
        -  "ethereum:USDC->solana:USDC",
        -  "ethereum:USDC->base:USDC",
        -  "hyperevm:USDC->solana:USDC",
        -  "hyperevm:USDC->base:USDC",
        -  "xlayer:USDC->solana:USDC",
        -  "xlayer:USDC->base:USDC",
        -  "sei:USDC->solana:USDC",
        -  "sei:USDC->base:USDC",
        -  "sonic:USDC->solana:USDC",
        -  "sonic:USDC->base:USDC",
        -  "monad:USDC->solana:USDC",
        -  "monad:USDC->base:USDC",
        -  "avalanche:USDC->solana:USDC",
        -  "avalanche:USDC->base:USDC",
        -  "cronos:USDC->solana:USDC",
        -  "cronos:USDC->base:USDC",
        -  "injective:USDC->solana:USDC",
        -  "injective:USDC->base:USDC",
        -  "linea:USDC->solana:USDC",
        -  "linea:USDC->base:USDC",
        -  "aptos:USDC->solana:USDC",
        -  "aptos:USDC->base:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC",
        +  "unichain:USDC->solana:USDC",
        +  "ink:USDC->solana:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
    • Changedassetfare_v2_session_get6 fields changed
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC",
        -  "ethereum:USDC->solana:USDC",
        -  "ethereum:USDC->base:USDC",
        -  "hyperevm:USDC->solana:USDC",
        -  "hyperevm:USDC->base:USDC",
        -  "xlayer:USDC->solana:USDC",
        -  "xlayer:USDC->base:USDC",
        -  "sei:USDC->solana:USDC",
        -  "sei:USDC->base:USDC",
        -  "sonic:USDC->solana:USDC",
        -  "sonic:USDC->base:USDC",
        -  "monad:USDC->solana:USDC",
        -  "monad:USDC->base:USDC",
        -  "avalanche:USDC->solana:USDC",
        -  "avalanche:USDC->base:USDC",
        -  "cronos:USDC->solana:USDC",
        -  "cronos:USDC->base:USDC",
        -  "injective:USDC->solana:USDC",
        -  "injective:USDC->base:USDC",
        -  "linea:USDC->solana:USDC",
        -  "linea:USDC->base:USDC",
        -  "aptos:USDC->solana:USDC",
        -  "aptos:USDC->base:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC",
        +  "unichain:USDC->solana:USDC",
        +  "ink:USDC->solana:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain."
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedInput schema / properties / verification_context / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
    • Changedassetfare_v2_session_observe_output6 fields changed
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC",
        -  "ethereum:USDC->solana:USDC",
        -  "ethereum:USDC->base:USDC",
        -  "hyperevm:USDC->solana:USDC",
        -  "hyperevm:USDC->base:USDC",
        -  "xlayer:USDC->solana:USDC",
        -  "xlayer:USDC->base:USDC",
        -  "sei:USDC->solana:USDC",
        -  "sei:USDC->base:USDC",
        -  "sonic:USDC->solana:USDC",
        -  "sonic:USDC->base:USDC",
        -  "monad:USDC->solana:USDC",
        -  "monad:USDC->base:USDC",
        -  "avalanche:USDC->solana:USDC",
        -  "avalanche:USDC->base:USDC",
        -  "cronos:USDC->solana:USDC",
        -  "cronos:USDC->base:USDC",
        -  "injective:USDC->solana:USDC",
        -  "injective:USDC->base:USDC",
        -  "linea:USDC->solana:USDC",
        -  "linea:USDC->base:USDC",
        -  "aptos:USDC->solana:USDC",
        -  "aptos:USDC->base:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC",
        +  "unichain:USDC->solana:USDC",
        +  "ink:USDC->solana:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain."
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedInput schema / properties / verification_context / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
    • Changedassetfare_v2_session_observe_source6 fields changed
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC",
        -  "ethereum:USDC->solana:USDC",
        -  "ethereum:USDC->base:USDC",
        -  "hyperevm:USDC->solana:USDC",
        -  "hyperevm:USDC->base:USDC",
        -  "xlayer:USDC->solana:USDC",
        -  "xlayer:USDC->base:USDC",
        -  "sei:USDC->solana:USDC",
        -  "sei:USDC->base:USDC",
        -  "sonic:USDC->solana:USDC",
        -  "sonic:USDC->base:USDC",
        -  "monad:USDC->solana:USDC",
        -  "monad:USDC->base:USDC",
        -  "avalanche:USDC->solana:USDC",
        -  "avalanche:USDC->base:USDC",
        -  "cronos:USDC->solana:USDC",
        -  "cronos:USDC->base:USDC",
        -  "injective:USDC->solana:USDC",
        -  "injective:USDC->base:USDC",
        -  "linea:USDC->solana:USDC",
        -  "linea:USDC->base:USDC",
        -  "aptos:USDC->solana:USDC",
        -  "aptos:USDC->base:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC",
        +  "unichain:USDC->solana:USDC",
        +  "ink:USDC->solana:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain."
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedInput schema / properties / verification_context / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
    • Changedassetfare_v2_session_refresh_action6 fields changed
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC",
        -  "ethereum:USDC->solana:USDC",
        -  "ethereum:USDC->base:USDC",
        -  "hyperevm:USDC->solana:USDC",
        -  "hyperevm:USDC->base:USDC",
        -  "xlayer:USDC->solana:USDC",
        -  "xlayer:USDC->base:USDC",
        -  "sei:USDC->solana:USDC",
        -  "sei:USDC->base:USDC",
        -  "sonic:USDC->solana:USDC",
        -  "sonic:USDC->base:USDC",
        -  "monad:USDC->solana:USDC",
        -  "monad:USDC->base:USDC",
        -  "avalanche:USDC->solana:USDC",
        -  "avalanche:USDC->base:USDC",
        -  "cronos:USDC->solana:USDC",
        -  "cronos:USDC->base:USDC",
        -  "injective:USDC->solana:USDC",
        -  "injective:USDC->base:USDC",
        -  "linea:USDC->solana:USDC",
        -  "linea:USDC->base:USDC",
        -  "aptos:USDC->solana:USDC",
        -  "aptos:USDC->base:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC",
        +  "unichain:USDC->solana:USDC",
        +  "ink:USDC->solana:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC",
        -  "ethereum:USDC",
        -  "hyperevm:USDC",
        -  "xlayer:USDC",
        -  "sei:USDC",
        -  "sonic:USDC",
        -  "monad:USDC",
        -  "avalanche:USDC",
        -  "cronos:USDC",
        -  "injective:USDC",
        -  "linea:USDC",
        -  "aptos:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC",
        +  "unichain:USDC",
        +  "ink:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, Aptos, Unichain, and Ink are source-only and cannot be used as to_chain."
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
      • changedInput schema / properties / verification_context / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism",
        -  "ethereum",
        -  "hyperevm",
        -  "xlayer",
        -  "sei",
        -  "sonic",
        -  "monad",
        -  "avalanche",
        -  "cronos",
        -  "injective",
        -  "linea",
        -  "aptos"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos",
        +  "unichain",
        +  "ink"
        +]
  2. 2 tool updatesv1.15.3
    • Changedassetfare_v2_capabilities1 field changed
      • changedOutput schema / properties / caller_owned_agent_execution / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_key_access": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "command": {
        -        "const": "assetfare-agent-runner",
        -        "type": "string"
        -      },
        -      "key_location": {
        -        "const": "caller_wallet_adapter_only",
        -        "type": "string"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.5.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "const": "assetfare-mcp",
        -        "type": "string"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v1.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "scope": {
        -        "const": "caller_process_only",
        -        "type": "string"
        -      },
        -      "supported": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v1",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.7.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.7.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.3",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.4",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.9.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.10.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.11.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.12.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.13.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.13.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.13.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.3",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.4",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.5",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.15.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.15.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.15.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_key_access": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "command": {
        +        "const": "assetfare-agent-runner",
        +        "type": "string"
        +      },
        +      "key_location": {
        +        "const": "caller_wallet_adapter_only",
        +        "type": "string"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.5.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "const": "assetfare-mcp",
        +        "type": "string"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v1.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "scope": {
        +        "const": "caller_process_only",
        +        "type": "string"
        +      },
        +      "supported": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v1",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.7.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.7.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.4",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.9.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.10.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.11.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.12.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.4",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.5",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedassetfare_v2_quote5 fields changed
      • removedOutput schema / properties / cost_summary / additionalProperties
        Removed value: -false
      • addedOutput schema / properties / cost_summary / anyOf
        Added value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "all_in_estimate_complete": {
        +        "type": "boolean"
        +      },
        +      "assetfare_service_fee": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "bps": {
        +            "const": 1,
        +            "type": "number"
        +          },
        +          "estimated_usd": {
        +            "minimum": 0,
        +            "type": "number"
        +          },
        +          "included_in_receive_amount": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "note": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "bps",
        +          "estimated_usd",
        +          "included_in_receive_amount",
        +          "note"
        +        ],
        +        "type": "object"
        +      },
        +      "expected_all_in_cost_percent_estimate": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "expected_all_in_cost_usd_estimate": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "expected_receive_value_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "expected_total_cost_percent": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "expected_total_cost_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "input_value_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "maximum_all_in_cost_percent_estimate": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "maximum_all_in_cost_usd_estimate": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "maximum_total_cost_percent": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "maximum_total_cost_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "minimum_receive_value_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "native_balance_requirements": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "basis": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "decimals": {
        +              "maximum": 18,
        +              "minimum": 0,
        +              "type": "integer"
        +            },
        +            "expected_amount": {
        +              "pattern": "^(0|[1-9][0-9]*)(\\.[0-9]+)?$",
        +              "type": "string"
        +            },
        +            "expected_amount_base": {
        +              "pattern": "^[0-9]+$",
        +              "type": "string"
        +            },
        +            "expected_usd": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "included_in_receive_amount": {
        +              "const": false,
        +              "type": "boolean"
        +            },
        +            "includes": {
        +              "items": {
        +                "enum": [
        +                  "layerzero_native_fee",
        +                  "source_chain_network_fee_estimate"
        +                ],
        +                "type": "string"
        +              },
        +              "minItems": 1,
        +              "type": "array"
        +            },
        +            "maximum_amount": {
        +              "pattern": "^(0|[1-9][0-9]*)(\\.[0-9]+)?$",
        +              "type": "string"
        +            },
        +            "maximum_amount_base": {
        +              "pattern": "^[0-9]+$",
        +              "type": "string"
        +            },
        +            "maximum_usd": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "paid_in": {
        +              "pattern": "^[a-z0-9]+:[A-Z0-9]+$",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "paid_in",
        +            "decimals",
        +            "expected_amount_base",
        +            "maximum_amount_base",
        +            "expected_amount",
        +            "maximum_amount",
        +            "expected_usd",
        +            "maximum_usd",
        +            "includes",
        +            "included_in_receive_amount",
        +            "basis"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "provider_fee_components": {
        +        "items": {
        +          "additionalProperties": true,
        +          "properties": {
        +            "expected_usd": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "included_in_receive_amount": {
        +              "const": true,
        +              "type": "boolean"
        +            },
        +            "kind": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "maximum_usd": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "provider": {
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "provider",
        +            "kind",
        +            "expected_usd",
        +            "maximum_usd",
        +            "included_in_receive_amount"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "rankable_all_in": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "scope": {
        +        "const": "token_path_only_network_gas_excluded",
        +        "type": "string"
        +      },
        +      "separately_paid_costs": {
        +        "items": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "basis": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "decimals": {
        +              "maximum": 18,
        +              "minimum": 0,
        +              "type": "integer"
        +            },
        +            "expected_amount_base": {
        +              "pattern": "^[0-9]+$",
        +              "type": "string"
        +            },
        +            "expected_usd": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "included_in_receive_amount": {
        +              "const": false,
        +              "type": "boolean"
        +            },
        +            "kind": {
        +              "enum": [
        +                "layerzero_native_fee",
        +                "source_chain_network_fee_estimate"
        +              ],
        +              "type": "string"
        +            },
        +            "maximum_amount_base": {
        +              "pattern": "^[0-9]+$",
        +              "type": "string"
        +            },
        +            "maximum_usd": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "paid_in": {
        +              "pattern": "^[a-z0-9]+:[A-Z0-9]+$",
        +              "type": "string"
        +            },
        +            "provider": {
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "provider",
        +            "kind",
        +            "paid_in",
        +            "expected_amount_base",
        +            "maximum_amount_base",
        +            "decimals",
        +            "expected_usd",
        +            "maximum_usd",
        +            "included_in_receive_amount",
        +            "basis"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "small_amount_warning": {
        +        "type": "boolean"
        +      },
        +      "source_native_balance_required": {
        +        "anyOf": [
        +          {
        +            "$ref": "#/properties/cost_summary/anyOf/0/properties/native_balance_requirements/items"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "token_path_expected_cost_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "token_path_maximum_cost_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "unpriced_costs": {
        +        "items": {
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "warning": {
        +        "anyOf": [
        +          {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      }
        +    },
        +    "required": [
        +      "scope",
        +      "input_value_usd",
        +      "expected_receive_value_usd",
        +      "minimum_receive_value_usd",
        +      "expected_total_cost_usd",
        +      "maximum_total_cost_usd",
        +      "expected_total_cost_percent",
        +      "maximum_total_cost_percent",
        +      "token_path_expected_cost_usd",
        +      "token_path_maximum_cost_usd",
        +      "separately_paid_costs",
        +      "expected_all_in_cost_usd_estimate",
        +      "maximum_all_in_cost_usd_estimate",
        +      "expected_all_in_cost_percent_estimate",
        +      "maximum_all_in_cost_percent_estimate",
        +      "all_in_estimate_complete",
        +      "native_balance_requirements",
        +      "source_native_balance_required",
        +      "assetfare_service_fee",
        +      "provider_fee_components",
        +      "unpriced_costs",
        +      "rankable_all_in",
        +      "small_amount_warning",
        +      "warning"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_service_fee": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "bps": {
        +            "const": 1,
        +            "type": "number"
        +          },
        +          "estimated_usd": {
        +            "minimum": 0,
        +            "type": "number"
        +          },
        +          "included_in_receive_amount": {
        +            "const": true,
        +            "type": "boolean"
        +          },
        +          "note": {
        +            "minLength": 1,
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "bps",
        +          "estimated_usd",
        +          "included_in_receive_amount",
        +          "note"
        +        ],
        +        "type": "object"
        +      },
        +      "expected_receive_value_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "expected_total_cost_percent": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "expected_total_cost_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "input_value_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "maximum_total_cost_percent": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "maximum_total_cost_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "minimum_receive_value_usd": {
        +        "minimum": 0,
        +        "type": "number"
        +      },
        +      "provider_fee_components": {
        +        "items": {
        +          "additionalProperties": true,
        +          "properties": {
        +            "expected_usd": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "included_in_receive_amount": {
        +              "const": true,
        +              "type": "boolean"
        +            },
        +            "kind": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "maximum_usd": {
        +              "minimum": 0,
        +              "type": "number"
        +            },
        +            "provider": {
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "provider",
        +            "kind",
        +            "expected_usd",
        +            "maximum_usd",
        +            "included_in_receive_amount"
        +          ],
        +          "type": "object"
        +        },
        +        "type": "array"
        +      },
        +      "rankable_all_in": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "scope": {
        +        "const": "token_path_only_network_gas_excluded",
        +        "type": "string"
        +      },
        +      "small_amount_warning": {
        +        "type": "boolean"
        +      },
        +      "unpriced_costs": {
        +        "items": {
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "minItems": 1,
        +        "type": "array"
        +      },
        +      "warning": {
        +        "anyOf": [
        +          {
        +            "minLength": 1,
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      }
        +    },
        +    "required": [
        +      "scope",
        +      "input_value_usd",
        +      "expected_receive_value_usd",
        +      "minimum_receive_value_usd",
        +      "expected_total_cost_usd",
        +      "maximum_total_cost_usd",
        +      "expected_total_cost_percent",
        +      "maximum_total_cost_percent",
        +      "assetfare_service_fee",
        +      "provider_fee_components",
        +      "unpriced_costs",
        +      "rankable_all_in",
        +      "small_amount_warning",
        +      "warning"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / cost_summary / properties
        Removed value: -{
        -  "assetfare_service_fee": {
        -    "additionalProperties": false,
        -    "properties": {
        -      "bps": {
        -        "const": 1,
        -        "type": "number"
        -      },
        -      "estimated_usd": {
        -        "minimum": 0,
        -        "type": "number"
        -      },
        -      "included_in_receive_amount": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "note": {
        -        "minLength": 1,
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "bps",
        -      "estimated_usd",
        -      "included_in_receive_amount",
        -      "note"
        -    ],
        -    "type": "object"
        -  },
        -  "expected_receive_value_usd": {
        -    "minimum": 0,
        -    "type": "number"
        -  },
        -  "expected_total_cost_percent": {
        -    "minimum": 0,
        -    "type": "number"
        -  },
        -  "expected_total_cost_usd": {
        -    "minimum": 0,
        -    "type": "number"
        -  },
        -  "input_value_usd": {
        -    "minimum": 0,
        -    "type": "number"
        -  },
        -  "maximum_total_cost_percent": {
        -    "minimum": 0,
        -    "type": "number"
        -  },
        -  "maximum_total_cost_usd": {
        -    "minimum": 0,
        -    "type": "number"
        -  },
        -  "minimum_receive_value_usd": {
        -    "minimum": 0,
        -    "type": "number"
        -  },
        -  "provider_fee_components": {
        -    "items": {
        -      "additionalProperties": true,
        -      "properties": {
        -        "expected_usd": {
        -          "minimum": 0,
        -          "type": "number"
        -        },
        -        "included_in_receive_amount": {
        -          "const": true,
        -          "type": "boolean"
        -        },
        -        "kind": {
        -          "minLength": 1,
        -          "type": "string"
        -        },
        -        "maximum_usd": {
        -          "minimum": 0,
        -          "type": "number"
        -        },
        -        "provider": {
        -          "minLength": 1,
        -          "type": "string"
        -        }
        -      },
        -      "required": [
        -        "provider",
        -        "kind",
        -        "expected_usd",
        -        "maximum_usd",
        -        "included_in_receive_amount"
        -      ],
        -      "type": "object"
        -    },
        -    "type": "array"
        -  },
        -  "rankable_all_in": {
        -    "const": false,
        -    "type": "boolean"
        -  },
        -  "scope": {
        -    "const": "token_path_only_network_gas_excluded",
        -    "type": "string"
        -  },
        -  "small_amount_warning": {
        -    "type": "boolean"
        -  },
        -  "unpriced_costs": {
        -    "items": {
        -      "minLength": 1,
        -      "type": "string"
        -    },
        -    "minItems": 1,
        -    "type": "array"
        -  },
        -  "warning": {
        -    "anyOf": [
        -      {
        -        "minLength": 1,
        -        "type": "string"
        -      },
        -      {
        -        "type": "null"
        -      }
        -    ]
        -  }
        -}
      • removedOutput schema / properties / cost_summary / required
        Removed value: -[
        -  "scope",
        -  "input_value_usd",
        -  "expected_receive_value_usd",
        -  "minimum_receive_value_usd",
        -  "expected_total_cost_usd",
        -  "maximum_total_cost_usd",
        -  "expected_total_cost_percent",
        -  "maximum_total_cost_percent",
        -  "assetfare_service_fee",
        -  "provider_fee_components",
        -  "unpriced_costs",
        -  "rankable_all_in",
        -  "small_amount_warning",
        -  "warning"
        -]
      • removedOutput schema / properties / cost_summary / type
        Removed value: -"object"
  3. 8 tool updatesv1.15.2
    • Changedassetfare_v2_capabilities2 fields changed
      • changedOutput schema / properties / caller_owned_agent_execution / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_key_access": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "command": {
        -        "const": "assetfare-agent-runner",
        -        "type": "string"
        -      },
        -      "key_location": {
        -        "const": "caller_wallet_adapter_only",
        -        "type": "string"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.5.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "const": "assetfare-mcp",
        -        "type": "string"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v1.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "scope": {
        -        "const": "caller_process_only",
        -        "type": "string"
        -      },
        -      "supported": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v1",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.7.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.7.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.3",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.4",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.9.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.10.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.11.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.12.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.13.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.13.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.13.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.3",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.4",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.14.5",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.15.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_key_access": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "command": {
        +        "const": "assetfare-agent-runner",
        +        "type": "string"
        +      },
        +      "key_location": {
        +        "const": "caller_wallet_adapter_only",
        +        "type": "string"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.5.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "const": "assetfare-mcp",
        +        "type": "string"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v1.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "scope": {
        +        "const": "caller_process_only",
        +        "type": "string"
        +      },
        +      "supported": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v1",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.7.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.7.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.4",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.9.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.10.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.11.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.12.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.4",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.5",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  }
        +]
      • changedOutput schema / properties / economic_guidance / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "advisory_start_distribution": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "100": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "1000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "10000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "250": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "2500": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "50": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "500": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "5000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          }
        -        },
        -        "required": [
        -          "50",
        -          "100",
        -          "250",
        -          "500",
        -          "1000",
        -          "2500",
        -          "5000",
        -          "10000"
        -        ],
        -        "type": "object"
        -      },
        -      "amount_is_never_rejected_by_economic_guidance": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "as_of": {
        -        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        -        "type": "string"
        -      },
        -      "confidence_counts": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "coverage_only_retest": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "measured_route_specific": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "measured_two_day": {
        -            "maximum": 80,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "reworked_route_remeasure": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          },
        -          "structural_estimate": {
        -            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        -          }
        -        },
        -        "required": [
        -          "measured_two_day",
        -          "measured_route_specific",
        -          "structural_estimate",
        -          "reworked_route_remeasure",
        -          "coverage_only_retest"
        -        ],
        -        "type": "object"
        -      },
        -      "currency": {
        -        "const": "USD",
        -        "type": "string"
        -      },
        -      "economic_guidance_is_non_enforcing": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "fresh_quote_and_caller_decision_control": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_count": {
        -        "const": 80,
        -        "type": "number"
        -      },
        -      "technical_quote_minimum_usd": {
        -        "const": 1,
        -        "type": "number"
        -      },
        -      "update_policy": {
        -        "const": "append_daily_observations_then_replace_values_without_schema_change",
        -        "type": "string"
        -      },
        -      "values_change_with_market": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "version": {
        -        "const": "assetfare-route-economic-guidance-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "as_of",
        -      "route_count",
        -      "currency",
        -      "technical_quote_minimum_usd",
        -      "economic_guidance_is_non_enforcing",
        -      "amount_is_never_rejected_by_economic_guidance",
        -      "values_change_with_market",
        -      "fresh_quote_and_caller_decision_control",
        -      "update_policy",
        -      "confidence_counts",
        -      "advisory_start_distribution"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "advisory_start_distribution": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "100": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "1000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "10000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "250": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "2500": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "50": {
        -            "maximum": 98,
        -            "minimum": 0,
        -            "type": "integer"
        -          },
        -          "500": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          },
        -          "5000": {
        -            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        -          }
        -        },
        -        "required": [
        -          "50",
        -          "100",
        -          "250",
        -          "500",
        -          "1000",
        -          "2500",
        -          "5000",
        -          "10000"
        -        ],
        -        "type": "object"
        -      },
        -      "amount_is_never_rejected_by_economic_guidance": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "as_of": {
        -        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        -        "type": "string"
        -      },
        -      "availability_only_route_count": {
        -        "const": 10,
        -        "type": "number"
        -      },
        -      "currency": {
        -        "const": "USD",
        -        "type": "string"
        -      },
        -      "economic_guidance_is_non_enforcing": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "expected_output_ranking": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "first_use_zero_allowance_scenario": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "fresh_quote_and_caller_decision_control": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "incomplete_cost_never_promoted": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "public_active_route_count": {
        -        "const": 54,
        -        "type": "number"
        -      },
        -      "public_inactive_route_count": {
        -        "const": 44,
        -        "type": "number"
        -      },
        -      "recommendation_status_counts": {
        -        "additionalProperties": false,
        -        "properties": {
        -          "active_availability_only": {
        -            "const": 10,
        -            "type": "number"
        -          },
        -          "active_price_verified": {
        -            "const": 44,
        -            "type": "number"
        -          },
        -          "inactive_economics": {
        -            "const": 44,
        -            "type": "number"
        -          }
        -        },
        -        "required": [
        -          "active_price_verified",
        -          "active_availability_only",
        -          "inactive_economics"
        -        ],
        -        "type": "object"
        -      },
        -      "route_count": {
        -        "const": 98,
        -        "type": "number"
        -      },
        -      "technical_quote_minimum_usd": {
        -        "const": 1,
        -        "type": "number"
        -      },
        -      "tested_ceiling_usd": {
        -        "const": 10000,
        -        "type": "number"
        -      },
        -      "update_policy": {
        -        "const": "daily_measurement_with_three_day_activation_hysteresis",
        -        "type": "string"
        -      },
        -      "values_change_with_market": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "verified_best_from_route_count": {
        -        "const": 44,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-route-economic-guidance-v3",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "as_of",
        -      "route_count",
        -      "public_active_route_count",
        -      "public_inactive_route_count",
        -      "verified_best_from_route_count",
        -      "availability_only_route_count",
        -      "currency",
        -      "technical_quote_minimum_usd",
        -      "economic_guidance_is_non_enforcing",
        -      "amount_is_never_rejected_by_economic_guidance",
        -      "values_change_with_market",
        -      "fresh_quote_and_caller_decision_control",
        -      "update_policy",
        -      "first_use_zero_allowance_scenario",
        -      "expected_output_ranking",
        -      "incomplete_cost_never_promoted",
        -      "tested_ceiling_usd",
        -      "advisory_start_distribution",
        -      "recommendation_status_counts"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "advisory_start_distribution": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "100": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "1000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "10000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "250": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "2500": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "50": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "500": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "5000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          }
        +        },
        +        "required": [
        +          "50",
        +          "100",
        +          "250",
        +          "500",
        +          "1000",
        +          "2500",
        +          "5000",
        +          "10000"
        +        ],
        +        "type": "object"
        +      },
        +      "amount_is_never_rejected_by_economic_guidance": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "as_of": {
        +        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +        "type": "string"
        +      },
        +      "confidence_counts": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "coverage_only_retest": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "measured_route_specific": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "measured_two_day": {
        +            "maximum": 80,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "reworked_route_remeasure": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          },
        +          "structural_estimate": {
        +            "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +          }
        +        },
        +        "required": [
        +          "measured_two_day",
        +          "measured_route_specific",
        +          "structural_estimate",
        +          "reworked_route_remeasure",
        +          "coverage_only_retest"
        +        ],
        +        "type": "object"
        +      },
        +      "currency": {
        +        "const": "USD",
        +        "type": "string"
        +      },
        +      "economic_guidance_is_non_enforcing": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "fresh_quote_and_caller_decision_control": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_count": {
        +        "const": 80,
        +        "type": "number"
        +      },
        +      "technical_quote_minimum_usd": {
        +        "const": 1,
        +        "type": "number"
        +      },
        +      "update_policy": {
        +        "const": "append_daily_observations_then_replace_values_without_schema_change",
        +        "type": "string"
        +      },
        +      "values_change_with_market": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "version": {
        +        "const": "assetfare-route-economic-guidance-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "as_of",
        +      "route_count",
        +      "currency",
        +      "technical_quote_minimum_usd",
        +      "economic_guidance_is_non_enforcing",
        +      "amount_is_never_rejected_by_economic_guidance",
        +      "values_change_with_market",
        +      "fresh_quote_and_caller_decision_control",
        +      "update_policy",
        +      "confidence_counts",
        +      "advisory_start_distribution"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "advisory_start_distribution": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "100": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "1000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "10000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "250": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "2500": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "50": {
        +            "maximum": 98,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "500": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          },
        +          "5000": {
        +            "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +          }
        +        },
        +        "required": [
        +          "50",
        +          "100",
        +          "250",
        +          "500",
        +          "1000",
        +          "2500",
        +          "5000",
        +          "10000"
        +        ],
        +        "type": "object"
        +      },
        +      "amount_is_never_rejected_by_economic_guidance": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "as_of": {
        +        "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +        "type": "string"
        +      },
        +      "availability_only_route_count": {
        +        "const": 10,
        +        "type": "number"
        +      },
        +      "currency": {
        +        "const": "USD",
        +        "type": "string"
        +      },
        +      "economic_guidance_is_non_enforcing": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "expected_output_ranking": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "first_use_zero_allowance_scenario": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "fresh_quote_and_caller_decision_control": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "incomplete_cost_never_promoted": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "public_active_route_count": {
        +        "const": 54,
        +        "type": "number"
        +      },
        +      "public_inactive_route_count": {
        +        "const": 44,
        +        "type": "number"
        +      },
        +      "recommendation_status_counts": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "active_availability_only": {
        +            "const": 10,
        +            "type": "number"
        +          },
        +          "active_price_verified": {
        +            "const": 44,
        +            "type": "number"
        +          },
        +          "inactive_economics": {
        +            "const": 44,
        +            "type": "number"
        +          }
        +        },
        +        "required": [
        +          "active_price_verified",
        +          "active_availability_only",
        +          "inactive_economics"
        +        ],
        +        "type": "object"
        +      },
        +      "route_count": {
        +        "const": 98,
        +        "type": "number"
        +      },
        +      "technical_quote_minimum_usd": {
        +        "const": 1,
        +        "type": "number"
        +      },
        +      "tested_ceiling_usd": {
        +        "const": 10000,
        +        "type": "number"
        +      },
        +      "update_policy": {
        +        "const": "daily_measurement_with_three_day_reactivation_hysteresis",
        +        "type": "string"
        +      },
        +      "values_change_with_market": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "verified_best_from_route_count": {
        +        "const": 44,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-route-economic-guidance-v3",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "as_of",
        +      "route_count",
        +      "public_active_route_count",
        +      "public_inactive_route_count",
        +      "verified_best_from_route_count",
        +      "availability_only_route_count",
        +      "currency",
        +      "technical_quote_minimum_usd",
        +      "economic_guidance_is_non_enforcing",
        +      "amount_is_never_rejected_by_economic_guidance",
        +      "values_change_with_market",
        +      "fresh_quote_and_caller_decision_control",
        +      "update_policy",
        +      "first_use_zero_allowance_scenario",
        +      "expected_output_ranking",
        +      "incomplete_cost_never_promoted",
        +      "tested_ceiling_usd",
        +      "advisory_start_distribution",
        +      "recommendation_status_counts"
        +    ],
        +    "type": "object"
        +  }
        +]
    • Changedassetfare_v2_prepare1 field changed
      • changedInput schema / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."
    • Changedassetfare_v2_quote4 fields changed
      • changedInput schema / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."
      • changedOutput schema / properties / continuation_v3 / properties / quote_fingerprint_claim / properties / required_wallet_chains / items / enum
        Previous value: -[
        -  "arbitrum",
        -  "base",
        -  "ethereum",
        -  "hyperevm",
        -  "optimism",
        -  "polygon",
        -  "robinhood",
        -  "sei",
        -  "solana",
        -  "sonic",
        -  "xlayer"
        -]New value: +[
        +  "aptos",
        +  "arbitrum",
        +  "avalanche",
        +  "base",
        +  "cronos",
        +  "ethereum",
        +  "hyperevm",
        +  "injective",
        +  "linea",
        +  "monad",
        +  "optimism",
        +  "polygon",
        +  "robinhood",
        +  "sei",
        +  "solana",
        +  "sonic",
        +  "xlayer"
        +]
      • changedOutput schema / properties / continuation_v3 / properties / quote_fingerprint_claim / properties / required_wallet_chains / maxItems
        Previous value: -11New value: +17
      • changedOutput schema / properties / continuation_v3 / properties / required_wallet_chains / maxItems
        Previous value: -11New value: +17
    • Changedassetfare_v2_session_create1 field changed
      • changedInput schema / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."
    • Changedassetfare_v2_session_get1 field changed
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."
    • Changedassetfare_v2_session_observe_output1 field changed
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."
    • Changedassetfare_v2_session_observe_source1 field changed
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."
    • Changedassetfare_v2_session_refresh_action1 field changed
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei, Sonic, Monad, Avalanche, Cronos, Injective, Linea, and Aptos are source-only and cannot be used as to_chain."
  4. 8 tool updatesv1.14.5
    • Changedassetfare_v2_capabilities23 fields changed
      • changedOutput schema / properties / asset_endpoints / items / properties / chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
      • changedOutput schema / properties / asset_endpoints / maxItems
        Previous value: -11New value: +20
      • changedOutput schema / properties / caller_owned_agent_execution / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_key_access": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "assetfare_server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "command": {
        -        "const": "assetfare-agent-runner",
        -        "type": "string"
        -      },
        -      "key_location": {
        -        "const": "caller_wallet_adapter_only",
        -        "type": "string"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.5.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "const": "assetfare-mcp",
        -        "type": "string"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v1.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "scope": {
        -        "const": "caller_process_only",
        -        "type": "string"
        -      },
        -      "supported": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v1",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.6.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.7.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.7.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.1",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.2",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.3",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.8.4",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.9.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "a2a_remote_skill": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        -      },
        -      "assetfare_server_key_access": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        -      },
        -      "assetfare_server_signing": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        -      },
        -      "assetfare_server_submission": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        -      },
        -      "command": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        -      },
        -      "key_location": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        -      },
        -      "minimum_package_version": {
        -        "const": "1.10.0",
        -        "type": "string"
        -      },
        -      "package": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        -      },
        -      "policy_schema": {
        -        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        -        "type": "string"
        -      },
        -      "remote_mcp_tool": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        -      },
        -      "scope": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        -      },
        -      "supported": {
        -        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        -      },
        -      "version": {
        -        "const": "assetfare-caller-owned-agent-execution-v2",
        -        "type": "string"
        -      },
        -      "wallet_adapter_contract_version": {
        -        "const": "assetfare-caller-wallet-adapter-v2",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "supported",
        -      "scope",
        -      "package",
        -      "command",
        -      "key_location",
        -      "remote_mcp_tool",
        -      "a2a_remote_skill",
        -      "assetfare_server_key_access",
        -      "assetfare_server_signing",
        -      "assetfare_server_submission",
        -      "version",
        -      "minimum_package_version",
        -      "policy_schema",
        -      "wallet_adapter_contract_version"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_key_access": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "assetfare_server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "command": {
        +        "const": "assetfare-agent-runner",
        +        "type": "string"
        +      },
        +      "key_location": {
        +        "const": "caller_wallet_adapter_only",
        +        "type": "string"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.5.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "const": "assetfare-mcp",
        +        "type": "string"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v1.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "scope": {
        +        "const": "caller_process_only",
        +        "type": "string"
        +      },
        +      "supported": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v1",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.6.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.7.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.7.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.8.4",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.9.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.10.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.11.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.12.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.13.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.1",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.2",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.3",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.4",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.14.5",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "a2a_remote_skill": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +      },
        +      "assetfare_server_key_access": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +      },
        +      "assetfare_server_signing": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +      },
        +      "assetfare_server_submission": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +      },
        +      "command": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +      },
        +      "key_location": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +      },
        +      "minimum_package_version": {
        +        "const": "1.15.0",
        +        "type": "string"
        +      },
        +      "package": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +      },
        +      "policy_schema": {
        +        "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +        "type": "string"
        +      },
        +      "remote_mcp_tool": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +      },
        +      "scope": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +      },
        +      "supported": {
        +        "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +      },
        +      "version": {
        +        "const": "assetfare-caller-owned-agent-execution-v2",
        +        "type": "string"
        +      },
        +      "wallet_adapter_contract_version": {
        +        "const": "assetfare-caller-wallet-adapter-v2",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "supported",
        +      "scope",
        +      "package",
        +      "command",
        +      "key_location",
        +      "remote_mcp_tool",
        +      "a2a_remote_skill",
        +      "assetfare_server_key_access",
        +      "assetfare_server_signing",
        +      "assetfare_server_submission",
        +      "version",
        +      "minimum_package_version",
        +      "policy_schema",
        +      "wallet_adapter_contract_version"
        +    ],
        +    "type": "object"
        +  }
        +]
      • addedOutput schema / properties / chains
        Added value: +{
        +  "items": {
        +    "enum": [
        +      "solana",
        +      "base",
        +      "arbitrum",
        +      "robinhood",
        +      "polygon",
        +      "optimism",
        +      "ethereum",
        +      "hyperevm",
        +      "xlayer",
        +      "sei",
        +      "sonic",
        +      "monad",
        +      "avalanche",
        +      "cronos",
        +      "injective",
        +      "linea",
        +      "aptos"
        +    ],
        +    "type": "string"
        +  },
        +  "maxItems": 16,
        +  "minItems": 6,
        +  "type": "array"
        +}
      • changedOutput schema / properties / currently_prepare_ready_routes / maximum
        Previous value: -76New value: +98
      • changedOutput schema / properties / direct_route_summary / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "assetfare_fee_step_bound": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "base_unit_amounts_are_decimal_strings": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "classification_values": {
        -        "items": [
        -          {
        -            "const": "direct_protocol_only",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_intent",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "external_intent": {
        -        "const": "Across only for Robinhood ingress; provider-internal liquidity sourcing or aggregation remains possible",
        -        "type": "string"
        -      },
        -      "normalized_chain_asset_endpoints": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "ordered_provider_path": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "required_on_every_quote": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_aggregator_used_scope": {
        -        "const": "assetfare_engine_only",
        -        "type": "string"
        -      },
        -      "route_count": {
        -        "const": 76,
        -        "type": "number"
        -      },
        -      "server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "step_count": {
        -        "const": 172,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-direct-route-summary-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "required_on_every_quote",
        -      "route_count",
        -      "step_count",
        -      "ordered_provider_path",
        -      "normalized_chain_asset_endpoints",
        -      "base_unit_amounts_are_decimal_strings",
        -      "assetfare_fee_step_bound",
        -      "classification_values",
        -      "route_aggregator_used_scope",
        -      "external_intent",
        -      "server_signing",
        -      "server_submission"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "assetfare_fee_step_bound": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "base_unit_amounts_are_decimal_strings": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "classification_values": {
        -        "items": [
        -          {
        -            "const": "direct_protocol_only",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_intent",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "economic_eligibility_is_route_and_amount_conditioned": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "external_coverage_only_route_count": {
        -        "const": 9,
        -        "type": "number"
        -      },
        -      "external_intent": {
        -        "const": "Across only for nine Robinhood ingress coverage routes; provider-internal liquidity sourcing or aggregation remains possible",
        -        "type": "string"
        -      },
        -      "normalized_chain_asset_endpoints": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "ordered_provider_path": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "primary_direct_route_count": {
        -        "const": 67,
        -        "type": "number"
        -      },
        -      "product_classification_values": {
        -        "items": [
        -          {
        -            "const": "primary_direct",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_coverage_only",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "required_on_every_quote": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_aggregator_used_scope": {
        -        "const": "assetfare_engine_only",
        -        "type": "string"
        -      },
        -      "route_count": {
        -        "const": 76,
        -        "type": "number"
        -      },
        -      "server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "step_count": {
        -        "const": 170,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-direct-route-summary-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "required_on_every_quote",
        -      "route_count",
        -      "primary_direct_route_count",
        -      "external_coverage_only_route_count",
        -      "step_count",
        -      "ordered_provider_path",
        -      "normalized_chain_asset_endpoints",
        -      "base_unit_amounts_are_decimal_strings",
        -      "assetfare_fee_step_bound",
        -      "classification_values",
        -      "product_classification_values",
        -      "economic_eligibility_is_route_and_amount_conditioned",
        -      "route_aggregator_used_scope",
        -      "external_intent",
        -      "server_signing",
        -      "server_submission"
        -    ],
        -    "type": "object"
        -  },
        -  {
        -    "additionalProperties": false,
        -    "properties": {
        -      "assetfare_fee_step_bound": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "base_unit_amounts_are_decimal_strings": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "classification_values": {
        -        "items": [
        -          {
        -            "const": "direct_protocol_only",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_intent",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "economic_eligibility_is_route_and_amount_conditioned": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "external_coverage_only_route_count": {
        -        "const": 0,
        -        "type": "number"
        -      },
        -      "external_intent": {
        -        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        -        "type": "string"
        -      },
        -      "normalized_chain_asset_endpoints": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "ordered_provider_path": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "primary_direct_route_count": {
        -        "const": 76,
        -        "type": "number"
        -      },
        -      "product_classification_values": {
        -        "items": [
        -          {
        -            "const": "primary_direct",
        -            "type": "string"
        -          },
        -          {
        -            "const": "external_coverage_only",
        -            "type": "string"
        -          }
        -        ],
        -        "maxItems": 2,
        -        "minItems": 2,
        -        "type": "array"
        -      },
        -      "required_on_every_quote": {
        -        "const": true,
        -        "type": "boolean"
        -      },
        -      "route_aggregator_used_scope": {
        -        "const": "assetfare_engine_only",
        -        "type": "string"
        -      },
        -      "route_count": {
        -        "const": 76,
        -        "type": "number"
        -      },
        -      "server_signing": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "server_submission": {
        -        "const": false,
        -        "type": "boolean"
        -      },
        -      "step_count": {
        -        "const": 184,
        -        "type": "number"
        -      },
        -      "version": {
        -        "const": "assetfare-direct-route-summary-v1",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "version",
        -      "required_on_every_quote",
        -      "route_count",
        -      "primary_direct_route_count",
        -      "external_coverage_only_route_count",
        -      "step_count",
        -      "ordered_provider_path",
        -      "normalized_chain_asset_endpoints",
        -      "base_unit_amounts_are_decimal_strings",
        -      "assetfare_fee_step_bound",
        -      "classification_values",
        -      "product_classification_values",
        -      "economic_eligibility_is_route_and_amount_conditioned",
        -      "route_aggregator_used_scope",
        -      "external_intent",
        -      "server_signing",
        -      "server_submission"
        -    ],
        -    "type": "object"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "external_intent": {
        +        "const": "Across only for Robinhood ingress; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 172,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 9,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "Across only for nine Robinhood ingress coverage routes; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 67,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 170,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 184,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 80,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 80,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 188,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 54,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 54,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 95,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / directed_conversion_routes / const
        Removed value: -76
      • addedOutput schema / properties / directed_conversion_routes / enum
        Added value: +[
        +  54,
        +  42,
        +  76,
        +  80
        +]
      • addedOutput schema / properties / economic_guidance
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "advisory_start_distribution": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "100": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "1000": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "10000": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "250": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "2500": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "50": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "500": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "5000": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            }
        +          },
        +          "required": [
        +            "50",
        +            "100",
        +            "250",
        +            "500",
        +            "1000",
        +            "2500",
        +            "5000",
        +            "10000"
        +          ],
        +          "type": "object"
        +        },
        +        "amount_is_never_rejected_by_economic_guidance": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "as_of": {
        +          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +          "type": "string"
        +        },
        +        "confidence_counts": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "coverage_only_retest": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "measured_route_specific": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "measured_two_day": {
        +              "maximum": 80,
        +              "minimum": 0,
        +              "type": "integer"
        +            },
        +            "reworked_route_remeasure": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            },
        +            "structural_estimate": {
        +              "$ref": "#/properties/economic_guidance/anyOf/0/properties/confidence_counts/properties/measured_two_day"
        +            }
        +          },
        +          "required": [
        +            "measured_two_day",
        +            "measured_route_specific",
        +            "structural_estimate",
        +            "reworked_route_remeasure",
        +            "coverage_only_retest"
        +          ],
        +          "type": "object"
        +        },
        +        "currency": {
        +          "const": "USD",
        +          "type": "string"
        +        },
        +        "economic_guidance_is_non_enforcing": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "fresh_quote_and_caller_decision_control": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "route_count": {
        +          "const": 80,
        +          "type": "number"
        +        },
        +        "technical_quote_minimum_usd": {
        +          "const": 1,
        +          "type": "number"
        +        },
        +        "update_policy": {
        +          "const": "append_daily_observations_then_replace_values_without_schema_change",
        +          "type": "string"
        +        },
        +        "values_change_with_market": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "assetfare-route-economic-guidance-v1",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "as_of",
        +        "route_count",
        +        "currency",
        +        "technical_quote_minimum_usd",
        +        "economic_guidance_is_non_enforcing",
        +        "amount_is_never_rejected_by_economic_guidance",
        +        "values_change_with_market",
        +        "fresh_quote_and_caller_decision_control",
        +        "update_policy",
        +        "confidence_counts",
        +        "advisory_start_distribution"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "advisory_start_distribution": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "100": {
        +              "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +            },
        +            "1000": {
        +              "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +            },
        +            "10000": {
        +              "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +            },
        +            "250": {
        +              "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +            },
        +            "2500": {
        +              "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +            },
        +            "50": {
        +              "maximum": 98,
        +              "minimum": 0,
        +              "type": "integer"
        +            },
        +            "500": {
        +              "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +            },
        +            "5000": {
        +              "$ref": "#/properties/economic_guidance/anyOf/1/properties/advisory_start_distribution/properties/50"
        +            }
        +          },
        +          "required": [
        +            "50",
        +            "100",
        +            "250",
        +            "500",
        +            "1000",
        +            "2500",
        +            "5000",
        +            "10000"
        +          ],
        +          "type": "object"
        +        },
        +        "amount_is_never_rejected_by_economic_guidance": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "as_of": {
        +          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
        +          "type": "string"
        +        },
        +        "availability_only_route_count": {
        +          "const": 10,
        +          "type": "number"
        +        },
        +        "currency": {
        +          "const": "USD",
        +          "type": "string"
        +        },
        +        "economic_guidance_is_non_enforcing": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "expected_output_ranking": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "first_use_zero_allowance_scenario": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "fresh_quote_and_caller_decision_control": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "incomplete_cost_never_promoted": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "public_active_route_count": {
        +          "const": 54,
        +          "type": "number"
        +        },
        +        "public_inactive_route_count": {
        +          "const": 44,
        +          "type": "number"
        +        },
        +        "recommendation_status_counts": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "active_availability_only": {
        +              "const": 10,
        +              "type": "number"
        +            },
        +            "active_price_verified": {
        +              "const": 44,
        +              "type": "number"
        +            },
        +            "inactive_economics": {
        +              "const": 44,
        +              "type": "number"
        +            }
        +          },
        +          "required": [
        +            "active_price_verified",
        +            "active_availability_only",
        +            "inactive_economics"
        +          ],
        +          "type": "object"
        +        },
        +        "route_count": {
        +          "const": 98,
        +          "type": "number"
        +        },
        +        "technical_quote_minimum_usd": {
        +          "const": 1,
        +          "type": "number"
        +        },
        +        "tested_ceiling_usd": {
        +          "const": 10000,
        +          "type": "number"
        +        },
        +        "update_policy": {
        +          "const": "daily_measurement_with_three_day_activation_hysteresis",
        +          "type": "string"
        +        },
        +        "values_change_with_market": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "verified_best_from_route_count": {
        +          "const": 44,
        +          "type": "number"
        +        },
        +        "version": {
        +          "const": "assetfare-route-economic-guidance-v3",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "as_of",
        +        "route_count",
        +        "public_active_route_count",
        +        "public_inactive_route_count",
        +        "verified_best_from_route_count",
        +        "availability_only_route_count",
        +        "currency",
        +        "technical_quote_minimum_usd",
        +        "economic_guidance_is_non_enforcing",
        +        "amount_is_never_rejected_by_economic_guidance",
        +        "values_change_with_market",
        +        "fresh_quote_and_caller_decision_control",
        +        "update_policy",
        +        "first_use_zero_allowance_scenario",
        +        "expected_output_ranking",
        +        "incomplete_cost_never_promoted",
        +        "tested_ceiling_usd",
        +        "advisory_start_distribution",
        +        "recommendation_status_counts"
        +      ],
        +      "type": "object"
        +    }
        +  ]
        +}
      • changedOutput schema / properties / execution_availability / properties / provider_dependent_routes / maximum
        Previous value: -76New value: +98
      • removedOutput schema / properties / execution_implemented_routes / const
        Removed value: -76
      • addedOutput schema / properties / execution_implemented_routes / enum
        Added value: +[
        +  54,
        +  42,
        +  76,
        +  80
        +]
      • removedOutput schema / properties / execution_ready_routes / const
        Removed value: -76
      • addedOutput schema / properties / execution_ready_routes / enum
        Added value: +[
        +  54,
        +  42,
        +  76,
        +  80
        +]
      • changedOutput schema / properties / source_only_asset_endpoints / items / properties / chain / enum
        Previous value: -[
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
      • changedOutput schema / properties / source_only_asset_endpoints / maxItems
        Previous value: -2New value: +13
      • changedOutput schema / properties / source_only_routes / items / enum
        Previous value: -[
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC"
        -]New value: +[
        +  "ethereum:USDC->base:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "polygon:USDC->base:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC"
        +]
      • changedOutput schema / properties / source_only_routes / maxItems
        Previous value: -4New value: +26
      • changedOutput schema / properties / temporarily_unavailable_route_count / maximum
        Previous value: -76New value: +98
      • changedOutput schema / properties / temporarily_unavailable_routes / maxItems
        Previous value: -76New value: +98
      • removedOutput schema / properties / unsigned_route_plans_ready / const
        Removed value: -76
      • addedOutput schema / properties / unsigned_route_plans_ready / enum
        Added value: +[
        +  54,
        +  42,
        +  76,
        +  80
        +]
      • changedOutput schema / required
        Previous value: -[
        -  "status",
        -  "public_api_enabled",
        -  "asset_endpoints",
        -  "source_only_asset_endpoints",
        -  "source_only_routes",
        -  "directed_conversion_routes",
        -  "unsigned_route_plans_ready",
        -  "execution_ready_routes",
        -  "direct_route_summary",
        -  "continuation_v3",
        -  "action_lifetime",
        -  "caller_owned_agent_execution",
        -  "phase_b_blocked_routes",
        -  "blocked_source_only_routes",
        -  "server_signing",
        -  "server_submission"
        -]New value: +[
        +  "status",
        +  "public_api_enabled",
        +  "chains",
        +  "asset_endpoints",
        +  "source_only_asset_endpoints",
        +  "source_only_routes",
        +  "directed_conversion_routes",
        +  "unsigned_route_plans_ready",
        +  "execution_ready_routes",
        +  "direct_route_summary",
        +  "continuation_v3",
        +  "action_lifetime",
        +  "caller_owned_agent_execution",
        +  "phase_b_blocked_routes",
        +  "blocked_source_only_routes",
        +  "server_signing",
        +  "server_submission"
        +]
    • Changedassetfare_v2_prepare10 fields changed
      • changedInput schema / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."
      • changedInput schema / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
      • changedInput schema / properties / to_chain / description
        Previous value: -"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations."New value: +"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations."
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / mode / enum
        Previous value: -[
        -  "cctp_direct_composition",
        -  "optimism_source_cctp",
        -  "polygon_source_cctp",
        -  "robinhood_across_ingress_composition",
        -  "robinhood_paxos_egress_composition",
        -  "robinhood_paxos_ingress_composition",
        -  "same_chain_direct",
        -  "same_chain_direct_composition"
        -]New value: +[
        +  "aptos_move_cctp_direct",
        +  "cctp_direct_composition",
        +  "optimism_source_cctp",
        +  "polygon_source_cctp",
        +  "robinhood_across_ingress_composition",
        +  "robinhood_paxos_egress_composition",
        +  "robinhood_paxos_ingress_composition",
        +  "same_chain_direct",
        +  "same_chain_direct_composition"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / wallets / additionalProperties / description
        Previous value: -"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material."New value: +"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, 0x plus 64 hex characters for Aptos, or 32-44 base58 characters for Solana. Never provide secret key material."
      • changedInput schema / properties / wallets / description
        Previous value: -"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases."New value: +"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; never private keys or seed phrases."
      • changedInput schema / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
    • Changedassetfare_v2_quote12 fields changed
      • changedInput schema / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."
      • changedInput schema / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
      • changedInput schema / properties / to_chain / description
        Previous value: -"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations."New value: +"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations."
      • changedOutput schema / properties / continuation_v3 / properties / quote_fingerprint_claim / properties / required_wallet_chains / items / enum
        Previous value: -[
        -  "arbitrum",
        -  "base",
        -  "optimism",
        -  "polygon",
        -  "robinhood",
        -  "solana"
        -]New value: +[
        +  "arbitrum",
        +  "base",
        +  "ethereum",
        +  "hyperevm",
        +  "optimism",
        +  "polygon",
        +  "robinhood",
        +  "sei",
        +  "solana",
        +  "sonic",
        +  "xlayer"
        +]
      • changedOutput schema / properties / continuation_v3 / properties / quote_fingerprint_claim / properties / required_wallet_chains / maxItems
        Previous value: -6New value: +11
      • changedOutput schema / properties / continuation_v3 / properties / required_wallet_chains / maxItems
        Previous value: -6New value: +11
      • changedOutput schema / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedOutput schema / properties / direct_route_summary / properties / mode / enum
        Previous value: -[
        -  "cctp_direct_composition",
        -  "optimism_source_cctp",
        -  "polygon_source_cctp",
        -  "robinhood_across_ingress_composition",
        -  "robinhood_paxos_egress_composition",
        -  "robinhood_paxos_ingress_composition",
        -  "same_chain_direct",
        -  "same_chain_direct_composition"
        -]New value: +[
        +  "aptos_move_cctp_direct",
        +  "cctp_direct_composition",
        +  "optimism_source_cctp",
        +  "polygon_source_cctp",
        +  "robinhood_across_ingress_composition",
        +  "robinhood_paxos_egress_composition",
        +  "robinhood_paxos_ingress_composition",
        +  "same_chain_direct",
        +  "same_chain_direct_composition"
        +]
      • changedOutput schema / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC"
        +]
      • changedOutput schema / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • addedOutput schema / properties / economic_guidance
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "advisory_role": {
        +          "enum": [
        +            "observed_economic_zone_start",
        +            "structural_evaluation_start_not_observed_eligibility",
        +            "retest_start_not_economic_eligibility"
        +          ],
        +          "type": "string"
        +        },
        +        "advisory_start_usd": {
        +          "enum": [
        +            50,
        +            100,
        +            250,
        +            500,
        +            1000,
        +            2500,
        +            5000,
        +            10000
        +          ],
        +          "type": "number"
        +        },
        +        "basis": {
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "confidence": {
        +          "enum": [
        +            "measured_two_day",
        +            "measured_route_specific",
        +            "structural_estimate",
        +            "reworked_route_remeasure",
        +            "coverage_only_retest"
        +          ],
        +          "type": "string"
        +        },
        +        "fresh_quote_required": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "not_a_best_price_guarantee": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "not_an_execution_minimum": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "status": {
        +          "enum": [
        +            "observed_near_parity",
        +            "observed_competitive_or_near_parity",
        +            "provisional_evaluation_start",
        +            "reworked_route_remeasure",
        +            "coverage_only_retest"
        +          ],
        +          "type": "string"
        +        },
        +        "tested_amounts_usd": {
        +          "items": {
        +            "exclusiveMinimum": 0,
        +            "type": "integer"
        +          },
        +          "maxItems": 8,
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "advisory_start_usd",
        +        "advisory_role",
        +        "status",
        +        "confidence",
        +        "basis",
        +        "tested_amounts_usd",
        +        "not_an_execution_minimum",
        +        "not_a_best_price_guarantee",
        +        "fresh_quote_required"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "advisory_start_usd": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "const": 50,
        +              "type": "number"
        +            },
        +            {
        +              "const": 100,
        +              "type": "number"
        +            },
        +            {
        +              "const": 250,
        +              "type": "number"
        +            },
        +            {
        +              "const": 500,
        +              "type": "number"
        +            },
        +            {
        +              "const": 1000,
        +              "type": "number"
        +            },
        +            {
        +              "const": 2500,
        +              "type": "number"
        +            },
        +            {
        +              "const": 5000,
        +              "type": "number"
        +            },
        +            {
        +              "const": 10000,
        +              "type": "number"
        +            }
        +          ]
        +        },
        +        "availability_only": {
        +          "type": "boolean"
        +        },
        +        "basis": {
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "best_from_usd": {
        +          "anyOf": [
        +            {
        +              "type": "null"
        +            },
        +            {
        +              "const": 50,
        +              "type": "number"
        +            },
        +            {
        +              "const": 100,
        +              "type": "number"
        +            },
        +            {
        +              "const": 250,
        +              "type": "number"
        +            },
        +            {
        +              "const": 500,
        +              "type": "number"
        +            },
        +            {
        +              "const": 1000,
        +              "type": "number"
        +            },
        +            {
        +              "const": 2500,
        +              "type": "number"
        +            },
        +            {
        +              "const": 5000,
        +              "type": "number"
        +            },
        +            {
        +              "const": 10000,
        +              "type": "number"
        +            }
        +          ]
        +        },
        +        "best_from_verified": {
        +          "type": "boolean"
        +        },
        +        "confidence": {
        +          "enum": [
        +            "paired_all_in_snapshot",
        +            "availability_only_no_price_claim"
        +          ],
        +          "type": "string"
        +        },
        +        "fresh_quote_required": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "not_a_best_price_guarantee": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "not_an_execution_minimum": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "public_activation_status": {
        +          "enum": [
        +            "active_price_verified",
        +            "active_availability_only"
        +          ],
        +          "type": "string"
        +        },
        +        "public_active": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "recommendation_status": {
        +          "enum": [
        +            "active_price_verified",
        +            "active_availability_only"
        +          ],
        +          "type": "string"
        +        },
        +        "recommended_action": {
        +          "enum": [
        +            "use_assetfare_first_at_or_above_best_from",
        +            "use_assetfare_when_route_availability_is_required_without_price_claim"
        +          ],
        +          "type": "string"
        +        },
        +        "tested_amounts_usd": {
        +          "items": {
        +            "exclusiveMinimum": 0,
        +            "type": "integer"
        +          },
        +          "maxItems": 8,
        +          "minItems": 8,
        +          "type": "array"
        +        },
        +        "tested_ceiling_usd": {
        +          "const": 10000,
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "advisory_start_usd",
        +        "best_from_usd",
        +        "best_from_verified",
        +        "availability_only",
        +        "public_activation_status",
        +        "public_active",
        +        "recommendation_status",
        +        "recommended_action",
        +        "confidence",
        +        "basis",
        +        "tested_amounts_usd",
        +        "tested_ceiling_usd",
        +        "not_an_execution_minimum",
        +        "not_a_best_price_guarantee",
        +        "fresh_quote_required"
        +      ],
        +      "type": "object"
        +    }
        +  ]
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "quote_id",
        -  "status",
        -  "as_of",
        -  "ttl_seconds",
        -  "intent",
        -  "offer",
        -  "cost_summary",
        -  "eta",
        -  "route",
        -  "direct_route_summary",
        -  "continuation_v3",
        -  "risk",
        -  "execution",
        -  "caller_action_plan_handoff"
        -]New value: +[
        +  "quote_id",
        +  "status",
        +  "as_of",
        +  "ttl_seconds",
        +  "intent",
        +  "offer",
        +  "cost_summary",
        +  "eta",
        +  "economic_guidance",
        +  "route",
        +  "direct_route_summary",
        +  "continuation_v3",
        +  "risk",
        +  "execution",
        +  "caller_action_plan_handoff"
        +]
    • Changedassetfare_v2_session_create10 fields changed
      • changedInput schema / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."
      • changedInput schema / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
      • changedInput schema / properties / to_chain / description
        Previous value: -"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations."New value: +"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations."
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / mode / enum
        Previous value: -[
        -  "cctp_direct_composition",
        -  "optimism_source_cctp",
        -  "polygon_source_cctp",
        -  "robinhood_across_ingress_composition",
        -  "robinhood_paxos_egress_composition",
        -  "robinhood_paxos_ingress_composition",
        -  "same_chain_direct",
        -  "same_chain_direct_composition"
        -]New value: +[
        +  "aptos_move_cctp_direct",
        +  "cctp_direct_composition",
        +  "optimism_source_cctp",
        +  "polygon_source_cctp",
        +  "robinhood_across_ingress_composition",
        +  "robinhood_paxos_egress_composition",
        +  "robinhood_paxos_ingress_composition",
        +  "same_chain_direct",
        +  "same_chain_direct_composition"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / wallets / additionalProperties / description
        Previous value: -"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material."New value: +"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, 0x plus 64 hex characters for Aptos, or 32-44 base58 characters for Solana. Never provide secret key material."
      • changedInput schema / properties / wallets / description
        Previous value: -"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases."New value: +"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; never private keys or seed phrases."
      • changedInput schema / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
    • Changedassetfare_v2_session_get10 fields changed
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / mode / enum
        Previous value: -[
        -  "cctp_direct_composition",
        -  "optimism_source_cctp",
        -  "polygon_source_cctp",
        -  "robinhood_across_ingress_composition",
        -  "robinhood_paxos_egress_composition",
        -  "robinhood_paxos_ingress_composition",
        -  "same_chain_direct",
        -  "same_chain_direct_composition"
        -]New value: +[
        +  "aptos_move_cctp_direct",
        +  "cctp_direct_composition",
        +  "optimism_source_cctp",
        +  "polygon_source_cctp",
        +  "robinhood_across_ingress_composition",
        +  "robinhood_paxos_egress_composition",
        +  "robinhood_paxos_ingress_composition",
        +  "same_chain_direct",
        +  "same_chain_direct_composition"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / to_chain / description
        Previous value: -"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations."New value: +"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations."
      • changedInput schema / properties / verification_context / properties / wallets / additionalProperties / description
        Previous value: -"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material."New value: +"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, 0x plus 64 hex characters for Aptos, or 32-44 base58 characters for Solana. Never provide secret key material."
      • changedInput schema / properties / verification_context / properties / wallets / description
        Previous value: -"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases."New value: +"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; never private keys or seed phrases."
      • changedInput schema / properties / verification_context / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
    • Changedassetfare_v2_session_observe_output10 fields changed
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / mode / enum
        Previous value: -[
        -  "cctp_direct_composition",
        -  "optimism_source_cctp",
        -  "polygon_source_cctp",
        -  "robinhood_across_ingress_composition",
        -  "robinhood_paxos_egress_composition",
        -  "robinhood_paxos_ingress_composition",
        -  "same_chain_direct",
        -  "same_chain_direct_composition"
        -]New value: +[
        +  "aptos_move_cctp_direct",
        +  "cctp_direct_composition",
        +  "optimism_source_cctp",
        +  "polygon_source_cctp",
        +  "robinhood_across_ingress_composition",
        +  "robinhood_paxos_egress_composition",
        +  "robinhood_paxos_ingress_composition",
        +  "same_chain_direct",
        +  "same_chain_direct_composition"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / to_chain / description
        Previous value: -"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations."New value: +"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations."
      • changedInput schema / properties / verification_context / properties / wallets / additionalProperties / description
        Previous value: -"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material."New value: +"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, 0x plus 64 hex characters for Aptos, or 32-44 base58 characters for Solana. Never provide secret key material."
      • changedInput schema / properties / verification_context / properties / wallets / description
        Previous value: -"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases."New value: +"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; never private keys or seed phrases."
      • changedInput schema / properties / verification_context / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
    • Changedassetfare_v2_session_observe_source10 fields changed
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / mode / enum
        Previous value: -[
        -  "cctp_direct_composition",
        -  "optimism_source_cctp",
        -  "polygon_source_cctp",
        -  "robinhood_across_ingress_composition",
        -  "robinhood_paxos_egress_composition",
        -  "robinhood_paxos_ingress_composition",
        -  "same_chain_direct",
        -  "same_chain_direct_composition"
        -]New value: +[
        +  "aptos_move_cctp_direct",
        +  "cctp_direct_composition",
        +  "optimism_source_cctp",
        +  "polygon_source_cctp",
        +  "robinhood_across_ingress_composition",
        +  "robinhood_paxos_egress_composition",
        +  "robinhood_paxos_ingress_composition",
        +  "same_chain_direct",
        +  "same_chain_direct_composition"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / to_chain / description
        Previous value: -"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations."New value: +"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations."
      • changedInput schema / properties / verification_context / properties / wallets / additionalProperties / description
        Previous value: -"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material."New value: +"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, 0x plus 64 hex characters for Aptos, or 32-44 base58 characters for Solana. Never provide secret key material."
      • changedInput schema / properties / verification_context / properties / wallets / description
        Previous value: -"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases."New value: +"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; never private keys or seed phrases."
      • changedInput schema / properties / verification_context / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
    • Changedassetfare_v2_session_refresh_action10 fields changed
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / mode / enum
        Previous value: -[
        -  "cctp_direct_composition",
        -  "optimism_source_cctp",
        -  "polygon_source_cctp",
        -  "robinhood_across_ingress_composition",
        -  "robinhood_paxos_egress_composition",
        -  "robinhood_paxos_ingress_composition",
        -  "same_chain_direct",
        -  "same_chain_direct_composition"
        -]New value: +[
        +  "aptos_move_cctp_direct",
        +  "cctp_direct_composition",
        +  "optimism_source_cctp",
        +  "polygon_source_cctp",
        +  "robinhood_across_ingress_composition",
        +  "robinhood_paxos_egress_composition",
        +  "robinhood_paxos_ingress_composition",
        +  "same_chain_direct",
        +  "same_chain_direct_composition"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / route / enum
        Previous value: -[
        -  "solana:SOL->solana:USDC",
        -  "solana:SOL->solana:USDG",
        -  "solana:SOL->base:ETH",
        -  "solana:SOL->base:USDC",
        -  "solana:SOL->arbitrum:ETH",
        -  "solana:SOL->arbitrum:USDC",
        -  "solana:SOL->robinhood:ETH",
        -  "solana:SOL->robinhood:USDG",
        -  "solana:USDC->solana:SOL",
        -  "solana:USDC->solana:USDG",
        -  "solana:USDC->base:ETH",
        -  "solana:USDC->base:USDC",
        -  "solana:USDC->arbitrum:ETH",
        -  "solana:USDC->arbitrum:USDC",
        -  "solana:USDC->robinhood:ETH",
        -  "solana:USDC->robinhood:USDG",
        -  "solana:USDG->solana:SOL",
        -  "solana:USDG->solana:USDC",
        -  "solana:USDG->base:ETH",
        -  "solana:USDG->base:USDC",
        -  "solana:USDG->arbitrum:ETH",
        -  "solana:USDG->arbitrum:USDC",
        -  "solana:USDG->robinhood:ETH",
        -  "solana:USDG->robinhood:USDG",
        -  "base:ETH->solana:SOL",
        -  "base:ETH->solana:USDC",
        -  "base:ETH->solana:USDG",
        -  "base:ETH->base:USDC",
        -  "base:ETH->arbitrum:ETH",
        -  "base:ETH->arbitrum:USDC",
        -  "base:ETH->robinhood:ETH",
        -  "base:ETH->robinhood:USDG",
        -  "base:USDC->solana:SOL",
        -  "base:USDC->solana:USDC",
        -  "base:USDC->solana:USDG",
        -  "base:USDC->base:ETH",
        -  "base:USDC->arbitrum:ETH",
        -  "base:USDC->arbitrum:USDC",
        -  "base:USDC->robinhood:ETH",
        -  "base:USDC->robinhood:USDG",
        -  "arbitrum:ETH->solana:SOL",
        -  "arbitrum:ETH->solana:USDC",
        -  "arbitrum:ETH->solana:USDG",
        -  "arbitrum:ETH->base:ETH",
        -  "arbitrum:ETH->base:USDC",
        -  "arbitrum:ETH->arbitrum:USDC",
        -  "arbitrum:ETH->robinhood:ETH",
        -  "arbitrum:ETH->robinhood:USDG",
        -  "arbitrum:USDC->solana:SOL",
        -  "arbitrum:USDC->solana:USDC",
        -  "arbitrum:USDC->solana:USDG",
        -  "arbitrum:USDC->base:ETH",
        -  "arbitrum:USDC->base:USDC",
        -  "arbitrum:USDC->arbitrum:ETH",
        -  "arbitrum:USDC->robinhood:ETH",
        -  "arbitrum:USDC->robinhood:USDG",
        -  "robinhood:ETH->solana:SOL",
        -  "robinhood:ETH->solana:USDC",
        -  "robinhood:ETH->solana:USDG",
        -  "robinhood:ETH->base:ETH",
        -  "robinhood:ETH->base:USDC",
        -  "robinhood:ETH->arbitrum:ETH",
        -  "robinhood:ETH->arbitrum:USDC",
        -  "robinhood:ETH->robinhood:USDG",
        -  "robinhood:USDG->solana:SOL",
        -  "robinhood:USDG->solana:USDC",
        -  "robinhood:USDG->solana:USDG",
        -  "robinhood:USDG->base:ETH",
        -  "robinhood:USDG->base:USDC",
        -  "robinhood:USDG->arbitrum:ETH",
        -  "robinhood:USDG->arbitrum:USDC",
        -  "robinhood:USDG->robinhood:ETH",
        -  "polygon:USDC->base:USDC",
        -  "polygon:USDC->arbitrum:USDC",
        -  "optimism:USDC->base:USDC",
        -  "optimism:USDC->arbitrum:USDC"
        -]New value: +[
        +  "solana:SOL->solana:USDC",
        +  "solana:SOL->solana:USDG",
        +  "solana:SOL->base:ETH",
        +  "solana:SOL->base:USDC",
        +  "solana:SOL->arbitrum:ETH",
        +  "solana:SOL->arbitrum:USDC",
        +  "solana:SOL->robinhood:ETH",
        +  "solana:SOL->robinhood:USDG",
        +  "solana:USDC->solana:SOL",
        +  "solana:USDC->solana:USDG",
        +  "solana:USDC->base:ETH",
        +  "solana:USDC->base:USDC",
        +  "solana:USDC->arbitrum:ETH",
        +  "solana:USDC->arbitrum:USDC",
        +  "solana:USDC->robinhood:ETH",
        +  "solana:USDC->robinhood:USDG",
        +  "solana:USDG->solana:SOL",
        +  "solana:USDG->solana:USDC",
        +  "solana:USDG->base:ETH",
        +  "solana:USDG->base:USDC",
        +  "solana:USDG->arbitrum:ETH",
        +  "solana:USDG->arbitrum:USDC",
        +  "solana:USDG->robinhood:ETH",
        +  "solana:USDG->robinhood:USDG",
        +  "base:ETH->solana:SOL",
        +  "base:ETH->solana:USDC",
        +  "base:ETH->solana:USDG",
        +  "base:ETH->base:USDC",
        +  "base:ETH->arbitrum:ETH",
        +  "base:ETH->arbitrum:USDC",
        +  "base:ETH->robinhood:ETH",
        +  "base:ETH->robinhood:USDG",
        +  "base:USDC->solana:SOL",
        +  "base:USDC->solana:USDC",
        +  "base:USDC->solana:USDG",
        +  "base:USDC->base:ETH",
        +  "base:USDC->arbitrum:ETH",
        +  "base:USDC->arbitrum:USDC",
        +  "base:USDC->robinhood:ETH",
        +  "base:USDC->robinhood:USDG",
        +  "arbitrum:ETH->solana:SOL",
        +  "arbitrum:ETH->solana:USDC",
        +  "arbitrum:ETH->solana:USDG",
        +  "arbitrum:ETH->base:ETH",
        +  "arbitrum:ETH->base:USDC",
        +  "arbitrum:ETH->arbitrum:USDC",
        +  "arbitrum:ETH->robinhood:ETH",
        +  "arbitrum:ETH->robinhood:USDG",
        +  "arbitrum:USDC->solana:SOL",
        +  "arbitrum:USDC->solana:USDC",
        +  "arbitrum:USDC->solana:USDG",
        +  "arbitrum:USDC->base:ETH",
        +  "arbitrum:USDC->base:USDC",
        +  "arbitrum:USDC->arbitrum:ETH",
        +  "arbitrum:USDC->robinhood:ETH",
        +  "arbitrum:USDC->robinhood:USDG",
        +  "robinhood:ETH->solana:SOL",
        +  "robinhood:ETH->solana:USDC",
        +  "robinhood:ETH->solana:USDG",
        +  "robinhood:ETH->base:ETH",
        +  "robinhood:ETH->base:USDC",
        +  "robinhood:ETH->arbitrum:ETH",
        +  "robinhood:ETH->arbitrum:USDC",
        +  "robinhood:ETH->robinhood:USDG",
        +  "robinhood:USDG->solana:SOL",
        +  "robinhood:USDG->solana:USDC",
        +  "robinhood:USDG->solana:USDG",
        +  "robinhood:USDG->base:ETH",
        +  "robinhood:USDG->base:USDC",
        +  "robinhood:USDG->arbitrum:ETH",
        +  "robinhood:USDG->arbitrum:USDC",
        +  "robinhood:USDG->robinhood:ETH",
        +  "polygon:USDC->base:USDC",
        +  "polygon:USDC->arbitrum:USDC",
        +  "optimism:USDC->base:USDC",
        +  "optimism:USDC->arbitrum:USDC",
        +  "ethereum:USDC->solana:USDC",
        +  "ethereum:USDC->base:USDC",
        +  "hyperevm:USDC->solana:USDC",
        +  "hyperevm:USDC->base:USDC",
        +  "xlayer:USDC->solana:USDC",
        +  "xlayer:USDC->base:USDC",
        +  "sei:USDC->solana:USDC",
        +  "sei:USDC->base:USDC",
        +  "sonic:USDC->solana:USDC",
        +  "sonic:USDC->base:USDC",
        +  "monad:USDC->solana:USDC",
        +  "monad:USDC->base:USDC",
        +  "avalanche:USDC->solana:USDC",
        +  "avalanche:USDC->base:USDC",
        +  "cronos:USDC->solana:USDC",
        +  "cronos:USDC->base:USDC",
        +  "injective:USDC->solana:USDC",
        +  "injective:USDC->base:USDC",
        +  "linea:USDC->solana:USDC",
        +  "linea:USDC->base:USDC",
        +  "aptos:USDC->solana:USDC",
        +  "aptos:USDC->base:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / direct_route_summary / properties / steps / items / properties / from / enum
        Previous value: -[
        -  "solana:SOL",
        -  "solana:USDC",
        -  "solana:USDG",
        -  "base:ETH",
        -  "base:USDC",
        -  "arbitrum:ETH",
        -  "arbitrum:USDC",
        -  "robinhood:ETH",
        -  "robinhood:USDG",
        -  "polygon:USDC",
        -  "optimism:USDC"
        -]New value: +[
        +  "solana:SOL",
        +  "solana:USDC",
        +  "solana:USDG",
        +  "base:ETH",
        +  "base:USDC",
        +  "arbitrum:ETH",
        +  "arbitrum:USDC",
        +  "robinhood:ETH",
        +  "robinhood:USDG",
        +  "polygon:USDC",
        +  "optimism:USDC",
        +  "ethereum:USDC",
        +  "hyperevm:USDC",
        +  "xlayer:USDC",
        +  "sei:USDC",
        +  "sonic:USDC",
        +  "monad:USDC",
        +  "avalanche:USDC",
        +  "cronos:USDC",
        +  "injective:USDC",
        +  "linea:USDC",
        +  "aptos:USDC"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / description
        Previous value: -"Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain."New value: +"Source chain for the v2 route. Polygon, Optimism, Ethereum, HyperEVM, X Layer, Sei and Sonic are source-only and cannot be used as to_chain."
      • changedInput schema / properties / verification_context / properties / intent / properties / from_chain / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
      • changedInput schema / properties / verification_context / properties / intent / properties / to_chain / description
        Previous value: -"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations."New value: +"Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Source-only chains are not destinations."
      • changedInput schema / properties / verification_context / properties / wallets / additionalProperties / description
        Previous value: -"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material."New value: +"Caller-owned public wallet address: 0x plus 40 hex characters for EVM, 0x plus 64 hex characters for Aptos, or 32-44 base58 characters for Solana. Never provide secret key material."
      • changedInput schema / properties / verification_context / properties / wallets / description
        Previous value: -"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases."New value: +"Map each chain needed by this route to the caller's public wallet address. Include public addresses only; never private keys or seed phrases."
      • changedInput schema / properties / verification_context / properties / wallets / propertyNames / enum
        Previous value: -[
        -  "solana",
        -  "base",
        -  "arbitrum",
        -  "robinhood",
        -  "polygon",
        -  "optimism"
        -]New value: +[
        +  "solana",
        +  "base",
        +  "arbitrum",
        +  "robinhood",
        +  "polygon",
        +  "optimism",
        +  "ethereum",
        +  "hyperevm",
        +  "xlayer",
        +  "sei",
        +  "sonic",
        +  "monad",
        +  "avalanche",
        +  "cronos",
        +  "injective",
        +  "linea",
        +  "aptos"
        +]
  5. 8 tool updatesv1.10.0
    • Changedassetfare_v2_capabilities8 fields changed
      • addedOutput schema / properties / action_lifetime
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "action_bundle_ttl_seconds": {
        +      "const": 180,
        +      "type": "number"
        +    },
        +    "onchain_deadline_seconds": {
        +      "const": 240,
        +      "type": "number"
        +    },
        +    "quote_ttl_seconds": {
        +      "const": 60,
        +      "type": "number"
        +    },
        +    "refresh_policy": {
        +      "const": "expired_unsubmitted_only",
        +      "type": "string"
        +    },
        +    "server_signing": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "server_submission": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "wallet_ready_minimum_remaining_seconds": {
        +      "const": 120,
        +      "type": "number"
        +    }
        +  },
        +  "required": [
        +    "quote_ttl_seconds",
        +    "action_bundle_ttl_seconds",
        +    "onchain_deadline_seconds",
        +    "wallet_ready_minimum_remaining_seconds",
        +    "refresh_policy",
        +    "server_signing",
        +    "server_submission"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / caller_owned_agent_execution
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "assetfare_server_key_access": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "assetfare_server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "assetfare_server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "command": {
        +          "const": "assetfare-agent-runner",
        +          "type": "string"
        +        },
        +        "key_location": {
        +          "const": "caller_wallet_adapter_only",
        +          "type": "string"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.5.0",
        +          "type": "string"
        +        },
        +        "package": {
        +          "const": "assetfare-mcp",
        +          "type": "string"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v1.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "scope": {
        +          "const": "caller_process_only",
        +          "type": "string"
        +        },
        +        "supported": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v1",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v1",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.6.0",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.6.1",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.6.2",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.7.0",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.7.1",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.8.0",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.8.1",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.8.2",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.8.3",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.8.4",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.9.0",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "a2a_remote_skill": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/a2a_remote_skill"
        +        },
        +        "assetfare_server_key_access": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_key_access"
        +        },
        +        "assetfare_server_signing": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_signing"
        +        },
        +        "assetfare_server_submission": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/assetfare_server_submission"
        +        },
        +        "command": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/command"
        +        },
        +        "key_location": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/key_location"
        +        },
        +        "minimum_package_version": {
        +          "const": "1.10.0",
        +          "type": "string"
        +        },
        +        "package": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/package"
        +        },
        +        "policy_schema": {
        +          "const": "https://assetfare.dev/schemas/caller-owned-execution-policy-v2.json",
        +          "type": "string"
        +        },
        +        "remote_mcp_tool": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/remote_mcp_tool"
        +        },
        +        "scope": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/scope"
        +        },
        +        "supported": {
        +          "$ref": "#/properties/caller_owned_agent_execution/anyOf/0/properties/supported"
        +        },
        +        "version": {
        +          "const": "assetfare-caller-owned-agent-execution-v2",
        +          "type": "string"
        +        },
        +        "wallet_adapter_contract_version": {
        +          "const": "assetfare-caller-wallet-adapter-v2",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "supported",
        +        "scope",
        +        "package",
        +        "command",
        +        "key_location",
        +        "remote_mcp_tool",
        +        "a2a_remote_skill",
        +        "assetfare_server_key_access",
        +        "assetfare_server_signing",
        +        "assetfare_server_submission",
        +        "version",
        +        "minimum_package_version",
        +        "policy_schema",
        +        "wallet_adapter_contract_version"
        +      ],
        +      "type": "object"
        +    }
        +  ]
        +}
      • removedOutput schema / properties / direct_route_summary / additionalProperties
        Removed value: -false
      • addedOutput schema / properties / direct_route_summary / anyOf
        Added value: +[
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "external_intent": {
        +        "const": "Across only for Robinhood ingress; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 172,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 9,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "Across only for nine Robinhood ingress coverage routes; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 67,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 170,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "additionalProperties": false,
        +    "properties": {
        +      "assetfare_fee_step_bound": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "base_unit_amounts_are_decimal_strings": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "classification_values": {
        +        "items": [
        +          {
        +            "const": "direct_protocol_only",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_intent",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "economic_eligibility_is_route_and_amount_conditioned": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "external_coverage_only_route_count": {
        +        "const": 0,
        +        "type": "number"
        +      },
        +      "external_intent": {
        +        "const": "No public route uses an external intent protocol; provider-internal liquidity sourcing or aggregation remains possible",
        +        "type": "string"
        +      },
        +      "normalized_chain_asset_endpoints": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "ordered_provider_path": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "primary_direct_route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "product_classification_values": {
        +        "items": [
        +          {
        +            "const": "primary_direct",
        +            "type": "string"
        +          },
        +          {
        +            "const": "external_coverage_only",
        +            "type": "string"
        +          }
        +        ],
        +        "maxItems": 2,
        +        "minItems": 2,
        +        "type": "array"
        +      },
        +      "required_on_every_quote": {
        +        "const": true,
        +        "type": "boolean"
        +      },
        +      "route_aggregator_used_scope": {
        +        "const": "assetfare_engine_only",
        +        "type": "string"
        +      },
        +      "route_count": {
        +        "const": 76,
        +        "type": "number"
        +      },
        +      "server_signing": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "server_submission": {
        +        "const": false,
        +        "type": "boolean"
        +      },
        +      "step_count": {
        +        "const": 184,
        +        "type": "number"
        +      },
        +      "version": {
        +        "const": "assetfare-direct-route-summary-v1",
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "version",
        +      "required_on_every_quote",
        +      "route_count",
        +      "primary_direct_route_count",
        +      "external_coverage_only_route_count",
        +      "step_count",
        +      "ordered_provider_path",
        +      "normalized_chain_asset_endpoints",
        +      "base_unit_amounts_are_decimal_strings",
        +      "assetfare_fee_step_bound",
        +      "classification_values",
        +      "product_classification_values",
        +      "economic_eligibility_is_route_and_amount_conditioned",
        +      "route_aggregator_used_scope",
        +      "external_intent",
        +      "server_signing",
        +      "server_submission"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / direct_route_summary / properties
        Removed value: -{
        -  "assetfare_fee_step_bound": {
        -    "const": true,
        -    "type": "boolean"
        -  },
        -  "base_unit_amounts_are_decimal_strings": {
        -    "const": true,
        -    "type": "boolean"
        -  },
        -  "classification_values": {
        -    "items": [
        -      {
        -        "const": "direct_protocol_only",
        -        "type": "string"
        -      },
        -      {
        -        "const": "external_intent",
        -        "type": "string"
        -      }
        -    ],
        -    "maxItems": 2,
        -    "minItems": 2,
        -    "type": "array"
        -  },
        -  "external_intent": {
        -    "const": "Across only for Robinhood ingress; provider-internal liquidity sourcing or aggregation remains possible",
        -    "type": "string"
        -  },
        -  "normalized_chain_asset_endpoints": {
        -    "const": true,
        -    "type": "boolean"
        -  },
        -  "ordered_provider_path": {
        -    "const": true,
        -    "type": "boolean"
        -  },
        -  "required_on_every_quote": {
        -    "const": true,
        -    "type": "boolean"
        -  },
        -  "route_aggregator_used_scope": {
        -    "const": "assetfare_engine_only",
        -    "type": "string"
        -  },
        -  "route_count": {
        -    "const": 76,
        -    "type": "number"
        -  },
        -  "server_signing": {
        -    "const": false,
        -    "type": "boolean"
        -  },
        -  "server_submission": {
        -    "const": false,
        -    "type": "boolean"
        -  },
        -  "step_count": {
        -    "const": 168,
        -    "type": "number"
        -  },
        -  "version": {
        -    "const": "assetfare-direct-route-summary-v1",
        -    "type": "string"
        -  }
        -}
      • removedOutput schema / properties / direct_route_summary / required
        Removed value: -[
        -  "version",
        -  "required_on_every_quote",
        -  "route_count",
        -  "step_count",
        -  "ordered_provider_path",
        -  "normalized_chain_asset_endpoints",
        -  "base_unit_amounts_are_decimal_strings",
        -  "assetfare_fee_step_bound",
        -  "classification_values",
        -  "route_aggregator_used_scope",
        -  "external_intent",
        -  "server_signing",
        -  "server_submission"
        -]
      • removedOutput schema / properties / direct_route_summary / type
        Removed value: -"object"
      • changedOutput schema / required
        Previous value: -[
        -  "status",
        -  "public_api_enabled",
        -  "asset_endpoints",
        -  "source_only_asset_endpoints",
        -  "source_only_routes",
        -  "directed_conversion_routes",
        -  "unsigned_route_plans_ready",
        -  "execution_ready_routes",
        -  "direct_route_summary",
        -  "continuation_v3",
        -  "phase_b_blocked_routes",
        -  "blocked_source_only_routes",
        -  "server_signing",
        -  "server_submission"
        -]New value: +[
        +  "status",
        +  "public_api_enabled",
        +  "asset_endpoints",
        +  "source_only_asset_endpoints",
        +  "source_only_routes",
        +  "directed_conversion_routes",
        +  "unsigned_route_plans_ready",
        +  "execution_ready_routes",
        +  "direct_route_summary",
        +  "continuation_v3",
        +  "action_lifetime",
        +  "caller_owned_agent_execution",
        +  "phase_b_blocked_routes",
        +  "blocked_source_only_routes",
        +  "server_signing",
        +  "server_submission"
        +]
    • Changedassetfare_v2_prepare22 fields changed
      • changedInput schema / properties / amount_usd / description
        Previous value: -"Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only; USD 50 is the native-USDC economic-comparison start based on dated 2026-09-23 evidence, not a cheapest guarantee; USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount."New value: +"Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount."
      • changedInput schema / properties / approval_v3 / description
        Previous value: -"Optional strict Core 2.4.1 one_shot quote-bound selection. Omit only for the explicitly legacy_advisory path."New value: +"Strict one-shot approval copied from the exact unexpired selected quote; its bounds may only be strengthened."
      • addedInput schema / properties / verification_context
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Strict caller-held one-shot context copied from the selected quote, approval and public wallets. It is verified before prepare and never forwarded upstream.",
        +  "properties": {
        +    "approval_v3": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "direct_route_summary_sha256": {
        +          "$ref": "#/properties/approval_v3/properties/quote_fingerprint"
        +        },
        +        "idempotency_key": {
        +          "$ref": "#/properties/approval_v3/properties/idempotency_key"
        +        },
        +        "maximum_input_base": {
        +          "$ref": "#/properties/approval_v3/properties/maximum_input_base"
        +        },
        +        "minimum_output_base": {
        +          "$ref": "#/properties/approval_v3/properties/maximum_input_base"
        +        },
        +        "quote_fingerprint": {
        +          "$ref": "#/properties/approval_v3/properties/quote_fingerprint"
        +        },
        +        "quote_id": {
        +          "$ref": "#/properties/approval_v3/properties/quote_id"
        +        },
        +        "selected_mode": {
        +          "$ref": "#/properties/approval_v3/properties/selected_mode"
        +        },
        +        "selection_status": {
        +          "$ref": "#/properties/approval_v3/properties/selection_status"
        +        },
        +        "version": {
        +          "$ref": "#/properties/approval_v3/properties/version"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selection_status",
        +        "selected_mode",
        +        "maximum_input_base",
        +        "minimum_output_base",
        +        "direct_route_summary_sha256",
        +        "idempotency_key"
        +      ],
        +      "type": "object"
        +    },
        +    "direct_route_summary": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "assetfare_fee_bps": {
        +          "const": 1,
        +          "type": "number"
        +        },
        +        "classification": {
        +          "enum": [
        +            "direct_protocol_only",
        +            "external_intent"
        +          ],
        +          "type": "string"
        +        },
        +        "economic_eligibility": {
        +          "enum": [
        +            "not_asserted_by_capability",
        +            "coverage_only_not_primary"
        +          ],
        +          "type": "string"
        +        },
        +        "external_intent_protocol_used": {
        +          "type": "boolean"
        +        },
        +        "fee_collection_step_index": {
        +          "maximum": 7,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "from": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG",
        +            "polygon:USDC",
        +            "optimism:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "mode": {
        +          "enum": [
        +            "cctp_direct_composition",
        +            "optimism_source_cctp",
        +            "polygon_source_cctp",
        +            "robinhood_across_ingress_composition",
        +            "robinhood_paxos_egress_composition",
        +            "robinhood_paxos_ingress_composition",
        +            "same_chain_direct",
        +            "same_chain_direct_composition"
        +          ],
        +          "type": "string"
        +        },
        +        "primary_selection_eligible": {
        +          "type": "boolean"
        +        },
        +        "product_classification": {
        +          "enum": [
        +            "primary_direct",
        +            "external_coverage_only"
        +          ],
        +          "type": "string"
        +        },
        +        "provider_internal_dex_aggregation_possible": {
        +          "type": "boolean"
        +        },
        +        "public_execution_eligible": {
        +          "type": "boolean"
        +        },
        +        "route": {
        +          "enum": [
        +            "solana:SOL->solana:USDC",
        +            "solana:SOL->solana:USDG",
        +            "solana:SOL->base:ETH",
        +            "solana:SOL->base:USDC",
        +            "solana:SOL->arbitrum:ETH",
        +            "solana:SOL->arbitrum:USDC",
        +            "solana:SOL->robinhood:ETH",
        +            "solana:SOL->robinhood:USDG",
        +            "solana:USDC->solana:SOL",
        +            "solana:USDC->solana:USDG",
        +            "solana:USDC->base:ETH",
        +            "solana:USDC->base:USDC",
        +            "solana:USDC->arbitrum:ETH",
        +            "solana:USDC->arbitrum:USDC",
        +            "solana:USDC->robinhood:ETH",
        +            "solana:USDC->robinhood:USDG",
        +            "solana:USDG->solana:SOL",
        +            "solana:USDG->solana:USDC",
        +            "solana:USDG->base:ETH",
        +            "solana:USDG->base:USDC",
        +            "solana:USDG->arbitrum:ETH",
        +            "solana:USDG->arbitrum:USDC",
        +            "solana:USDG->robinhood:ETH",
        +            "solana:USDG->robinhood:USDG",
        +            "base:ETH->solana:SOL",
        +            "base:ETH->solana:USDC",
        +            "base:ETH->solana:USDG",
        +            "base:ETH->base:USDC",
        +            "base:ETH->arbitrum:ETH",
        +            "base:ETH->arbitrum:USDC",
        +            "base:ETH->robinhood:ETH",
        +            "base:ETH->robinhood:USDG",
        +            "base:USDC->solana:SOL",
        +            "base:USDC->solana:USDC",
        +            "base:USDC->solana:USDG",
        +            "base:USDC->base:ETH",
        +            "base:USDC->arbitrum:ETH",
        +            "base:USDC->arbitrum:USDC",
        +            "base:USDC->robinhood:ETH",
        +            "base:USDC->robinhood:USDG",
        +            "arbitrum:ETH->solana:SOL",
        +            "arbitrum:ETH->solana:USDC",
        +            "arbitrum:ETH->solana:USDG",
        +            "arbitrum:ETH->base:ETH",
        +            "arbitrum:ETH->base:USDC",
        +            "arbitrum:ETH->arbitrum:USDC",
        +            "arbitrum:ETH->robinhood:ETH",
        +            "arbitrum:ETH->robinhood:USDG",
        +            "arbitrum:USDC->solana:SOL",
        +            "arbitrum:USDC->solana:USDC",
        +            "arbitrum:USDC->solana:USDG",
        +            "arbitrum:USDC->base:ETH",
        +            "arbitrum:USDC->base:USDC",
        +            "arbitrum:USDC->arbitrum:ETH",
        +            "arbitrum:USDC->robinhood:ETH",
        +            "arbitrum:USDC->robinhood:USDG",
        +            "robinhood:ETH->solana:SOL",
        +            "robinhood:ETH->solana:USDC",
        +            "robinhood:ETH->solana:USDG",
        +            "robinhood:ETH->base:ETH",
        +            "robinhood:ETH->base:USDC",
        +            "robinhood:ETH->arbitrum:ETH",
        +            "robinhood:ETH->arbitrum:USDC",
        +            "robinhood:ETH->robinhood:USDG",
        +            "robinhood:USDG->solana:SOL",
        +            "robinhood:USDG->solana:USDC",
        +            "robinhood:USDG->solana:USDG",
        +            "robinhood:USDG->base:ETH",
        +            "robinhood:USDG->base:USDC",
        +            "robinhood:USDG->arbitrum:ETH",
        +            "robinhood:USDG->arbitrum:USDC",
        +            "robinhood:USDG->robinhood:ETH",
        +            "polygon:USDC->base:USDC",
        +            "polygon:USDC->arbitrum:USDC",
        +            "optimism:USDC->base:USDC",
        +            "optimism:USDC->arbitrum:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "route_aggregator_used": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "route_minimum_guard_bps": {
        +          "anyOf": [
        +            {
        +              "maximum": 500,
        +              "minimum": 1,
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "step_count": {
        +          "maximum": 8,
        +          "minimum": 1,
        +          "type": "integer"
        +        },
        +        "steps": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "action": {
        +                "enum": [
        +                  "swap",
        +                  "bridge",
        +                  "receive"
        +                ],
        +                "type": "string"
        +              },
        +              "aggregator_api_used": {
        +                "const": false,
        +                "type": "boolean"
        +              },
        +              "assetfare_fee_bps": {
        +                "enum": [
        +                  0,
        +                  1
        +                ],
        +                "type": "number"
        +              },
        +              "direct_protocol": {
        +                "type": "boolean"
        +              },
        +              "expected_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "expected_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "external_intent_protocol": {
        +                "type": "boolean"
        +              },
        +              "from": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG",
        +                  "polygon:USDC",
        +                  "optimism:USDC"
        +                ],
        +                "type": "string"
        +              },
        +              "index": {
        +                "maximum": 7,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "minimum_guard_bps": {
        +                "maximum": 500,
        +                "minimum": 1,
        +                "type": "integer"
        +              },
        +              "minimum_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "minimum_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "provider": {
        +                "enum": [
        +                  "raydium_clmm",
        +                  "orca_whirlpool",
        +                  "uniswap_v3",
        +                  "circle_cctp",
        +                  "circle_cctp_receive",
        +                  "paxos_usdg_layerzero_oft",
        +                  "across_intent_bridge"
        +                ],
        +                "type": "string"
        +              },
        +              "to": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG"
        +                ],
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "index",
        +              "action",
        +              "provider",
        +              "from",
        +              "to",
        +              "expected_input_base",
        +              "minimum_input_base",
        +              "expected_output_base",
        +              "minimum_output_base",
        +              "assetfare_fee_bps",
        +              "direct_protocol",
        +              "external_intent_protocol",
        +              "aggregator_api_used"
        +            ],
        +            "type": "object"
        +          },
        +          "maxItems": 8,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "to": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-direct-route-summary-v1",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "route",
        +        "from",
        +        "to",
        +        "classification",
        +        "mode",
        +        "route_aggregator_used",
        +        "external_intent_protocol_used",
        +        "provider_internal_dex_aggregation_possible",
        +        "assetfare_fee_bps",
        +        "fee_collection_step_index",
        +        "server_signing",
        +        "server_submission",
        +        "step_count",
        +        "steps"
        +      ],
        +      "type": "object"
        +    },
        +    "event_signer_public": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/properties/event_signer_public"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +    },
        +    "intent": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "amount_usd": {
        +          "$ref": "#/properties/amount_usd"
        +        },
        +        "from_chain": {
        +          "$ref": "#/properties/from_chain"
        +        },
        +        "from_token": {
        +          "$ref": "#/properties/from_token"
        +        },
        +        "to_chain": {
        +          "$ref": "#/properties/to_chain"
        +        },
        +        "to_token": {
        +          "$ref": "#/properties/to_token"
        +        }
        +      },
        +      "required": [
        +        "from_chain",
        +        "from_token",
        +        "to_chain",
        +        "to_token",
        +        "amount_usd"
        +      ],
        +      "type": "object"
        +    },
        +    "verification_context_sha256": {
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-one-shot-verification-context-v1",
        +      "type": "string"
        +    },
        +    "wallets": {
        +      "$ref": "#/properties/wallets"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "intent",
        +    "wallets",
        +    "event_signer_public",
        +    "approval_v3",
        +    "direct_route_summary",
        +    "verification_context_sha256"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "caller_approved",
        -  "from_chain",
        -  "from_token",
        -  "to_chain",
        -  "to_token",
        -  "amount_usd",
        -  "wallets"
        -]New value: +[
        +  "caller_approved",
        +  "from_chain",
        +  "from_token",
        +  "to_chain",
        +  "to_token",
        +  "amount_usd",
        +  "wallets",
        +  "approval_v3",
        +  "verification_context"
        +]
      • changedOutput schema / additionalProperties
        Previous value: -trueNew value: +false
      • removedOutput schema / properties / action_id
        Removed value: -{
        -  "format": "uuid",
        -  "type": "string"
        -}
      • addedOutput schema / properties / action_verification
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Fail-closed semantic and approval-bound verification result; it never authorizes a signature by itself.",
        +  "type": "object"
        +}
      • addedOutput schema / properties / bundle
        Added value: +{
        +  "additionalProperties": true,
        +  "description": "Exact Core bundle whose payload_sha256 remains scoped only to this nested object.",
        +  "properties": {
        +    "action_id": {
        +      "format": "uuid",
        +      "type": "string"
        +    },
        +    "expires_at": {
        +      "minLength": 1,
        +      "type": "string"
        +    },
        +    "payload_sha256": {
        +      "description": "sha256(UTF-8 JSON with sorted keys and compact separators, excluding payload_sha256 itself)",
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "payload_sha256_spec": {
        +      "const": "sha256(UTF-8 JSON with sorted keys and compact separators, excluding payload_sha256 itself)",
        +      "type": "string"
        +    },
        +    "server_signing": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "server_submission": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "signed": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "step_index": {
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "submitted": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "unsigned_action": {
        +      "additionalProperties": {},
        +      "type": "object"
        +    },
        +    "version": {
        +      "const": "assetfare-direct-multichain-action-v2",
        +      "type": "string"
        +    },
        +    "workflow_id": {
        +      "format": "uuid",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "workflow_id",
        +    "action_id",
        +    "step_index",
        +    "expires_at",
        +    "unsigned_action",
        +    "payload_sha256",
        +    "payload_sha256_spec",
        +    "server_signing",
        +    "server_submission",
        +    "signed",
        +    "submitted"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / caller_wallet_handoff
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Fresh self-verifying EIP-1193 or Solana Wallet Standard handoff. The caller still simulates, confirms, signs and submits.",
        +  "type": "object"
        +}
      • removedOutput schema / properties / expires_at
        Removed value: -{
        -  "minLength": 1,
        -  "type": "string"
        -}
      • removedOutput schema / properties / payload_sha256
        Removed value: -{
        -  "description": "sha256(UTF-8 JSON with sorted keys and compact separators, excluding payload_sha256 itself)",
        -  "pattern": "^[0-9a-f]{64}$",
        -  "type": "string"
        -}
      • removedOutput schema / properties / payload_sha256_spec
        Removed value: -{
        -  "const": "sha256(UTF-8 JSON with sorted keys and compact separators, excluding payload_sha256 itself)",
        -  "type": "string"
        -}
      • addedOutput schema / properties / semantic_verification
        Added value: +{
        +  "const": true,
        +  "description": "True only after full decoded action, intent, receipt, payload and caller-bound verification.",
        +  "type": "boolean"
        +}
      • removedOutput schema / properties / server_signing
        Removed value: -{
        -  "const": false,
        -  "type": "boolean"
        -}
      • removedOutput schema / properties / server_submission
        Removed value: -{
        -  "const": false,
        -  "type": "boolean"
        -}
      • removedOutput schema / properties / signed
        Removed value: -{
        -  "const": false,
        -  "type": "boolean"
        -}
      • removedOutput schema / properties / step_index
        Removed value: -{
        -  "minimum": 0,
        -  "type": "integer"
        -}
      • removedOutput schema / properties / submitted
        Removed value: -{
        -  "const": false,
        -  "type": "boolean"
        -}
      • removedOutput schema / properties / unsigned_action
        Removed value: -{
        -  "additionalProperties": {},
        -  "type": "object"
        -}
      • removedOutput schema / properties / version
        Removed value: -{
        -  "const": "assetfare-direct-multichain-action-v2",
        -  "type": "string"
        -}
      • removedOutput schema / properties / workflow_id
        Removed value: -{
        -  "format": "uuid",
        -  "type": "string"
        -}
      • changedOutput schema / required
        Previous value: -[
        -  "version",
        -  "workflow_id",
        -  "action_id",
        -  "step_index",
        -  "expires_at",
        -  "unsigned_action",
        -  "payload_sha256",
        -  "payload_sha256_spec",
        -  "server_signing",
        -  "server_submission",
        -  "signed",
        -  "submitted"
        -]New value: +[
        +  "bundle",
        +  "semantic_verification",
        +  "action_verification",
        +  "caller_wallet_handoff"
        +]
    • Changedassetfare_v2_quote10 fields changed
      • changedInput schema / properties / amount_usd / description
        Previous value: -"Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only; USD 50 is the native-USDC economic-comparison start based on dated 2026-09-23 evidence, not a cheapest guarantee; USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount."New value: +"Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount."
      • addedOutput schema / properties / direct_route_summary / properties / economic_eligibility
        Added value: +{
        +  "enum": [
        +    "not_asserted_by_capability",
        +    "coverage_only_not_primary"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / properties / direct_route_summary / properties / mode / enum
        Previous value: -[
        -  "cctp_direct_composition",
        -  "optimism_source_cctp",
        -  "polygon_source_cctp",
        -  "robinhood_across_ingress_composition",
        -  "robinhood_paxos_egress_composition",
        -  "same_chain_direct",
        -  "same_chain_direct_composition"
        -]New value: +[
        +  "cctp_direct_composition",
        +  "optimism_source_cctp",
        +  "polygon_source_cctp",
        +  "robinhood_across_ingress_composition",
        +  "robinhood_paxos_egress_composition",
        +  "robinhood_paxos_ingress_composition",
        +  "same_chain_direct",
        +  "same_chain_direct_composition"
        +]
      • addedOutput schema / properties / direct_route_summary / properties / primary_selection_eligible
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / direct_route_summary / properties / product_classification
        Added value: +{
        +  "enum": [
        +    "primary_direct",
        +    "external_coverage_only"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / direct_route_summary / properties / public_execution_eligible
        Added value: +{
        +  "type": "boolean"
        +}
      • addedOutput schema / properties / direct_route_summary / properties / route_minimum_guard_bps
        Added value: +{
        +  "anyOf": [
        +    {
        +      "maximum": 500,
        +      "minimum": 1,
        +      "type": "integer"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • changedOutput schema / properties / direct_route_summary / properties / steps / items / properties / action / enum
        Previous value: -[
        -  "swap",
        -  "bridge"
        -]New value: +[
        +  "swap",
        +  "bridge",
        +  "receive"
        +]
      • addedOutput schema / properties / direct_route_summary / properties / steps / items / properties / minimum_guard_bps
        Added value: +{
        +  "maximum": 500,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • changedOutput schema / properties / direct_route_summary / properties / steps / items / properties / provider / enum
        Previous value: -[
        -  "raydium_clmm",
        -  "orca_whirlpool",
        -  "uniswap_v3",
        -  "circle_cctp",
        -  "paxos_usdg_layerzero_oft",
        -  "across_intent_bridge"
        -]New value: +[
        +  "raydium_clmm",
        +  "orca_whirlpool",
        +  "uniswap_v3",
        +  "circle_cctp",
        +  "circle_cctp_receive",
        +  "paxos_usdg_layerzero_oft",
        +  "across_intent_bridge"
        +]
    • Changedassetfare_v2_session_create4 fields changed
      • changedInput schema / properties / amount_usd / description
        Previous value: -"Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only; USD 50 is the native-USDC economic-comparison start based on dated 2026-09-23 evidence, not a cheapest guarantee; USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount."New value: +"Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount."
      • changedInput schema / properties / approval_v3 / description
        Previous value: -"Optional strict Core 2.4.1 session quote-bound selection. Omit only for legacy_advisory."New value: +"Strict Core 2.4.1 session quote-bound selection from the exact unexpired quote. Required for every remote session flow."
      • addedInput schema / properties / verification_context
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Strict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.",
        +  "properties": {
        +    "approval_v3": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "direct_route_summary_sha256": {
        +          "$ref": "#/properties/approval_v3/properties/quote_fingerprint"
        +        },
        +        "idempotency_key": {
        +          "$ref": "#/properties/approval_v3/properties/idempotency_key"
        +        },
        +        "maximum_input_base": {
        +          "$ref": "#/properties/approval_v3/properties/maximum_input_base"
        +        },
        +        "minimum_output_base": {
        +          "$ref": "#/properties/approval_v3/properties/maximum_input_base"
        +        },
        +        "quote_fingerprint": {
        +          "$ref": "#/properties/approval_v3/properties/quote_fingerprint"
        +        },
        +        "quote_id": {
        +          "$ref": "#/properties/approval_v3/properties/quote_id"
        +        },
        +        "selected_mode": {
        +          "$ref": "#/properties/approval_v3/properties/selected_mode"
        +        },
        +        "selection_status": {
        +          "$ref": "#/properties/approval_v3/properties/selection_status"
        +        },
        +        "version": {
        +          "$ref": "#/properties/approval_v3/properties/version"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selection_status",
        +        "selected_mode",
        +        "maximum_input_base",
        +        "minimum_output_base",
        +        "direct_route_summary_sha256",
        +        "idempotency_key"
        +      ],
        +      "type": "object"
        +    },
        +    "direct_route_summary": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "assetfare_fee_bps": {
        +          "const": 1,
        +          "type": "number"
        +        },
        +        "classification": {
        +          "enum": [
        +            "direct_protocol_only",
        +            "external_intent"
        +          ],
        +          "type": "string"
        +        },
        +        "economic_eligibility": {
        +          "enum": [
        +            "not_asserted_by_capability",
        +            "coverage_only_not_primary"
        +          ],
        +          "type": "string"
        +        },
        +        "external_intent_protocol_used": {
        +          "type": "boolean"
        +        },
        +        "fee_collection_step_index": {
        +          "maximum": 7,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "from": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG",
        +            "polygon:USDC",
        +            "optimism:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "mode": {
        +          "enum": [
        +            "cctp_direct_composition",
        +            "optimism_source_cctp",
        +            "polygon_source_cctp",
        +            "robinhood_across_ingress_composition",
        +            "robinhood_paxos_egress_composition",
        +            "robinhood_paxos_ingress_composition",
        +            "same_chain_direct",
        +            "same_chain_direct_composition"
        +          ],
        +          "type": "string"
        +        },
        +        "primary_selection_eligible": {
        +          "type": "boolean"
        +        },
        +        "product_classification": {
        +          "enum": [
        +            "primary_direct",
        +            "external_coverage_only"
        +          ],
        +          "type": "string"
        +        },
        +        "provider_internal_dex_aggregation_possible": {
        +          "type": "boolean"
        +        },
        +        "public_execution_eligible": {
        +          "type": "boolean"
        +        },
        +        "route": {
        +          "enum": [
        +            "solana:SOL->solana:USDC",
        +            "solana:SOL->solana:USDG",
        +            "solana:SOL->base:ETH",
        +            "solana:SOL->base:USDC",
        +            "solana:SOL->arbitrum:ETH",
        +            "solana:SOL->arbitrum:USDC",
        +            "solana:SOL->robinhood:ETH",
        +            "solana:SOL->robinhood:USDG",
        +            "solana:USDC->solana:SOL",
        +            "solana:USDC->solana:USDG",
        +            "solana:USDC->base:ETH",
        +            "solana:USDC->base:USDC",
        +            "solana:USDC->arbitrum:ETH",
        +            "solana:USDC->arbitrum:USDC",
        +            "solana:USDC->robinhood:ETH",
        +            "solana:USDC->robinhood:USDG",
        +            "solana:USDG->solana:SOL",
        +            "solana:USDG->solana:USDC",
        +            "solana:USDG->base:ETH",
        +            "solana:USDG->base:USDC",
        +            "solana:USDG->arbitrum:ETH",
        +            "solana:USDG->arbitrum:USDC",
        +            "solana:USDG->robinhood:ETH",
        +            "solana:USDG->robinhood:USDG",
        +            "base:ETH->solana:SOL",
        +            "base:ETH->solana:USDC",
        +            "base:ETH->solana:USDG",
        +            "base:ETH->base:USDC",
        +            "base:ETH->arbitrum:ETH",
        +            "base:ETH->arbitrum:USDC",
        +            "base:ETH->robinhood:ETH",
        +            "base:ETH->robinhood:USDG",
        +            "base:USDC->solana:SOL",
        +            "base:USDC->solana:USDC",
        +            "base:USDC->solana:USDG",
        +            "base:USDC->base:ETH",
        +            "base:USDC->arbitrum:ETH",
        +            "base:USDC->arbitrum:USDC",
        +            "base:USDC->robinhood:ETH",
        +            "base:USDC->robinhood:USDG",
        +            "arbitrum:ETH->solana:SOL",
        +            "arbitrum:ETH->solana:USDC",
        +            "arbitrum:ETH->solana:USDG",
        +            "arbitrum:ETH->base:ETH",
        +            "arbitrum:ETH->base:USDC",
        +            "arbitrum:ETH->arbitrum:USDC",
        +            "arbitrum:ETH->robinhood:ETH",
        +            "arbitrum:ETH->robinhood:USDG",
        +            "arbitrum:USDC->solana:SOL",
        +            "arbitrum:USDC->solana:USDC",
        +            "arbitrum:USDC->solana:USDG",
        +            "arbitrum:USDC->base:ETH",
        +            "arbitrum:USDC->base:USDC",
        +            "arbitrum:USDC->arbitrum:ETH",
        +            "arbitrum:USDC->robinhood:ETH",
        +            "arbitrum:USDC->robinhood:USDG",
        +            "robinhood:ETH->solana:SOL",
        +            "robinhood:ETH->solana:USDC",
        +            "robinhood:ETH->solana:USDG",
        +            "robinhood:ETH->base:ETH",
        +            "robinhood:ETH->base:USDC",
        +            "robinhood:ETH->arbitrum:ETH",
        +            "robinhood:ETH->arbitrum:USDC",
        +            "robinhood:ETH->robinhood:USDG",
        +            "robinhood:USDG->solana:SOL",
        +            "robinhood:USDG->solana:USDC",
        +            "robinhood:USDG->solana:USDG",
        +            "robinhood:USDG->base:ETH",
        +            "robinhood:USDG->base:USDC",
        +            "robinhood:USDG->arbitrum:ETH",
        +            "robinhood:USDG->arbitrum:USDC",
        +            "robinhood:USDG->robinhood:ETH",
        +            "polygon:USDC->base:USDC",
        +            "polygon:USDC->arbitrum:USDC",
        +            "optimism:USDC->base:USDC",
        +            "optimism:USDC->arbitrum:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "route_aggregator_used": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "route_minimum_guard_bps": {
        +          "anyOf": [
        +            {
        +              "maximum": 500,
        +              "minimum": 1,
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "step_count": {
        +          "maximum": 8,
        +          "minimum": 1,
        +          "type": "integer"
        +        },
        +        "steps": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "action": {
        +                "enum": [
        +                  "swap",
        +                  "bridge",
        +                  "receive"
        +                ],
        +                "type": "string"
        +              },
        +              "aggregator_api_used": {
        +                "const": false,
        +                "type": "boolean"
        +              },
        +              "assetfare_fee_bps": {
        +                "enum": [
        +                  0,
        +                  1
        +                ],
        +                "type": "number"
        +              },
        +              "direct_protocol": {
        +                "type": "boolean"
        +              },
        +              "expected_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "expected_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "external_intent_protocol": {
        +                "type": "boolean"
        +              },
        +              "from": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG",
        +                  "polygon:USDC",
        +                  "optimism:USDC"
        +                ],
        +                "type": "string"
        +              },
        +              "index": {
        +                "maximum": 7,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "minimum_guard_bps": {
        +                "maximum": 500,
        +                "minimum": 1,
        +                "type": "integer"
        +              },
        +              "minimum_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "minimum_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "provider": {
        +                "enum": [
        +                  "raydium_clmm",
        +                  "orca_whirlpool",
        +                  "uniswap_v3",
        +                  "circle_cctp",
        +                  "circle_cctp_receive",
        +                  "paxos_usdg_layerzero_oft",
        +                  "across_intent_bridge"
        +                ],
        +                "type": "string"
        +              },
        +              "to": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG"
        +                ],
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "index",
        +              "action",
        +              "provider",
        +              "from",
        +              "to",
        +              "expected_input_base",
        +              "minimum_input_base",
        +              "expected_output_base",
        +              "minimum_output_base",
        +              "assetfare_fee_bps",
        +              "direct_protocol",
        +              "external_intent_protocol",
        +              "aggregator_api_used"
        +            ],
        +            "type": "object"
        +          },
        +          "maxItems": 8,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "to": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-direct-route-summary-v1",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "route",
        +        "from",
        +        "to",
        +        "classification",
        +        "mode",
        +        "route_aggregator_used",
        +        "external_intent_protocol_used",
        +        "provider_internal_dex_aggregation_possible",
        +        "assetfare_fee_bps",
        +        "fee_collection_step_index",
        +        "server_signing",
        +        "server_submission",
        +        "step_count",
        +        "steps"
        +      ],
        +      "type": "object"
        +    },
        +    "event_signer_public": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/properties/event_signer_public"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +    },
        +    "intent": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "amount_usd": {
        +          "$ref": "#/properties/amount_usd"
        +        },
        +        "from_chain": {
        +          "$ref": "#/properties/from_chain"
        +        },
        +        "from_token": {
        +          "$ref": "#/properties/from_token"
        +        },
        +        "to_chain": {
        +          "$ref": "#/properties/to_chain"
        +        },
        +        "to_token": {
        +          "$ref": "#/properties/to_token"
        +        }
        +      },
        +      "required": [
        +        "from_chain",
        +        "from_token",
        +        "to_chain",
        +        "to_token",
        +        "amount_usd"
        +      ],
        +      "type": "object"
        +    },
        +    "verification_context_sha256": {
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-session-verification-context-v1",
        +      "type": "string"
        +    },
        +    "wallets": {
        +      "$ref": "#/properties/wallets"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "intent",
        +    "wallets",
        +    "event_signer_public",
        +    "approval_v3",
        +    "direct_route_summary",
        +    "verification_context_sha256"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "caller_approved",
        -  "from_chain",
        -  "from_token",
        -  "to_chain",
        -  "to_token",
        -  "amount_usd",
        -  "wallets",
        -  "session_token",
        -  "idempotency_key"
        -]New value: +[
        +  "caller_approved",
        +  "from_chain",
        +  "from_token",
        +  "to_chain",
        +  "to_token",
        +  "amount_usd",
        +  "wallets",
        +  "approval_v3",
        +  "session_token",
        +  "idempotency_key",
        +  "verification_context"
        +]
    • Changedassetfare_v2_session_get2 fields changed
      • addedInput schema / properties / verification_context
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Strict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.",
        +  "properties": {
        +    "approval_v3": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "direct_route_summary_sha256": {
        +          "$ref": "#/properties/verification_context/properties/approval_v3/properties/quote_fingerprint"
        +        },
        +        "idempotency_key": {
        +          "pattern": "^[A-Za-z0-9._:-]{8,128}$",
        +          "type": "string"
        +        },
        +        "maximum_input_base": {
        +          "pattern": "^[1-9][0-9]*$",
        +          "type": "string"
        +        },
        +        "minimum_output_base": {
        +          "$ref": "#/properties/verification_context/properties/approval_v3/properties/maximum_input_base"
        +        },
        +        "quote_fingerprint": {
        +          "pattern": "^[0-9a-f]{64}$",
        +          "type": "string"
        +        },
        +        "quote_id": {
        +          "format": "uuid",
        +          "type": "string"
        +        },
        +        "selected_mode": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "selection_status": {
        +          "const": "selected",
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-approval-v3",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selection_status",
        +        "selected_mode",
        +        "maximum_input_base",
        +        "minimum_output_base",
        +        "direct_route_summary_sha256",
        +        "idempotency_key"
        +      ],
        +      "type": "object"
        +    },
        +    "direct_route_summary": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "assetfare_fee_bps": {
        +          "const": 1,
        +          "type": "number"
        +        },
        +        "classification": {
        +          "enum": [
        +            "direct_protocol_only",
        +            "external_intent"
        +          ],
        +          "type": "string"
        +        },
        +        "economic_eligibility": {
        +          "enum": [
        +            "not_asserted_by_capability",
        +            "coverage_only_not_primary"
        +          ],
        +          "type": "string"
        +        },
        +        "external_intent_protocol_used": {
        +          "type": "boolean"
        +        },
        +        "fee_collection_step_index": {
        +          "maximum": 7,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "from": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG",
        +            "polygon:USDC",
        +            "optimism:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "mode": {
        +          "enum": [
        +            "cctp_direct_composition",
        +            "optimism_source_cctp",
        +            "polygon_source_cctp",
        +            "robinhood_across_ingress_composition",
        +            "robinhood_paxos_egress_composition",
        +            "robinhood_paxos_ingress_composition",
        +            "same_chain_direct",
        +            "same_chain_direct_composition"
        +          ],
        +          "type": "string"
        +        },
        +        "primary_selection_eligible": {
        +          "type": "boolean"
        +        },
        +        "product_classification": {
        +          "enum": [
        +            "primary_direct",
        +            "external_coverage_only"
        +          ],
        +          "type": "string"
        +        },
        +        "provider_internal_dex_aggregation_possible": {
        +          "type": "boolean"
        +        },
        +        "public_execution_eligible": {
        +          "type": "boolean"
        +        },
        +        "route": {
        +          "enum": [
        +            "solana:SOL->solana:USDC",
        +            "solana:SOL->solana:USDG",
        +            "solana:SOL->base:ETH",
        +            "solana:SOL->base:USDC",
        +            "solana:SOL->arbitrum:ETH",
        +            "solana:SOL->arbitrum:USDC",
        +            "solana:SOL->robinhood:ETH",
        +            "solana:SOL->robinhood:USDG",
        +            "solana:USDC->solana:SOL",
        +            "solana:USDC->solana:USDG",
        +            "solana:USDC->base:ETH",
        +            "solana:USDC->base:USDC",
        +            "solana:USDC->arbitrum:ETH",
        +            "solana:USDC->arbitrum:USDC",
        +            "solana:USDC->robinhood:ETH",
        +            "solana:USDC->robinhood:USDG",
        +            "solana:USDG->solana:SOL",
        +            "solana:USDG->solana:USDC",
        +            "solana:USDG->base:ETH",
        +            "solana:USDG->base:USDC",
        +            "solana:USDG->arbitrum:ETH",
        +            "solana:USDG->arbitrum:USDC",
        +            "solana:USDG->robinhood:ETH",
        +            "solana:USDG->robinhood:USDG",
        +            "base:ETH->solana:SOL",
        +            "base:ETH->solana:USDC",
        +            "base:ETH->solana:USDG",
        +            "base:ETH->base:USDC",
        +            "base:ETH->arbitrum:ETH",
        +            "base:ETH->arbitrum:USDC",
        +            "base:ETH->robinhood:ETH",
        +            "base:ETH->robinhood:USDG",
        +            "base:USDC->solana:SOL",
        +            "base:USDC->solana:USDC",
        +            "base:USDC->solana:USDG",
        +            "base:USDC->base:ETH",
        +            "base:USDC->arbitrum:ETH",
        +            "base:USDC->arbitrum:USDC",
        +            "base:USDC->robinhood:ETH",
        +            "base:USDC->robinhood:USDG",
        +            "arbitrum:ETH->solana:SOL",
        +            "arbitrum:ETH->solana:USDC",
        +            "arbitrum:ETH->solana:USDG",
        +            "arbitrum:ETH->base:ETH",
        +            "arbitrum:ETH->base:USDC",
        +            "arbitrum:ETH->arbitrum:USDC",
        +            "arbitrum:ETH->robinhood:ETH",
        +            "arbitrum:ETH->robinhood:USDG",
        +            "arbitrum:USDC->solana:SOL",
        +            "arbitrum:USDC->solana:USDC",
        +            "arbitrum:USDC->solana:USDG",
        +            "arbitrum:USDC->base:ETH",
        +            "arbitrum:USDC->base:USDC",
        +            "arbitrum:USDC->arbitrum:ETH",
        +            "arbitrum:USDC->robinhood:ETH",
        +            "arbitrum:USDC->robinhood:USDG",
        +            "robinhood:ETH->solana:SOL",
        +            "robinhood:ETH->solana:USDC",
        +            "robinhood:ETH->solana:USDG",
        +            "robinhood:ETH->base:ETH",
        +            "robinhood:ETH->base:USDC",
        +            "robinhood:ETH->arbitrum:ETH",
        +            "robinhood:ETH->arbitrum:USDC",
        +            "robinhood:ETH->robinhood:USDG",
        +            "robinhood:USDG->solana:SOL",
        +            "robinhood:USDG->solana:USDC",
        +            "robinhood:USDG->solana:USDG",
        +            "robinhood:USDG->base:ETH",
        +            "robinhood:USDG->base:USDC",
        +            "robinhood:USDG->arbitrum:ETH",
        +            "robinhood:USDG->arbitrum:USDC",
        +            "robinhood:USDG->robinhood:ETH",
        +            "polygon:USDC->base:USDC",
        +            "polygon:USDC->arbitrum:USDC",
        +            "optimism:USDC->base:USDC",
        +            "optimism:USDC->arbitrum:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "route_aggregator_used": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "route_minimum_guard_bps": {
        +          "anyOf": [
        +            {
        +              "maximum": 500,
        +              "minimum": 1,
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "step_count": {
        +          "maximum": 8,
        +          "minimum": 1,
        +          "type": "integer"
        +        },
        +        "steps": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "action": {
        +                "enum": [
        +                  "swap",
        +                  "bridge",
        +                  "receive"
        +                ],
        +                "type": "string"
        +              },
        +              "aggregator_api_used": {
        +                "const": false,
        +                "type": "boolean"
        +              },
        +              "assetfare_fee_bps": {
        +                "enum": [
        +                  0,
        +                  1
        +                ],
        +                "type": "number"
        +              },
        +              "direct_protocol": {
        +                "type": "boolean"
        +              },
        +              "expected_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "expected_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "external_intent_protocol": {
        +                "type": "boolean"
        +              },
        +              "from": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG",
        +                  "polygon:USDC",
        +                  "optimism:USDC"
        +                ],
        +                "type": "string"
        +              },
        +              "index": {
        +                "maximum": 7,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "minimum_guard_bps": {
        +                "maximum": 500,
        +                "minimum": 1,
        +                "type": "integer"
        +              },
        +              "minimum_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "minimum_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "provider": {
        +                "enum": [
        +                  "raydium_clmm",
        +                  "orca_whirlpool",
        +                  "uniswap_v3",
        +                  "circle_cctp",
        +                  "circle_cctp_receive",
        +                  "paxos_usdg_layerzero_oft",
        +                  "across_intent_bridge"
        +                ],
        +                "type": "string"
        +              },
        +              "to": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG"
        +                ],
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "index",
        +              "action",
        +              "provider",
        +              "from",
        +              "to",
        +              "expected_input_base",
        +              "minimum_input_base",
        +              "expected_output_base",
        +              "minimum_output_base",
        +              "assetfare_fee_bps",
        +              "direct_protocol",
        +              "external_intent_protocol",
        +              "aggregator_api_used"
        +            ],
        +            "type": "object"
        +          },
        +          "maxItems": 8,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "to": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-direct-route-summary-v1",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "route",
        +        "from",
        +        "to",
        +        "classification",
        +        "mode",
        +        "route_aggregator_used",
        +        "external_intent_protocol_used",
        +        "provider_internal_dex_aggregation_possible",
        +        "assetfare_fee_bps",
        +        "fee_collection_step_index",
        +        "server_signing",
        +        "server_submission",
        +        "step_count",
        +        "steps"
        +      ],
        +      "type": "object"
        +    },
        +    "event_signer_public": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/properties/verification_context/properties/wallets/additionalProperties",
        +          "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +    },
        +    "intent": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "amount_usd": {
        +          "description": "Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount.",
        +          "minimum": 1,
        +          "type": "number"
        +        },
        +        "from_chain": {
        +          "description": "Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain.",
        +          "enum": [
        +            "solana",
        +            "base",
        +            "arbitrum",
        +            "robinhood",
        +            "polygon",
        +            "optimism"
        +          ],
        +          "type": "string"
        +        },
        +        "from_token": {
        +          "description": "Input token symbol on from_chain. The chain-token pair must appear in current v2 capabilities.",
        +          "enum": [
        +            "SOL",
        +            "ETH",
        +            "USDC",
        +            "USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "to_chain": {
        +          "description": "Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations.",
        +          "enum": [
        +            "solana",
        +            "base",
        +            "arbitrum",
        +            "robinhood"
        +          ],
        +          "type": "string"
        +        },
        +        "to_token": {
        +          "description": "Output token symbol on to_chain. The chain-token pair must appear in current v2 capabilities.",
        +          "enum": [
        +            "SOL",
        +            "ETH",
        +            "USDC",
        +            "USDG"
        +          ],
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "from_chain",
        +        "from_token",
        +        "to_chain",
        +        "to_token",
        +        "amount_usd"
        +      ],
        +      "type": "object"
        +    },
        +    "verification_context_sha256": {
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-session-verification-context-v1",
        +      "type": "string"
        +    },
        +    "wallets": {
        +      "additionalProperties": {
        +        "description": "Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material.",
        +        "type": "string"
        +      },
        +      "description": "Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases.",
        +      "propertyNames": {
        +        "enum": [
        +          "solana",
        +          "base",
        +          "arbitrum",
        +          "robinhood",
        +          "polygon",
        +          "optimism"
        +        ]
        +      },
        +      "type": "object"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "intent",
        +    "wallets",
        +    "event_signer_public",
        +    "approval_v3",
        +    "direct_route_summary",
        +    "verification_context_sha256"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "session_token",
        -  "session_id"
        -]New value: +[
        +  "session_token",
        +  "session_id",
        +  "verification_context"
        +]
    • Changedassetfare_v2_session_observe_output2 fields changed
      • addedInput schema / properties / verification_context
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Strict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.",
        +  "properties": {
        +    "approval_v3": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "direct_route_summary_sha256": {
        +          "$ref": "#/properties/verification_context/properties/approval_v3/properties/quote_fingerprint"
        +        },
        +        "idempotency_key": {
        +          "pattern": "^[A-Za-z0-9._:-]{8,128}$",
        +          "type": "string"
        +        },
        +        "maximum_input_base": {
        +          "pattern": "^[1-9][0-9]*$",
        +          "type": "string"
        +        },
        +        "minimum_output_base": {
        +          "$ref": "#/properties/verification_context/properties/approval_v3/properties/maximum_input_base"
        +        },
        +        "quote_fingerprint": {
        +          "pattern": "^[0-9a-f]{64}$",
        +          "type": "string"
        +        },
        +        "quote_id": {
        +          "format": "uuid",
        +          "type": "string"
        +        },
        +        "selected_mode": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "selection_status": {
        +          "const": "selected",
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-approval-v3",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selection_status",
        +        "selected_mode",
        +        "maximum_input_base",
        +        "minimum_output_base",
        +        "direct_route_summary_sha256",
        +        "idempotency_key"
        +      ],
        +      "type": "object"
        +    },
        +    "direct_route_summary": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "assetfare_fee_bps": {
        +          "const": 1,
        +          "type": "number"
        +        },
        +        "classification": {
        +          "enum": [
        +            "direct_protocol_only",
        +            "external_intent"
        +          ],
        +          "type": "string"
        +        },
        +        "economic_eligibility": {
        +          "enum": [
        +            "not_asserted_by_capability",
        +            "coverage_only_not_primary"
        +          ],
        +          "type": "string"
        +        },
        +        "external_intent_protocol_used": {
        +          "type": "boolean"
        +        },
        +        "fee_collection_step_index": {
        +          "maximum": 7,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "from": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG",
        +            "polygon:USDC",
        +            "optimism:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "mode": {
        +          "enum": [
        +            "cctp_direct_composition",
        +            "optimism_source_cctp",
        +            "polygon_source_cctp",
        +            "robinhood_across_ingress_composition",
        +            "robinhood_paxos_egress_composition",
        +            "robinhood_paxos_ingress_composition",
        +            "same_chain_direct",
        +            "same_chain_direct_composition"
        +          ],
        +          "type": "string"
        +        },
        +        "primary_selection_eligible": {
        +          "type": "boolean"
        +        },
        +        "product_classification": {
        +          "enum": [
        +            "primary_direct",
        +            "external_coverage_only"
        +          ],
        +          "type": "string"
        +        },
        +        "provider_internal_dex_aggregation_possible": {
        +          "type": "boolean"
        +        },
        +        "public_execution_eligible": {
        +          "type": "boolean"
        +        },
        +        "route": {
        +          "enum": [
        +            "solana:SOL->solana:USDC",
        +            "solana:SOL->solana:USDG",
        +            "solana:SOL->base:ETH",
        +            "solana:SOL->base:USDC",
        +            "solana:SOL->arbitrum:ETH",
        +            "solana:SOL->arbitrum:USDC",
        +            "solana:SOL->robinhood:ETH",
        +            "solana:SOL->robinhood:USDG",
        +            "solana:USDC->solana:SOL",
        +            "solana:USDC->solana:USDG",
        +            "solana:USDC->base:ETH",
        +            "solana:USDC->base:USDC",
        +            "solana:USDC->arbitrum:ETH",
        +            "solana:USDC->arbitrum:USDC",
        +            "solana:USDC->robinhood:ETH",
        +            "solana:USDC->robinhood:USDG",
        +            "solana:USDG->solana:SOL",
        +            "solana:USDG->solana:USDC",
        +            "solana:USDG->base:ETH",
        +            "solana:USDG->base:USDC",
        +            "solana:USDG->arbitrum:ETH",
        +            "solana:USDG->arbitrum:USDC",
        +            "solana:USDG->robinhood:ETH",
        +            "solana:USDG->robinhood:USDG",
        +            "base:ETH->solana:SOL",
        +            "base:ETH->solana:USDC",
        +            "base:ETH->solana:USDG",
        +            "base:ETH->base:USDC",
        +            "base:ETH->arbitrum:ETH",
        +            "base:ETH->arbitrum:USDC",
        +            "base:ETH->robinhood:ETH",
        +            "base:ETH->robinhood:USDG",
        +            "base:USDC->solana:SOL",
        +            "base:USDC->solana:USDC",
        +            "base:USDC->solana:USDG",
        +            "base:USDC->base:ETH",
        +            "base:USDC->arbitrum:ETH",
        +            "base:USDC->arbitrum:USDC",
        +            "base:USDC->robinhood:ETH",
        +            "base:USDC->robinhood:USDG",
        +            "arbitrum:ETH->solana:SOL",
        +            "arbitrum:ETH->solana:USDC",
        +            "arbitrum:ETH->solana:USDG",
        +            "arbitrum:ETH->base:ETH",
        +            "arbitrum:ETH->base:USDC",
        +            "arbitrum:ETH->arbitrum:USDC",
        +            "arbitrum:ETH->robinhood:ETH",
        +            "arbitrum:ETH->robinhood:USDG",
        +            "arbitrum:USDC->solana:SOL",
        +            "arbitrum:USDC->solana:USDC",
        +            "arbitrum:USDC->solana:USDG",
        +            "arbitrum:USDC->base:ETH",
        +            "arbitrum:USDC->base:USDC",
        +            "arbitrum:USDC->arbitrum:ETH",
        +            "arbitrum:USDC->robinhood:ETH",
        +            "arbitrum:USDC->robinhood:USDG",
        +            "robinhood:ETH->solana:SOL",
        +            "robinhood:ETH->solana:USDC",
        +            "robinhood:ETH->solana:USDG",
        +            "robinhood:ETH->base:ETH",
        +            "robinhood:ETH->base:USDC",
        +            "robinhood:ETH->arbitrum:ETH",
        +            "robinhood:ETH->arbitrum:USDC",
        +            "robinhood:ETH->robinhood:USDG",
        +            "robinhood:USDG->solana:SOL",
        +            "robinhood:USDG->solana:USDC",
        +            "robinhood:USDG->solana:USDG",
        +            "robinhood:USDG->base:ETH",
        +            "robinhood:USDG->base:USDC",
        +            "robinhood:USDG->arbitrum:ETH",
        +            "robinhood:USDG->arbitrum:USDC",
        +            "robinhood:USDG->robinhood:ETH",
        +            "polygon:USDC->base:USDC",
        +            "polygon:USDC->arbitrum:USDC",
        +            "optimism:USDC->base:USDC",
        +            "optimism:USDC->arbitrum:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "route_aggregator_used": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "route_minimum_guard_bps": {
        +          "anyOf": [
        +            {
        +              "maximum": 500,
        +              "minimum": 1,
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "step_count": {
        +          "maximum": 8,
        +          "minimum": 1,
        +          "type": "integer"
        +        },
        +        "steps": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "action": {
        +                "enum": [
        +                  "swap",
        +                  "bridge",
        +                  "receive"
        +                ],
        +                "type": "string"
        +              },
        +              "aggregator_api_used": {
        +                "const": false,
        +                "type": "boolean"
        +              },
        +              "assetfare_fee_bps": {
        +                "enum": [
        +                  0,
        +                  1
        +                ],
        +                "type": "number"
        +              },
        +              "direct_protocol": {
        +                "type": "boolean"
        +              },
        +              "expected_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "expected_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "external_intent_protocol": {
        +                "type": "boolean"
        +              },
        +              "from": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG",
        +                  "polygon:USDC",
        +                  "optimism:USDC"
        +                ],
        +                "type": "string"
        +              },
        +              "index": {
        +                "maximum": 7,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "minimum_guard_bps": {
        +                "maximum": 500,
        +                "minimum": 1,
        +                "type": "integer"
        +              },
        +              "minimum_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "minimum_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "provider": {
        +                "enum": [
        +                  "raydium_clmm",
        +                  "orca_whirlpool",
        +                  "uniswap_v3",
        +                  "circle_cctp",
        +                  "circle_cctp_receive",
        +                  "paxos_usdg_layerzero_oft",
        +                  "across_intent_bridge"
        +                ],
        +                "type": "string"
        +              },
        +              "to": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG"
        +                ],
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "index",
        +              "action",
        +              "provider",
        +              "from",
        +              "to",
        +              "expected_input_base",
        +              "minimum_input_base",
        +              "expected_output_base",
        +              "minimum_output_base",
        +              "assetfare_fee_bps",
        +              "direct_protocol",
        +              "external_intent_protocol",
        +              "aggregator_api_used"
        +            ],
        +            "type": "object"
        +          },
        +          "maxItems": 8,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "to": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-direct-route-summary-v1",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "route",
        +        "from",
        +        "to",
        +        "classification",
        +        "mode",
        +        "route_aggregator_used",
        +        "external_intent_protocol_used",
        +        "provider_internal_dex_aggregation_possible",
        +        "assetfare_fee_bps",
        +        "fee_collection_step_index",
        +        "server_signing",
        +        "server_submission",
        +        "step_count",
        +        "steps"
        +      ],
        +      "type": "object"
        +    },
        +    "event_signer_public": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/properties/verification_context/properties/wallets/additionalProperties",
        +          "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +    },
        +    "intent": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "amount_usd": {
        +          "description": "Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount.",
        +          "minimum": 1,
        +          "type": "number"
        +        },
        +        "from_chain": {
        +          "description": "Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain.",
        +          "enum": [
        +            "solana",
        +            "base",
        +            "arbitrum",
        +            "robinhood",
        +            "polygon",
        +            "optimism"
        +          ],
        +          "type": "string"
        +        },
        +        "from_token": {
        +          "description": "Input token symbol on from_chain. The chain-token pair must appear in current v2 capabilities.",
        +          "enum": [
        +            "SOL",
        +            "ETH",
        +            "USDC",
        +            "USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "to_chain": {
        +          "description": "Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations.",
        +          "enum": [
        +            "solana",
        +            "base",
        +            "arbitrum",
        +            "robinhood"
        +          ],
        +          "type": "string"
        +        },
        +        "to_token": {
        +          "description": "Output token symbol on to_chain. The chain-token pair must appear in current v2 capabilities.",
        +          "enum": [
        +            "SOL",
        +            "ETH",
        +            "USDC",
        +            "USDG"
        +          ],
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "from_chain",
        +        "from_token",
        +        "to_chain",
        +        "to_token",
        +        "amount_usd"
        +      ],
        +      "type": "object"
        +    },
        +    "verification_context_sha256": {
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-session-verification-context-v1",
        +      "type": "string"
        +    },
        +    "wallets": {
        +      "additionalProperties": {
        +        "description": "Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material.",
        +        "type": "string"
        +      },
        +      "description": "Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases.",
        +      "propertyNames": {
        +        "enum": [
        +          "solana",
        +          "base",
        +          "arbitrum",
        +          "robinhood",
        +          "polygon",
        +          "optimism"
        +        ]
        +      },
        +      "type": "object"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "intent",
        +    "wallets",
        +    "event_signer_public",
        +    "approval_v3",
        +    "direct_route_summary",
        +    "verification_context_sha256"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "session_token",
        -  "session_id",
        -  "idempotency_key"
        -]New value: +[
        +  "session_token",
        +  "session_id",
        +  "idempotency_key",
        +  "verification_context"
        +]
    • Changedassetfare_v2_session_observe_source2 fields changed
      • addedInput schema / properties / verification_context
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Strict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.",
        +  "properties": {
        +    "approval_v3": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "direct_route_summary_sha256": {
        +          "$ref": "#/properties/verification_context/properties/approval_v3/properties/quote_fingerprint"
        +        },
        +        "idempotency_key": {
        +          "pattern": "^[A-Za-z0-9._:-]{8,128}$",
        +          "type": "string"
        +        },
        +        "maximum_input_base": {
        +          "pattern": "^[1-9][0-9]*$",
        +          "type": "string"
        +        },
        +        "minimum_output_base": {
        +          "$ref": "#/properties/verification_context/properties/approval_v3/properties/maximum_input_base"
        +        },
        +        "quote_fingerprint": {
        +          "pattern": "^[0-9a-f]{64}$",
        +          "type": "string"
        +        },
        +        "quote_id": {
        +          "format": "uuid",
        +          "type": "string"
        +        },
        +        "selected_mode": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "selection_status": {
        +          "const": "selected",
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-approval-v3",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selection_status",
        +        "selected_mode",
        +        "maximum_input_base",
        +        "minimum_output_base",
        +        "direct_route_summary_sha256",
        +        "idempotency_key"
        +      ],
        +      "type": "object"
        +    },
        +    "direct_route_summary": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "assetfare_fee_bps": {
        +          "const": 1,
        +          "type": "number"
        +        },
        +        "classification": {
        +          "enum": [
        +            "direct_protocol_only",
        +            "external_intent"
        +          ],
        +          "type": "string"
        +        },
        +        "economic_eligibility": {
        +          "enum": [
        +            "not_asserted_by_capability",
        +            "coverage_only_not_primary"
        +          ],
        +          "type": "string"
        +        },
        +        "external_intent_protocol_used": {
        +          "type": "boolean"
        +        },
        +        "fee_collection_step_index": {
        +          "maximum": 7,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "from": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG",
        +            "polygon:USDC",
        +            "optimism:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "mode": {
        +          "enum": [
        +            "cctp_direct_composition",
        +            "optimism_source_cctp",
        +            "polygon_source_cctp",
        +            "robinhood_across_ingress_composition",
        +            "robinhood_paxos_egress_composition",
        +            "robinhood_paxos_ingress_composition",
        +            "same_chain_direct",
        +            "same_chain_direct_composition"
        +          ],
        +          "type": "string"
        +        },
        +        "primary_selection_eligible": {
        +          "type": "boolean"
        +        },
        +        "product_classification": {
        +          "enum": [
        +            "primary_direct",
        +            "external_coverage_only"
        +          ],
        +          "type": "string"
        +        },
        +        "provider_internal_dex_aggregation_possible": {
        +          "type": "boolean"
        +        },
        +        "public_execution_eligible": {
        +          "type": "boolean"
        +        },
        +        "route": {
        +          "enum": [
        +            "solana:SOL->solana:USDC",
        +            "solana:SOL->solana:USDG",
        +            "solana:SOL->base:ETH",
        +            "solana:SOL->base:USDC",
        +            "solana:SOL->arbitrum:ETH",
        +            "solana:SOL->arbitrum:USDC",
        +            "solana:SOL->robinhood:ETH",
        +            "solana:SOL->robinhood:USDG",
        +            "solana:USDC->solana:SOL",
        +            "solana:USDC->solana:USDG",
        +            "solana:USDC->base:ETH",
        +            "solana:USDC->base:USDC",
        +            "solana:USDC->arbitrum:ETH",
        +            "solana:USDC->arbitrum:USDC",
        +            "solana:USDC->robinhood:ETH",
        +            "solana:USDC->robinhood:USDG",
        +            "solana:USDG->solana:SOL",
        +            "solana:USDG->solana:USDC",
        +            "solana:USDG->base:ETH",
        +            "solana:USDG->base:USDC",
        +            "solana:USDG->arbitrum:ETH",
        +            "solana:USDG->arbitrum:USDC",
        +            "solana:USDG->robinhood:ETH",
        +            "solana:USDG->robinhood:USDG",
        +            "base:ETH->solana:SOL",
        +            "base:ETH->solana:USDC",
        +            "base:ETH->solana:USDG",
        +            "base:ETH->base:USDC",
        +            "base:ETH->arbitrum:ETH",
        +            "base:ETH->arbitrum:USDC",
        +            "base:ETH->robinhood:ETH",
        +            "base:ETH->robinhood:USDG",
        +            "base:USDC->solana:SOL",
        +            "base:USDC->solana:USDC",
        +            "base:USDC->solana:USDG",
        +            "base:USDC->base:ETH",
        +            "base:USDC->arbitrum:ETH",
        +            "base:USDC->arbitrum:USDC",
        +            "base:USDC->robinhood:ETH",
        +            "base:USDC->robinhood:USDG",
        +            "arbitrum:ETH->solana:SOL",
        +            "arbitrum:ETH->solana:USDC",
        +            "arbitrum:ETH->solana:USDG",
        +            "arbitrum:ETH->base:ETH",
        +            "arbitrum:ETH->base:USDC",
        +            "arbitrum:ETH->arbitrum:USDC",
        +            "arbitrum:ETH->robinhood:ETH",
        +            "arbitrum:ETH->robinhood:USDG",
        +            "arbitrum:USDC->solana:SOL",
        +            "arbitrum:USDC->solana:USDC",
        +            "arbitrum:USDC->solana:USDG",
        +            "arbitrum:USDC->base:ETH",
        +            "arbitrum:USDC->base:USDC",
        +            "arbitrum:USDC->arbitrum:ETH",
        +            "arbitrum:USDC->robinhood:ETH",
        +            "arbitrum:USDC->robinhood:USDG",
        +            "robinhood:ETH->solana:SOL",
        +            "robinhood:ETH->solana:USDC",
        +            "robinhood:ETH->solana:USDG",
        +            "robinhood:ETH->base:ETH",
        +            "robinhood:ETH->base:USDC",
        +            "robinhood:ETH->arbitrum:ETH",
        +            "robinhood:ETH->arbitrum:USDC",
        +            "robinhood:ETH->robinhood:USDG",
        +            "robinhood:USDG->solana:SOL",
        +            "robinhood:USDG->solana:USDC",
        +            "robinhood:USDG->solana:USDG",
        +            "robinhood:USDG->base:ETH",
        +            "robinhood:USDG->base:USDC",
        +            "robinhood:USDG->arbitrum:ETH",
        +            "robinhood:USDG->arbitrum:USDC",
        +            "robinhood:USDG->robinhood:ETH",
        +            "polygon:USDC->base:USDC",
        +            "polygon:USDC->arbitrum:USDC",
        +            "optimism:USDC->base:USDC",
        +            "optimism:USDC->arbitrum:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "route_aggregator_used": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "route_minimum_guard_bps": {
        +          "anyOf": [
        +            {
        +              "maximum": 500,
        +              "minimum": 1,
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "step_count": {
        +          "maximum": 8,
        +          "minimum": 1,
        +          "type": "integer"
        +        },
        +        "steps": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "action": {
        +                "enum": [
        +                  "swap",
        +                  "bridge",
        +                  "receive"
        +                ],
        +                "type": "string"
        +              },
        +              "aggregator_api_used": {
        +                "const": false,
        +                "type": "boolean"
        +              },
        +              "assetfare_fee_bps": {
        +                "enum": [
        +                  0,
        +                  1
        +                ],
        +                "type": "number"
        +              },
        +              "direct_protocol": {
        +                "type": "boolean"
        +              },
        +              "expected_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "expected_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "external_intent_protocol": {
        +                "type": "boolean"
        +              },
        +              "from": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG",
        +                  "polygon:USDC",
        +                  "optimism:USDC"
        +                ],
        +                "type": "string"
        +              },
        +              "index": {
        +                "maximum": 7,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "minimum_guard_bps": {
        +                "maximum": 500,
        +                "minimum": 1,
        +                "type": "integer"
        +              },
        +              "minimum_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "minimum_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "provider": {
        +                "enum": [
        +                  "raydium_clmm",
        +                  "orca_whirlpool",
        +                  "uniswap_v3",
        +                  "circle_cctp",
        +                  "circle_cctp_receive",
        +                  "paxos_usdg_layerzero_oft",
        +                  "across_intent_bridge"
        +                ],
        +                "type": "string"
        +              },
        +              "to": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG"
        +                ],
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "index",
        +              "action",
        +              "provider",
        +              "from",
        +              "to",
        +              "expected_input_base",
        +              "minimum_input_base",
        +              "expected_output_base",
        +              "minimum_output_base",
        +              "assetfare_fee_bps",
        +              "direct_protocol",
        +              "external_intent_protocol",
        +              "aggregator_api_used"
        +            ],
        +            "type": "object"
        +          },
        +          "maxItems": 8,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "to": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-direct-route-summary-v1",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "route",
        +        "from",
        +        "to",
        +        "classification",
        +        "mode",
        +        "route_aggregator_used",
        +        "external_intent_protocol_used",
        +        "provider_internal_dex_aggregation_possible",
        +        "assetfare_fee_bps",
        +        "fee_collection_step_index",
        +        "server_signing",
        +        "server_submission",
        +        "step_count",
        +        "steps"
        +      ],
        +      "type": "object"
        +    },
        +    "event_signer_public": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/properties/verification_context/properties/wallets/additionalProperties",
        +          "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +    },
        +    "intent": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "amount_usd": {
        +          "description": "Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount.",
        +          "minimum": 1,
        +          "type": "number"
        +        },
        +        "from_chain": {
        +          "description": "Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain.",
        +          "enum": [
        +            "solana",
        +            "base",
        +            "arbitrum",
        +            "robinhood",
        +            "polygon",
        +            "optimism"
        +          ],
        +          "type": "string"
        +        },
        +        "from_token": {
        +          "description": "Input token symbol on from_chain. The chain-token pair must appear in current v2 capabilities.",
        +          "enum": [
        +            "SOL",
        +            "ETH",
        +            "USDC",
        +            "USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "to_chain": {
        +          "description": "Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations.",
        +          "enum": [
        +            "solana",
        +            "base",
        +            "arbitrum",
        +            "robinhood"
        +          ],
        +          "type": "string"
        +        },
        +        "to_token": {
        +          "description": "Output token symbol on to_chain. The chain-token pair must appear in current v2 capabilities.",
        +          "enum": [
        +            "SOL",
        +            "ETH",
        +            "USDC",
        +            "USDG"
        +          ],
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "from_chain",
        +        "from_token",
        +        "to_chain",
        +        "to_token",
        +        "amount_usd"
        +      ],
        +      "type": "object"
        +    },
        +    "verification_context_sha256": {
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-session-verification-context-v1",
        +      "type": "string"
        +    },
        +    "wallets": {
        +      "additionalProperties": {
        +        "description": "Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material.",
        +        "type": "string"
        +      },
        +      "description": "Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases.",
        +      "propertyNames": {
        +        "enum": [
        +          "solana",
        +          "base",
        +          "arbitrum",
        +          "robinhood",
        +          "polygon",
        +          "optimism"
        +        ]
        +      },
        +      "type": "object"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "intent",
        +    "wallets",
        +    "event_signer_public",
        +    "approval_v3",
        +    "direct_route_summary",
        +    "verification_context_sha256"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "session_token",
        -  "session_id",
        -  "idempotency_key",
        -  "transaction_hashes"
        -]New value: +[
        +  "session_token",
        +  "session_id",
        +  "idempotency_key",
        +  "transaction_hashes",
        +  "verification_context"
        +]
    • Changedassetfare_v2_session_refresh_action2 fields changed
      • addedInput schema / properties / verification_context
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Strict caller-held context copied from the selected quote and approval. It contains public intent/wallet data only, never the raw session token or a private key, and is required whenever a remote MCP session call can return current_action.",
        +  "properties": {
        +    "approval_v3": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "direct_route_summary_sha256": {
        +          "$ref": "#/properties/verification_context/properties/approval_v3/properties/quote_fingerprint"
        +        },
        +        "idempotency_key": {
        +          "pattern": "^[A-Za-z0-9._:-]{8,128}$",
        +          "type": "string"
        +        },
        +        "maximum_input_base": {
        +          "pattern": "^[1-9][0-9]*$",
        +          "type": "string"
        +        },
        +        "minimum_output_base": {
        +          "$ref": "#/properties/verification_context/properties/approval_v3/properties/maximum_input_base"
        +        },
        +        "quote_fingerprint": {
        +          "pattern": "^[0-9a-f]{64}$",
        +          "type": "string"
        +        },
        +        "quote_id": {
        +          "format": "uuid",
        +          "type": "string"
        +        },
        +        "selected_mode": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "selection_status": {
        +          "const": "selected",
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-approval-v3",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selection_status",
        +        "selected_mode",
        +        "maximum_input_base",
        +        "minimum_output_base",
        +        "direct_route_summary_sha256",
        +        "idempotency_key"
        +      ],
        +      "type": "object"
        +    },
        +    "direct_route_summary": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "assetfare_fee_bps": {
        +          "const": 1,
        +          "type": "number"
        +        },
        +        "classification": {
        +          "enum": [
        +            "direct_protocol_only",
        +            "external_intent"
        +          ],
        +          "type": "string"
        +        },
        +        "economic_eligibility": {
        +          "enum": [
        +            "not_asserted_by_capability",
        +            "coverage_only_not_primary"
        +          ],
        +          "type": "string"
        +        },
        +        "external_intent_protocol_used": {
        +          "type": "boolean"
        +        },
        +        "fee_collection_step_index": {
        +          "maximum": 7,
        +          "minimum": 0,
        +          "type": "integer"
        +        },
        +        "from": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG",
        +            "polygon:USDC",
        +            "optimism:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "mode": {
        +          "enum": [
        +            "cctp_direct_composition",
        +            "optimism_source_cctp",
        +            "polygon_source_cctp",
        +            "robinhood_across_ingress_composition",
        +            "robinhood_paxos_egress_composition",
        +            "robinhood_paxos_ingress_composition",
        +            "same_chain_direct",
        +            "same_chain_direct_composition"
        +          ],
        +          "type": "string"
        +        },
        +        "primary_selection_eligible": {
        +          "type": "boolean"
        +        },
        +        "product_classification": {
        +          "enum": [
        +            "primary_direct",
        +            "external_coverage_only"
        +          ],
        +          "type": "string"
        +        },
        +        "provider_internal_dex_aggregation_possible": {
        +          "type": "boolean"
        +        },
        +        "public_execution_eligible": {
        +          "type": "boolean"
        +        },
        +        "route": {
        +          "enum": [
        +            "solana:SOL->solana:USDC",
        +            "solana:SOL->solana:USDG",
        +            "solana:SOL->base:ETH",
        +            "solana:SOL->base:USDC",
        +            "solana:SOL->arbitrum:ETH",
        +            "solana:SOL->arbitrum:USDC",
        +            "solana:SOL->robinhood:ETH",
        +            "solana:SOL->robinhood:USDG",
        +            "solana:USDC->solana:SOL",
        +            "solana:USDC->solana:USDG",
        +            "solana:USDC->base:ETH",
        +            "solana:USDC->base:USDC",
        +            "solana:USDC->arbitrum:ETH",
        +            "solana:USDC->arbitrum:USDC",
        +            "solana:USDC->robinhood:ETH",
        +            "solana:USDC->robinhood:USDG",
        +            "solana:USDG->solana:SOL",
        +            "solana:USDG->solana:USDC",
        +            "solana:USDG->base:ETH",
        +            "solana:USDG->base:USDC",
        +            "solana:USDG->arbitrum:ETH",
        +            "solana:USDG->arbitrum:USDC",
        +            "solana:USDG->robinhood:ETH",
        +            "solana:USDG->robinhood:USDG",
        +            "base:ETH->solana:SOL",
        +            "base:ETH->solana:USDC",
        +            "base:ETH->solana:USDG",
        +            "base:ETH->base:USDC",
        +            "base:ETH->arbitrum:ETH",
        +            "base:ETH->arbitrum:USDC",
        +            "base:ETH->robinhood:ETH",
        +            "base:ETH->robinhood:USDG",
        +            "base:USDC->solana:SOL",
        +            "base:USDC->solana:USDC",
        +            "base:USDC->solana:USDG",
        +            "base:USDC->base:ETH",
        +            "base:USDC->arbitrum:ETH",
        +            "base:USDC->arbitrum:USDC",
        +            "base:USDC->robinhood:ETH",
        +            "base:USDC->robinhood:USDG",
        +            "arbitrum:ETH->solana:SOL",
        +            "arbitrum:ETH->solana:USDC",
        +            "arbitrum:ETH->solana:USDG",
        +            "arbitrum:ETH->base:ETH",
        +            "arbitrum:ETH->base:USDC",
        +            "arbitrum:ETH->arbitrum:USDC",
        +            "arbitrum:ETH->robinhood:ETH",
        +            "arbitrum:ETH->robinhood:USDG",
        +            "arbitrum:USDC->solana:SOL",
        +            "arbitrum:USDC->solana:USDC",
        +            "arbitrum:USDC->solana:USDG",
        +            "arbitrum:USDC->base:ETH",
        +            "arbitrum:USDC->base:USDC",
        +            "arbitrum:USDC->arbitrum:ETH",
        +            "arbitrum:USDC->robinhood:ETH",
        +            "arbitrum:USDC->robinhood:USDG",
        +            "robinhood:ETH->solana:SOL",
        +            "robinhood:ETH->solana:USDC",
        +            "robinhood:ETH->solana:USDG",
        +            "robinhood:ETH->base:ETH",
        +            "robinhood:ETH->base:USDC",
        +            "robinhood:ETH->arbitrum:ETH",
        +            "robinhood:ETH->arbitrum:USDC",
        +            "robinhood:ETH->robinhood:USDG",
        +            "robinhood:USDG->solana:SOL",
        +            "robinhood:USDG->solana:USDC",
        +            "robinhood:USDG->solana:USDG",
        +            "robinhood:USDG->base:ETH",
        +            "robinhood:USDG->base:USDC",
        +            "robinhood:USDG->arbitrum:ETH",
        +            "robinhood:USDG->arbitrum:USDC",
        +            "robinhood:USDG->robinhood:ETH",
        +            "polygon:USDC->base:USDC",
        +            "polygon:USDC->arbitrum:USDC",
        +            "optimism:USDC->base:USDC",
        +            "optimism:USDC->arbitrum:USDC"
        +          ],
        +          "type": "string"
        +        },
        +        "route_aggregator_used": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "route_minimum_guard_bps": {
        +          "anyOf": [
        +            {
        +              "maximum": 500,
        +              "minimum": 1,
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "step_count": {
        +          "maximum": 8,
        +          "minimum": 1,
        +          "type": "integer"
        +        },
        +        "steps": {
        +          "items": {
        +            "additionalProperties": false,
        +            "properties": {
        +              "action": {
        +                "enum": [
        +                  "swap",
        +                  "bridge",
        +                  "receive"
        +                ],
        +                "type": "string"
        +              },
        +              "aggregator_api_used": {
        +                "const": false,
        +                "type": "boolean"
        +              },
        +              "assetfare_fee_bps": {
        +                "enum": [
        +                  0,
        +                  1
        +                ],
        +                "type": "number"
        +              },
        +              "direct_protocol": {
        +                "type": "boolean"
        +              },
        +              "expected_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "expected_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "external_intent_protocol": {
        +                "type": "boolean"
        +              },
        +              "from": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG",
        +                  "polygon:USDC",
        +                  "optimism:USDC"
        +                ],
        +                "type": "string"
        +              },
        +              "index": {
        +                "maximum": 7,
        +                "minimum": 0,
        +                "type": "integer"
        +              },
        +              "minimum_guard_bps": {
        +                "maximum": 500,
        +                "minimum": 1,
        +                "type": "integer"
        +              },
        +              "minimum_input_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "minimum_output_base": {
        +                "pattern": "^[1-9][0-9]*$",
        +                "type": "string"
        +              },
        +              "provider": {
        +                "enum": [
        +                  "raydium_clmm",
        +                  "orca_whirlpool",
        +                  "uniswap_v3",
        +                  "circle_cctp",
        +                  "circle_cctp_receive",
        +                  "paxos_usdg_layerzero_oft",
        +                  "across_intent_bridge"
        +                ],
        +                "type": "string"
        +              },
        +              "to": {
        +                "enum": [
        +                  "solana:SOL",
        +                  "solana:USDC",
        +                  "solana:USDG",
        +                  "base:ETH",
        +                  "base:USDC",
        +                  "arbitrum:ETH",
        +                  "arbitrum:USDC",
        +                  "robinhood:ETH",
        +                  "robinhood:USDG"
        +                ],
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "index",
        +              "action",
        +              "provider",
        +              "from",
        +              "to",
        +              "expected_input_base",
        +              "minimum_input_base",
        +              "expected_output_base",
        +              "minimum_output_base",
        +              "assetfare_fee_bps",
        +              "direct_protocol",
        +              "external_intent_protocol",
        +              "aggregator_api_used"
        +            ],
        +            "type": "object"
        +          },
        +          "maxItems": 8,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "to": {
        +          "enum": [
        +            "solana:SOL",
        +            "solana:USDC",
        +            "solana:USDG",
        +            "base:ETH",
        +            "base:USDC",
        +            "arbitrum:ETH",
        +            "arbitrum:USDC",
        +            "robinhood:ETH",
        +            "robinhood:USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-direct-route-summary-v1",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "route",
        +        "from",
        +        "to",
        +        "classification",
        +        "mode",
        +        "route_aggregator_used",
        +        "external_intent_protocol_used",
        +        "provider_internal_dex_aggregation_possible",
        +        "assetfare_fee_bps",
        +        "fee_collection_step_index",
        +        "server_signing",
        +        "server_submission",
        +        "step_count",
        +        "steps"
        +      ],
        +      "type": "object"
        +    },
        +    "event_signer_public": {
        +      "anyOf": [
        +        {
        +          "$ref": "#/properties/verification_context/properties/wallets/additionalProperties",
        +          "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Solana CCTP only: caller-generated ephemeral public key. Keep the matching private key client-side and use it to co-sign the returned unsigned event-account transaction; never send the private key."
        +    },
        +    "intent": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "amount_usd": {
        +          "description": "Requested input value in USD, minimum 1. USD 1 is reachability/schema smoke only. A USD 50 competitive bucket was observed only for dated 2026-09-23 Solana USDC to Base USDC evidence and must not be generalized to another corridor. USD 1,000 is the primary representative amount. SOL input includes a swap. Always quote the actual intended amount.",
        +          "minimum": 1,
        +          "type": "number"
        +        },
        +        "from_chain": {
        +          "description": "Source chain for the v2 route. Polygon and Optimism are source-only and cannot be used as to_chain.",
        +          "enum": [
        +            "solana",
        +            "base",
        +            "arbitrum",
        +            "robinhood",
        +            "polygon",
        +            "optimism"
        +          ],
        +          "type": "string"
        +        },
        +        "from_token": {
        +          "description": "Input token symbol on from_chain. The chain-token pair must appear in current v2 capabilities.",
        +          "enum": [
        +            "SOL",
        +            "ETH",
        +            "USDC",
        +            "USDG"
        +          ],
        +          "type": "string"
        +        },
        +        "to_chain": {
        +          "description": "Destination chain for the v2 route: Solana, Base, Arbitrum, or Robinhood Chain. Polygon and Optimism are not destinations.",
        +          "enum": [
        +            "solana",
        +            "base",
        +            "arbitrum",
        +            "robinhood"
        +          ],
        +          "type": "string"
        +        },
        +        "to_token": {
        +          "description": "Output token symbol on to_chain. The chain-token pair must appear in current v2 capabilities.",
        +          "enum": [
        +            "SOL",
        +            "ETH",
        +            "USDC",
        +            "USDG"
        +          ],
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "from_chain",
        +        "from_token",
        +        "to_chain",
        +        "to_token",
        +        "amount_usd"
        +      ],
        +      "type": "object"
        +    },
        +    "verification_context_sha256": {
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-session-verification-context-v1",
        +      "type": "string"
        +    },
        +    "wallets": {
        +      "additionalProperties": {
        +        "description": "Caller-owned public wallet address: 0x plus 40 hex characters for EVM, or 32-44 base58 characters for Solana. Never provide secret key material.",
        +        "type": "string"
        +      },
        +      "description": "Map each chain needed by this route to the caller's public wallet address. Include public addresses only; one to six entries, never private keys or seed phrases.",
        +      "propertyNames": {
        +        "enum": [
        +          "solana",
        +          "base",
        +          "arbitrum",
        +          "robinhood",
        +          "polygon",
        +          "optimism"
        +        ]
        +      },
        +      "type": "object"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "intent",
        +    "wallets",
        +    "event_signer_public",
        +    "approval_v3",
        +    "direct_route_summary",
        +    "verification_context_sha256"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "session_token",
        -  "session_id",
        -  "idempotency_key"
        -]New value: +[
        +  "session_token",
        +  "session_id",
        +  "idempotency_key",
        +  "verification_context"
        +]
  6. 14 tool updatesv1.2.0
    • Changedassetfare_create_session1 field changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
    • Changedassetfare_observe_cctp1 field changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
    • Changedassetfare_observe_destination1 field changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
    • Changedassetfare_prepare_cctp_action1 field changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
    • Changedassetfare_prepare_destination_action1 field changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
    • Changedassetfare_v2_capabilities3 fields changed
      • addedOutput schema / properties / continuation_v3
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "automatic_selection_forbidden": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "cache_scope": {
        +      "const": "bounded_process_local_ttl_restart_fails_closed",
        +      "type": "string"
        +    },
        +    "caller_approved_boolean_is_not_human_proof": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "enforcement": {
        +      "const": "server_enforced_quote_binding",
        +      "type": "string"
        +    },
        +    "future_actions_requote_and_enforce_original_step_minimums": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "maximum_cache_records": {
        +      "const": 2048,
        +      "type": "number"
        +    },
        +    "maximum_ttl_seconds": {
        +      "const": 60,
        +      "type": "number"
        +    },
        +    "multistep_allowed_modes": {
        +      "items": [
        +        {
        +          "const": "session",
        +          "type": "string"
        +        }
        +      ],
        +      "maxItems": 1,
        +      "minItems": 1,
        +      "type": "array"
        +    },
        +    "one_step_allowed_modes": {
        +      "items": [
        +        {
        +          "const": "one_shot",
        +          "type": "string"
        +        },
        +        {
        +          "const": "session",
        +          "type": "string"
        +        }
        +      ],
        +      "maxItems": 2,
        +      "minItems": 2,
        +      "type": "array"
        +    },
        +    "quote_payload_sha256_spec": {
        +      "const": "sha256(AssetFare typed-canonical-v1 bytes of the quote without continuation_v3 after exact base-unit substitution: n=null; t/f=boolean; d=<IEEE-754 binary64 big-endian 16 lowercase hex> for each finite JSON number; s=<UTF-8 byte length>:<Unicode scalar text with lone surrogates forbidden>; a=<count>:[items]; o=<count>:{UTF-8-byte-sorted string-key/value pairs}; every non-substituted integral JSON number must be within +/-9007199254740991; substituted paths are intent.estimated_input_base, route.input_base, route.expected_output_base, route.minimum_output_base, and every route.steps[i].expected_input_base/floor_input_base/expected_output_base/minimum_output_base from direct_route_summary exact decimal strings)",
        +      "type": "string"
        +    },
        +    "required_on_every_quote": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "selection_status": {
        +      "const": "unranked_candidate",
        +      "type": "string"
        +    },
        +    "server_signing": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "server_submission": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "session_owner_binding": {
        +      "const": "sha256_of_caller_generated_session_token_raw_token_never_stored",
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-quote-bound-continuation-v3",
        +      "type": "string"
        +    },
        +    "whole_session_path_and_bounds_enforced": {
        +      "const": true,
        +      "type": "boolean"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "required_on_every_quote",
        +    "enforcement",
        +    "selection_status",
        +    "automatic_selection_forbidden",
        +    "caller_approved_boolean_is_not_human_proof",
        +    "cache_scope",
        +    "maximum_ttl_seconds",
        +    "maximum_cache_records",
        +    "multistep_allowed_modes",
        +    "one_step_allowed_modes",
        +    "session_owner_binding",
        +    "whole_session_path_and_bounds_enforced",
        +    "future_actions_requote_and_enforce_original_step_minimums",
        +    "quote_payload_sha256_spec",
        +    "server_signing",
        +    "server_submission"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / direct_route_summary
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "assetfare_fee_step_bound": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "base_unit_amounts_are_decimal_strings": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "classification_values": {
        +      "items": [
        +        {
        +          "const": "direct_protocol_only",
        +          "type": "string"
        +        },
        +        {
        +          "const": "external_intent",
        +          "type": "string"
        +        }
        +      ],
        +      "maxItems": 2,
        +      "minItems": 2,
        +      "type": "array"
        +    },
        +    "external_intent": {
        +      "const": "Across only for Robinhood ingress; provider-internal liquidity sourcing or aggregation remains possible",
        +      "type": "string"
        +    },
        +    "normalized_chain_asset_endpoints": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "ordered_provider_path": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "required_on_every_quote": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "route_aggregator_used_scope": {
        +      "const": "assetfare_engine_only",
        +      "type": "string"
        +    },
        +    "route_count": {
        +      "const": 76,
        +      "type": "number"
        +    },
        +    "server_signing": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "server_submission": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "step_count": {
        +      "const": 168,
        +      "type": "number"
        +    },
        +    "version": {
        +      "const": "assetfare-direct-route-summary-v1",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "required_on_every_quote",
        +    "route_count",
        +    "step_count",
        +    "ordered_provider_path",
        +    "normalized_chain_asset_endpoints",
        +    "base_unit_amounts_are_decimal_strings",
        +    "assetfare_fee_step_bound",
        +    "classification_values",
        +    "route_aggregator_used_scope",
        +    "external_intent",
        +    "server_signing",
        +    "server_submission"
        +  ],
        +  "type": "object"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "status",
        -  "public_api_enabled",
        -  "asset_endpoints",
        -  "source_only_asset_endpoints",
        -  "source_only_routes",
        -  "directed_conversion_routes",
        -  "unsigned_route_plans_ready",
        -  "execution_ready_routes",
        -  "phase_b_blocked_routes",
        -  "blocked_source_only_routes",
        -  "server_signing",
        -  "server_submission"
        -]New value: +[
        +  "status",
        +  "public_api_enabled",
        +  "asset_endpoints",
        +  "source_only_asset_endpoints",
        +  "source_only_routes",
        +  "directed_conversion_routes",
        +  "unsigned_route_plans_ready",
        +  "execution_ready_routes",
        +  "direct_route_summary",
        +  "continuation_v3",
        +  "phase_b_blocked_routes",
        +  "blocked_source_only_routes",
        +  "server_signing",
        +  "server_submission"
        +]
    • Changedassetfare_v2_prepare2 fields changed
      • addedInput schema / properties / approval_v3
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Optional strict Core 2.4.1 one_shot quote-bound selection. Omit only for the explicitly legacy_advisory path.",
        +  "properties": {
        +    "direct_route_summary_sha256": {
        +      "$ref": "#/properties/approval_v3/properties/quote_fingerprint"
        +    },
        +    "idempotency_key": {
        +      "pattern": "^[A-Za-z0-9._:-]{8,128}$",
        +      "type": "string"
        +    },
        +    "maximum_input_base": {
        +      "pattern": "^[1-9][0-9]*$",
        +      "type": "string"
        +    },
        +    "minimum_output_base": {
        +      "$ref": "#/properties/approval_v3/properties/maximum_input_base"
        +    },
        +    "quote_fingerprint": {
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "quote_id": {
        +      "format": "uuid",
        +      "type": "string"
        +    },
        +    "selected_mode": {
        +      "const": "one_shot",
        +      "type": "string"
        +    },
        +    "selection_status": {
        +      "const": "selected",
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-quote-bound-approval-v3",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "quote_id",
        +    "quote_fingerprint",
        +    "selection_status",
        +    "selected_mode",
        +    "maximum_input_base",
        +    "minimum_output_base",
        +    "direct_route_summary_sha256",
        +    "idempotency_key"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / properties / caller_approved / description
        Previous value: -"Explicit confirmation that the caller approved this state-changing preparation or session creation. A quote alone is not approval."New value: +"Legacy caller assertion that MUST be supplied explicitly. It is not human-proof and is never auto-inserted; approval_v3 adds server-enforced quote binding."
    • Changedassetfare_v2_quote3 fields changed
      • addedOutput schema / properties / continuation_v3
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "allowed_modes": {
        +      "items": {
        +        "enum": [
        +          "one_shot",
        +          "session"
        +        ],
        +        "type": "string"
        +      },
        +      "maxItems": 2,
        +      "minItems": 1,
        +      "type": "array"
        +    },
        +    "approval_v3_required_fields": {
        +      "items": [
        +        {
        +          "const": "direct_route_summary_sha256",
        +          "type": "string"
        +        },
        +        {
        +          "const": "idempotency_key",
        +          "type": "string"
        +        },
        +        {
        +          "const": "maximum_input_base",
        +          "type": "string"
        +        },
        +        {
        +          "const": "minimum_output_base",
        +          "type": "string"
        +        },
        +        {
        +          "const": "quote_fingerprint",
        +          "type": "string"
        +        },
        +        {
        +          "const": "quote_id",
        +          "type": "string"
        +        },
        +        {
        +          "const": "selected_mode",
        +          "type": "string"
        +        },
        +        {
        +          "const": "selection_status",
        +          "type": "string"
        +        },
        +        {
        +          "const": "version",
        +          "type": "string"
        +        }
        +      ],
        +      "maxItems": 9,
        +      "minItems": 9,
        +      "type": "array"
        +    },
        +    "automatic_selection_forbidden": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "caller_approved_boolean_is_not_human_proof": {
        +      "const": true,
        +      "type": "boolean"
        +    },
        +    "direct_route_summary_sha256": {
        +      "$ref": "#/properties/continuation_v3/properties/quote_fingerprint"
        +    },
        +    "enforcement": {
        +      "const": "server_enforced_quote_binding",
        +      "type": "string"
        +    },
        +    "event_signer_public_required": {
        +      "type": "boolean"
        +    },
        +    "expires_at": {
        +      "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/issued_at"
        +    },
        +    "idempotency": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "field": {
        +          "const": "idempotency_key",
        +          "type": "string"
        +        },
        +        "pattern": {
        +          "const": "^[A-Za-z0-9._:-]{8,128}$",
        +          "type": "string"
        +        },
        +        "required": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "scope": {
        +          "const": "quote_and_selected_mode",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "required",
        +        "field",
        +        "pattern",
        +        "scope"
        +      ],
        +      "type": "object"
        +    },
        +    "input_base_bounds": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "maximum": {
        +          "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/ttl_seconds"
        +        },
        +        "minimum": {
        +          "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/ttl_seconds"
        +        }
        +      },
        +      "required": [
        +        "minimum",
        +        "maximum"
        +      ],
        +      "type": "object"
        +    },
        +    "intent": {
        +      "additionalProperties": true,
        +      "properties": {
        +        "amount_usd": {
        +          "type": "number"
        +        },
        +        "estimated_input_base": {
        +          "exclusiveMinimum": 0,
        +          "type": "integer"
        +        },
        +        "from": {
        +          "minLength": 1,
        +          "type": "string"
        +        },
        +        "to": {
        +          "minLength": 1,
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "from",
        +        "to",
        +        "amount_usd",
        +        "estimated_input_base"
        +      ],
        +      "type": "object"
        +    },
        +    "issued_at": {
        +      "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/issued_at"
        +    },
        +    "legacy_handoff_enforcement": {
        +      "const": "legacy_advisory",
        +      "type": "string"
        +    },
        +    "minimum_output_base": {
        +      "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/ttl_seconds"
        +    },
        +    "quote_fingerprint": {
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "quote_fingerprint_claim": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "allowed_modes": {
        +          "items": {
        +            "enum": [
        +              "one_shot",
        +              "session"
        +            ],
        +            "type": "string"
        +          },
        +          "maxItems": 2,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "direct_route_summary_sha256": {
        +          "$ref": "#/properties/continuation_v3/properties/quote_fingerprint"
        +        },
        +        "event_signer_public_required": {
        +          "type": "boolean"
        +        },
        +        "expires_at": {
        +          "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/issued_at"
        +        },
        +        "input_base_bounds": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "maximum": {
        +              "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/ttl_seconds"
        +            },
        +            "minimum": {
        +              "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/ttl_seconds"
        +            }
        +          },
        +          "required": [
        +            "minimum",
        +            "maximum"
        +          ],
        +          "type": "object"
        +        },
        +        "intent": {
        +          "additionalProperties": false,
        +          "properties": {
        +            "amount_usd_decimal": {
        +              "pattern": "^(0|[1-9][0-9]*)(\\.[0-9]+)?$",
        +              "type": "string"
        +            },
        +            "estimated_input_base": {
        +              "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/ttl_seconds"
        +            },
        +            "from": {
        +              "minLength": 1,
        +              "type": "string"
        +            },
        +            "to": {
        +              "minLength": 1,
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "from",
        +            "to",
        +            "amount_usd_decimal",
        +            "estimated_input_base"
        +          ],
        +          "type": "object"
        +        },
        +        "issued_at": {
        +          "format": "date-time",
        +          "type": "string"
        +        },
        +        "minimum_output_base": {
        +          "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/ttl_seconds"
        +        },
        +        "quote_id": {
        +          "$ref": "#/properties/continuation_v3/properties/quote_id"
        +        },
        +        "quote_payload_sha256": {
        +          "$ref": "#/properties/continuation_v3/properties/quote_fingerprint"
        +        },
        +        "quote_payload_sha256_spec": {
        +          "const": "sha256(AssetFare typed-canonical-v1 bytes of the quote without continuation_v3 after exact base-unit substitution: n=null; t/f=boolean; d=<IEEE-754 binary64 big-endian 16 lowercase hex> for each finite JSON number; s=<UTF-8 byte length>:<Unicode scalar text with lone surrogates forbidden>; a=<count>:[items]; o=<count>:{UTF-8-byte-sorted string-key/value pairs}; every non-substituted integral JSON number must be within +/-9007199254740991; substituted paths are intent.estimated_input_base, route.input_base, route.expected_output_base, route.minimum_output_base, and every route.steps[i].expected_input_base/floor_input_base/expected_output_base/minimum_output_base from direct_route_summary exact decimal strings)",
        +          "type": "string"
        +        },
        +        "required_wallet_chains": {
        +          "items": {
        +            "enum": [
        +              "arbitrum",
        +              "base",
        +              "optimism",
        +              "polygon",
        +              "robinhood",
        +              "solana"
        +            ],
        +            "type": "string"
        +          },
        +          "maxItems": 6,
        +          "minItems": 1,
        +          "type": "array"
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "step_count": {
        +          "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/ttl_seconds"
        +        },
        +        "ttl_seconds": {
        +          "pattern": "^[1-9][0-9]*$",
        +          "type": "string"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-continuation-v3",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "issued_at",
        +        "expires_at",
        +        "ttl_seconds",
        +        "intent",
        +        "direct_route_summary_sha256",
        +        "quote_payload_sha256",
        +        "quote_payload_sha256_spec",
        +        "input_base_bounds",
        +        "minimum_output_base",
        +        "required_wallet_chains",
        +        "event_signer_public_required",
        +        "step_count",
        +        "allowed_modes",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    },
        +    "quote_fingerprint_spec": {
        +      "const": "sha256(UTF-8 sorted-key compact JSON of quote_fingerprint_claim; every numeric claim is a non-exponent decimal string)",
        +      "type": "string"
        +    },
        +    "quote_id": {
        +      "format": "uuid",
        +      "type": "string"
        +    },
        +    "quote_payload_sha256": {
        +      "$ref": "#/properties/continuation_v3/properties/quote_fingerprint"
        +    },
        +    "quote_payload_sha256_spec": {
        +      "const": "sha256(AssetFare typed-canonical-v1 bytes of the quote without continuation_v3 after exact base-unit substitution: n=null; t/f=boolean; d=<IEEE-754 binary64 big-endian 16 lowercase hex> for each finite JSON number; s=<UTF-8 byte length>:<Unicode scalar text with lone surrogates forbidden>; a=<count>:[items]; o=<count>:{UTF-8-byte-sorted string-key/value pairs}; every non-substituted integral JSON number must be within +/-9007199254740991; substituted paths are intent.estimated_input_base, route.input_base, route.expected_output_base, route.minimum_output_base, and every route.steps[i].expected_input_base/floor_input_base/expected_output_base/minimum_output_base from direct_route_summary exact decimal strings)",
        +      "type": "string"
        +    },
        +    "recommended_mode": {
        +      "enum": [
        +        "session",
        +        "one_shot_or_session"
        +      ],
        +      "type": "string"
        +    },
        +    "required_wallet_chains": {
        +      "items": {
        +        "$ref": "#/properties/continuation_v3/properties/quote_fingerprint_claim/properties/required_wallet_chains/items"
        +      },
        +      "maxItems": 6,
        +      "minItems": 1,
        +      "type": "array"
        +    },
        +    "selection_status": {
        +      "const": "unranked_candidate",
        +      "type": "string"
        +    },
        +    "server_signing": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "server_submission": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "session_header": {
        +      "additionalProperties": false,
        +      "properties": {
        +        "caller_generated": {
        +          "const": true,
        +          "type": "boolean"
        +        },
        +        "minimum_entropy_bits": {
        +          "const": 256,
        +          "type": "number"
        +        },
        +        "name": {
        +          "const": "X-AssetFare-Session-Token",
        +          "type": "string"
        +        },
        +        "required_for": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "server_returns_raw_value": {
        +          "const": false,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "name",
        +        "required_for",
        +        "caller_generated",
        +        "minimum_entropy_bits",
        +        "server_returns_raw_value"
        +      ],
        +      "type": "object"
        +    },
        +    "step_count": {
        +      "maximum": 8,
        +      "minimum": 1,
        +      "type": "integer"
        +    },
        +    "ttl_seconds": {
        +      "maximum": 60,
        +      "minimum": 1,
        +      "type": "integer"
        +    },
        +    "version": {
        +      "const": "assetfare-quote-bound-continuation-v3",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "enforcement",
        +    "selection_status",
        +    "automatic_selection_forbidden",
        +    "caller_approved_boolean_is_not_human_proof",
        +    "quote_id",
        +    "quote_fingerprint",
        +    "quote_fingerprint_spec",
        +    "quote_fingerprint_claim",
        +    "issued_at",
        +    "expires_at",
        +    "ttl_seconds",
        +    "intent",
        +    "direct_route_summary_sha256",
        +    "quote_payload_sha256",
        +    "quote_payload_sha256_spec",
        +    "input_base_bounds",
        +    "minimum_output_base",
        +    "required_wallet_chains",
        +    "event_signer_public_required",
        +    "step_count",
        +    "recommended_mode",
        +    "allowed_modes",
        +    "session_header",
        +    "idempotency",
        +    "approval_v3_required_fields",
        +    "legacy_handoff_enforcement",
        +    "server_signing",
        +    "server_submission"
        +  ],
        +  "type": "object"
        +}
      • addedOutput schema / properties / direct_route_summary
        Added value: +{
        +  "additionalProperties": false,
        +  "properties": {
        +    "assetfare_fee_bps": {
        +      "const": 1,
        +      "type": "number"
        +    },
        +    "classification": {
        +      "enum": [
        +        "direct_protocol_only",
        +        "external_intent"
        +      ],
        +      "type": "string"
        +    },
        +    "external_intent_protocol_used": {
        +      "type": "boolean"
        +    },
        +    "fee_collection_step_index": {
        +      "maximum": 7,
        +      "minimum": 0,
        +      "type": "integer"
        +    },
        +    "from": {
        +      "enum": [
        +        "solana:SOL",
        +        "solana:USDC",
        +        "solana:USDG",
        +        "base:ETH",
        +        "base:USDC",
        +        "arbitrum:ETH",
        +        "arbitrum:USDC",
        +        "robinhood:ETH",
        +        "robinhood:USDG",
        +        "polygon:USDC",
        +        "optimism:USDC"
        +      ],
        +      "type": "string"
        +    },
        +    "mode": {
        +      "enum": [
        +        "cctp_direct_composition",
        +        "optimism_source_cctp",
        +        "polygon_source_cctp",
        +        "robinhood_across_ingress_composition",
        +        "robinhood_paxos_egress_composition",
        +        "same_chain_direct",
        +        "same_chain_direct_composition"
        +      ],
        +      "type": "string"
        +    },
        +    "provider_internal_dex_aggregation_possible": {
        +      "type": "boolean"
        +    },
        +    "route": {
        +      "enum": [
        +        "solana:SOL->solana:USDC",
        +        "solana:SOL->solana:USDG",
        +        "solana:SOL->base:ETH",
        +        "solana:SOL->base:USDC",
        +        "solana:SOL->arbitrum:ETH",
        +        "solana:SOL->arbitrum:USDC",
        +        "solana:SOL->robinhood:ETH",
        +        "solana:SOL->robinhood:USDG",
        +        "solana:USDC->solana:SOL",
        +        "solana:USDC->solana:USDG",
        +        "solana:USDC->base:ETH",
        +        "solana:USDC->base:USDC",
        +        "solana:USDC->arbitrum:ETH",
        +        "solana:USDC->arbitrum:USDC",
        +        "solana:USDC->robinhood:ETH",
        +        "solana:USDC->robinhood:USDG",
        +        "solana:USDG->solana:SOL",
        +        "solana:USDG->solana:USDC",
        +        "solana:USDG->base:ETH",
        +        "solana:USDG->base:USDC",
        +        "solana:USDG->arbitrum:ETH",
        +        "solana:USDG->arbitrum:USDC",
        +        "solana:USDG->robinhood:ETH",
        +        "solana:USDG->robinhood:USDG",
        +        "base:ETH->solana:SOL",
        +        "base:ETH->solana:USDC",
        +        "base:ETH->solana:USDG",
        +        "base:ETH->base:USDC",
        +        "base:ETH->arbitrum:ETH",
        +        "base:ETH->arbitrum:USDC",
        +        "base:ETH->robinhood:ETH",
        +        "base:ETH->robinhood:USDG",
        +        "base:USDC->solana:SOL",
        +        "base:USDC->solana:USDC",
        +        "base:USDC->solana:USDG",
        +        "base:USDC->base:ETH",
        +        "base:USDC->arbitrum:ETH",
        +        "base:USDC->arbitrum:USDC",
        +        "base:USDC->robinhood:ETH",
        +        "base:USDC->robinhood:USDG",
        +        "arbitrum:ETH->solana:SOL",
        +        "arbitrum:ETH->solana:USDC",
        +        "arbitrum:ETH->solana:USDG",
        +        "arbitrum:ETH->base:ETH",
        +        "arbitrum:ETH->base:USDC",
        +        "arbitrum:ETH->arbitrum:USDC",
        +        "arbitrum:ETH->robinhood:ETH",
        +        "arbitrum:ETH->robinhood:USDG",
        +        "arbitrum:USDC->solana:SOL",
        +        "arbitrum:USDC->solana:USDC",
        +        "arbitrum:USDC->solana:USDG",
        +        "arbitrum:USDC->base:ETH",
        +        "arbitrum:USDC->base:USDC",
        +        "arbitrum:USDC->arbitrum:ETH",
        +        "arbitrum:USDC->robinhood:ETH",
        +        "arbitrum:USDC->robinhood:USDG",
        +        "robinhood:ETH->solana:SOL",
        +        "robinhood:ETH->solana:USDC",
        +        "robinhood:ETH->solana:USDG",
        +        "robinhood:ETH->base:ETH",
        +        "robinhood:ETH->base:USDC",
        +        "robinhood:ETH->arbitrum:ETH",
        +        "robinhood:ETH->arbitrum:USDC",
        +        "robinhood:ETH->robinhood:USDG",
        +        "robinhood:USDG->solana:SOL",
        +        "robinhood:USDG->solana:USDC",
        +        "robinhood:USDG->solana:USDG",
        +        "robinhood:USDG->base:ETH",
        +        "robinhood:USDG->base:USDC",
        +        "robinhood:USDG->arbitrum:ETH",
        +        "robinhood:USDG->arbitrum:USDC",
        +        "robinhood:USDG->robinhood:ETH",
        +        "polygon:USDC->base:USDC",
        +        "polygon:USDC->arbitrum:USDC",
        +        "optimism:USDC->base:USDC",
        +        "optimism:USDC->arbitrum:USDC"
        +      ],
        +      "type": "string"
        +    },
        +    "route_aggregator_used": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "server_signing": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "server_submission": {
        +      "const": false,
        +      "type": "boolean"
        +    },
        +    "step_count": {
        +      "maximum": 8,
        +      "minimum": 1,
        +      "type": "integer"
        +    },
        +    "steps": {
        +      "items": {
        +        "additionalProperties": false,
        +        "properties": {
        +          "action": {
        +            "enum": [
        +              "swap",
        +              "bridge"
        +            ],
        +            "type": "string"
        +          },
        +          "aggregator_api_used": {
        +            "const": false,
        +            "type": "boolean"
        +          },
        +          "assetfare_fee_bps": {
        +            "enum": [
        +              0,
        +              1
        +            ],
        +            "type": "number"
        +          },
        +          "direct_protocol": {
        +            "type": "boolean"
        +          },
        +          "expected_input_base": {
        +            "pattern": "^[1-9][0-9]*$",
        +            "type": "string"
        +          },
        +          "expected_output_base": {
        +            "pattern": "^[1-9][0-9]*$",
        +            "type": "string"
        +          },
        +          "external_intent_protocol": {
        +            "type": "boolean"
        +          },
        +          "from": {
        +            "enum": [
        +              "solana:SOL",
        +              "solana:USDC",
        +              "solana:USDG",
        +              "base:ETH",
        +              "base:USDC",
        +              "arbitrum:ETH",
        +              "arbitrum:USDC",
        +              "robinhood:ETH",
        +              "robinhood:USDG",
        +              "polygon:USDC",
        +              "optimism:USDC"
        +            ],
        +            "type": "string"
        +          },
        +          "index": {
        +            "maximum": 7,
        +            "minimum": 0,
        +            "type": "integer"
        +          },
        +          "minimum_input_base": {
        +            "pattern": "^[1-9][0-9]*$",
        +            "type": "string"
        +          },
        +          "minimum_output_base": {
        +            "pattern": "^[1-9][0-9]*$",
        +            "type": "string"
        +          },
        +          "provider": {
        +            "enum": [
        +              "raydium_clmm",
        +              "orca_whirlpool",
        +              "uniswap_v3",
        +              "circle_cctp",
        +              "paxos_usdg_layerzero_oft",
        +              "across_intent_bridge"
        +            ],
        +            "type": "string"
        +          },
        +          "to": {
        +            "enum": [
        +              "solana:SOL",
        +              "solana:USDC",
        +              "solana:USDG",
        +              "base:ETH",
        +              "base:USDC",
        +              "arbitrum:ETH",
        +              "arbitrum:USDC",
        +              "robinhood:ETH",
        +              "robinhood:USDG"
        +            ],
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "index",
        +          "action",
        +          "provider",
        +          "from",
        +          "to",
        +          "expected_input_base",
        +          "minimum_input_base",
        +          "expected_output_base",
        +          "minimum_output_base",
        +          "assetfare_fee_bps",
        +          "direct_protocol",
        +          "external_intent_protocol",
        +          "aggregator_api_used"
        +        ],
        +        "type": "object"
        +      },
        +      "maxItems": 8,
        +      "minItems": 1,
        +      "type": "array"
        +    },
        +    "to": {
        +      "enum": [
        +        "solana:SOL",
        +        "solana:USDC",
        +        "solana:USDG",
        +        "base:ETH",
        +        "base:USDC",
        +        "arbitrum:ETH",
        +        "arbitrum:USDC",
        +        "robinhood:ETH",
        +        "robinhood:USDG"
        +      ],
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-direct-route-summary-v1",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "route",
        +    "from",
        +    "to",
        +    "classification",
        +    "mode",
        +    "route_aggregator_used",
        +    "external_intent_protocol_used",
        +    "provider_internal_dex_aggregation_possible",
        +    "assetfare_fee_bps",
        +    "fee_collection_step_index",
        +    "server_signing",
        +    "server_submission",
        +    "step_count",
        +    "steps"
        +  ],
        +  "type": "object"
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "quote_id",
        -  "status",
        -  "as_of",
        -  "ttl_seconds",
        -  "intent",
        -  "offer",
        -  "cost_summary",
        -  "eta",
        -  "route",
        -  "risk",
        -  "execution",
        -  "caller_action_plan_handoff"
        -]New value: +[
        +  "quote_id",
        +  "status",
        +  "as_of",
        +  "ttl_seconds",
        +  "intent",
        +  "offer",
        +  "cost_summary",
        +  "eta",
        +  "route",
        +  "direct_route_summary",
        +  "continuation_v3",
        +  "risk",
        +  "execution",
        +  "caller_action_plan_handoff"
        +]
    • Changedassetfare_v2_session_create5 fields changed
      • addedInput schema / properties / approval_v3
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Optional strict Core 2.4.1 session quote-bound selection. Omit only for legacy_advisory.",
        +  "properties": {
        +    "direct_route_summary_sha256": {
        +      "$ref": "#/properties/approval_v3/properties/quote_fingerprint"
        +    },
        +    "idempotency_key": {
        +      "pattern": "^[A-Za-z0-9._:-]{8,128}$",
        +      "type": "string"
        +    },
        +    "maximum_input_base": {
        +      "pattern": "^[1-9][0-9]*$",
        +      "type": "string"
        +    },
        +    "minimum_output_base": {
        +      "$ref": "#/properties/approval_v3/properties/maximum_input_base"
        +    },
        +    "quote_fingerprint": {
        +      "pattern": "^[0-9a-f]{64}$",
        +      "type": "string"
        +    },
        +    "quote_id": {
        +      "format": "uuid",
        +      "type": "string"
        +    },
        +    "selected_mode": {
        +      "const": "session",
        +      "type": "string"
        +    },
        +    "selection_status": {
        +      "const": "selected",
        +      "type": "string"
        +    },
        +    "version": {
        +      "const": "assetfare-quote-bound-approval-v3",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "version",
        +    "quote_id",
        +    "quote_fingerprint",
        +    "selection_status",
        +    "selected_mode",
        +    "maximum_input_base",
        +    "minimum_output_base",
        +    "direct_route_summary_sha256",
        +    "idempotency_key"
        +  ],
        +  "type": "object"
        +}
      • changedInput schema / properties / caller_approved / description
        Previous value: -"Explicit confirmation that the caller approved this state-changing preparation or session creation. A quote alone is not approval."New value: +"Legacy caller assertion that MUST be supplied explicitly. It is not human-proof and is never auto-inserted; approval_v3 adds server-enforced quote binding."
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
      • addedOutput schema / properties / quote_binding
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "quote_fingerprint": {
        +          "pattern": "^[0-9a-f]{64}$",
        +          "type": "string"
        +        },
        +        "quote_id": {
        +          "format": "uuid",
        +          "type": "string"
        +        },
        +        "selected_mode": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-session-constraints-v1",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": true,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selected_mode",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "legacy_advisory",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": false,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    }
        +  ]
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "session_id",
        -  "status",
        -  "action_available",
        -  "current_action",
        -  "server_signing",
        -  "server_submission",
        -  "signed",
        -  "submitted"
        -]New value: +[
        +  "session_id",
        +  "status",
        +  "action_available",
        +  "current_action",
        +  "quote_binding",
        +  "server_signing",
        +  "server_submission",
        +  "signed",
        +  "submitted"
        +]
    • Changedassetfare_v2_session_get2 fields changed
      • addedOutput schema / properties / quote_binding
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "quote_fingerprint": {
        +          "pattern": "^[0-9a-f]{64}$",
        +          "type": "string"
        +        },
        +        "quote_id": {
        +          "format": "uuid",
        +          "type": "string"
        +        },
        +        "selected_mode": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-session-constraints-v1",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": true,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selected_mode",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "legacy_advisory",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": false,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    }
        +  ]
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "session_id",
        -  "status",
        -  "action_available",
        -  "current_action",
        -  "server_signing",
        -  "server_submission",
        -  "signed",
        -  "submitted"
        -]New value: +[
        +  "session_id",
        +  "status",
        +  "action_available",
        +  "current_action",
        +  "quote_binding",
        +  "server_signing",
        +  "server_submission",
        +  "signed",
        +  "submitted"
        +]
    • Changedassetfare_v2_session_observe_output3 fields changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
      • addedOutput schema / properties / quote_binding
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "quote_fingerprint": {
        +          "pattern": "^[0-9a-f]{64}$",
        +          "type": "string"
        +        },
        +        "quote_id": {
        +          "format": "uuid",
        +          "type": "string"
        +        },
        +        "selected_mode": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-session-constraints-v1",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": true,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selected_mode",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "legacy_advisory",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": false,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    }
        +  ]
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "session_id",
        -  "status",
        -  "action_available",
        -  "current_action",
        -  "server_signing",
        -  "server_submission",
        -  "signed",
        -  "submitted"
        -]New value: +[
        +  "session_id",
        +  "status",
        +  "action_available",
        +  "current_action",
        +  "quote_binding",
        +  "server_signing",
        +  "server_submission",
        +  "signed",
        +  "submitted"
        +]
    • Changedassetfare_v2_session_observe_source3 fields changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
      • addedOutput schema / properties / quote_binding
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "quote_fingerprint": {
        +          "pattern": "^[0-9a-f]{64}$",
        +          "type": "string"
        +        },
        +        "quote_id": {
        +          "format": "uuid",
        +          "type": "string"
        +        },
        +        "selected_mode": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-session-constraints-v1",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": true,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selected_mode",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "legacy_advisory",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": false,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    }
        +  ]
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "session_id",
        -  "status",
        -  "action_available",
        -  "current_action",
        -  "server_signing",
        -  "server_submission",
        -  "signed",
        -  "submitted"
        -]New value: +[
        +  "session_id",
        +  "status",
        +  "action_available",
        +  "current_action",
        +  "quote_binding",
        +  "server_signing",
        +  "server_submission",
        +  "signed",
        +  "submitted"
        +]
    • Changedassetfare_v2_session_refresh_action3 fields changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
      • addedOutput schema / properties / quote_binding
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "quote_fingerprint": {
        +          "pattern": "^[0-9a-f]{64}$",
        +          "type": "string"
        +        },
        +        "quote_id": {
        +          "format": "uuid",
        +          "type": "string"
        +        },
        +        "selected_mode": {
        +          "const": "session",
        +          "type": "string"
        +        },
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "assetfare-quote-bound-session-constraints-v1",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": true,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "quote_id",
        +        "quote_fingerprint",
        +        "selected_mode",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    },
        +    {
        +      "additionalProperties": false,
        +      "properties": {
        +        "server_signing": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "server_submission": {
        +          "const": false,
        +          "type": "boolean"
        +        },
        +        "version": {
        +          "const": "legacy_advisory",
        +          "type": "string"
        +        },
        +        "whole_session_path_and_bounds_enforced": {
        +          "const": false,
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "version",
        +        "whole_session_path_and_bounds_enforced",
        +        "server_signing",
        +        "server_submission"
        +      ],
        +      "type": "object"
        +    }
        +  ]
        +}
      • changedOutput schema / required
        Previous value: -[
        -  "session_id",
        -  "status",
        -  "action_available",
        -  "current_action",
        -  "server_signing",
        -  "server_submission",
        -  "signed",
        -  "submitted"
        -]New value: +[
        +  "session_id",
        +  "status",
        +  "action_available",
        +  "current_action",
        +  "quote_binding",
        +  "server_signing",
        +  "server_submission",
        +  "signed",
        +  "submitted"
        +]
    • Changedassetfare_verify_source_receipt1 field changed
      • changedInput schema / properties / idempotency_key / description
        Previous value: -"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation."New value: +"Caller-generated retry key, 8-128 characters. Reuse it only when retrying the same logical mutation; choose a new key for a new operation. Strict approval_v3 requests additionally enforce its ASCII key pattern."
  7. 22 tool updatesv0.1.0
    • First observedassetfare_create_session
    • First observedassetfare_finish_wallet_auth
    • First observedassetfare_manifest
    • First observedassetfare_observe_cctp
    • First observedassetfare_observe_destination
    • First observedassetfare_prepare_cctp_action
    • First observedassetfare_prepare_destination_action
    • First observedassetfare_prepare_source_action
    • First observedassetfare_quote
    • First observedassetfare_read_session
    • First observedassetfare_start_wallet_auth
    • First observedassetfare_status
    • First observedassetfare_v2_capabilities
    • First observedassetfare_v2_new_session_capability
    • First observedassetfare_v2_prepare
    • First observedassetfare_v2_quote
    • First observedassetfare_v2_session_create
    • First observedassetfare_v2_session_get
    • First observedassetfare_v2_session_observe_output
    • First observedassetfare_v2_session_observe_source
    • First observedassetfare_v2_session_refresh_action
    • First observedassetfare_verify_source_receipt

TDQS

A3.6/5.0

Scored across 24 tools

Disambiguation2/5

The tool set exposes two parallel generations of the same workflow (legacy v1 and v2), producing near-duplicate concepts: quote/status/session/create/prepare/observe tools exist in both families. Within v2, route_selection, quote, quote_selected_candidate, prepare, and session_create have closely related boundaries, and several descriptions explicitly warn agents not to use the wrong tool, which is evidence of real confusion.

Naming Consistency4/5

Names are almost entirely snake_case with a consistent assetfare_ or assetfare_v2_ prefix, and lifecycle verbs are generally predictable (quote, prepare, session_get, observe_source). Minor deviations exist, such as noun-first capabilities/manifest and legacy unversioned names contrasting with the v2 prefix, but the overall pattern is readable.

Tool Count3/5

24 tools is heavy and is inflated by maintaining both legacy v1 and v2 surfaces side by side. The domain is complex enough to justify many operations, but a cleaner server would likely consolidate or retire the legacy set.

Completeness4/5

The surface covers capabilities, manifest verification, quoting, route selection, session creation, preparation, source/output observation, refresh, wallet auth, and legacy CCTP destination flow. Minor lifecycle gaps remain, such as explicit session cancellation or listing, but core end-to-end workflows are represented.

Maintenance

ActivityActive
ResponsivenessLimited data

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to perform complex crypto operations like cross-chain routing, contract decoding, portfolio management, and anti-rug security checks, returning unsigned transactions for safe signing by the agent.
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI agents to obtain on-chain DEX aggregator quotes computed by the on-chain Quoter contract through their own RPC node, returning verified unsigned swap calldata, simulations, token info, deployment registry checks, and live staking solvency. All tools are read-only and keyless, so the agent never signs or holds a private key.
    7
    201 npm
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to compare rates across 100+ blockchains and 15+ liquidity providers, create non-custodial cross-chain swaps, and track transaction status without any API key. It exposes tools for listing currencies, quoting swaps with AI-ranked routing tags, generating deposit addresses, and monitoring exchanges to completion.
    MIT