You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Users now pass the bare API origin; the SDK detects the hosted Provable API by
host (api.provable.com) and derives every service path itself — reads at /v2,
delegated proving at /prove, hosted scanner at /scanner, JWT auth at /jwts —
all per-network. Any OTHER host (devnode, local, custom node) is treated as a
literal read base (no /v2) with NO hosted prover/scanner wired up, so nothing
breaks and there's no footgun. A legacy ".../v2" value is still accepted
(detected as Provable and rebuilt identically) — fully backward compatible.
- _client_common: DEFAULT_HOST -> bare origin; add PROVABLE_API_HOSTS +
is_provable_host().
- network_client / async: _resolve_urls() maps host -> (read_host, origin,
prover_default, scanner_default); prover/scanner default only on the hosted
API, else None. Expose origin/prover_uri/scanner_uri. submit_proving_request
returns a clear error when no prover is configured off the hosted API.
- facade: HTTPProvider url is now the origin; scanner_base() returns None off
the hosted API and the facade raises an actionable error rather than pointing
at a bogus /scanner.
- Roundtrip live test: filter scan on min_microcredits (avoid spending a
zero-balance record -> invalid SNARK inputs) and shrink the mint to 10_000.
- e2e endpoint defaults -> bare origin. Devnode untouched (non-Provable ->
literal base). Live DPS + RSS tests pass on testnet + mainnet.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
0 commit comments