sdk

Radroots SDK and bindings
git clone https://radroots.dev/git/sdk.git
Log | Files | Refs | README

commit f8a33b695a9234ffd0c6bd57b5ba0102f3d3819f
parent 7b21fd126a677eeabe3dc7b2d5901d9946465101
Author: triesap <tyson@radroots.org>
Date:   Thu, 16 Jul 2026 21:06:47 +0000

release-product: remove validation receipt SDK surface

- remove validation receipt operations from runtime contract v1
- regenerate CLI host metadata from the runtime contract catalog
- drop validation receipt re-exports from the SDK runtime surface
- rename sync refresh receipt counts to agreement attestations

Diffstat:
MCargo.toml | 1-
Mcrates/runtime_contract_v1/src/lib.rs | 29+++--------------------------
Mcrates/sdk/README | 2+-
Mcrates/sdk/src/lib.rs | 5-----
Mcrates/sdk/src/sync_runtime.rs | 4++--
Mtools/xtask/src/cli_host.rs | 16----------------
6 files changed, 6 insertions(+), 51 deletions(-)

diff --git a/Cargo.toml b/Cargo.toml @@ -56,7 +56,6 @@ radroots_replica_schema = { path = "../lib/crates/replica_schema", version = "0. radroots_replica_sync = { path = "../lib/crates/replica_sync", version = "0.1.0-alpha.2", default-features = false } radroots_runtime_paths = { path = "../lib/crates/runtime_paths", version = "0.1.0-alpha.2", default-features = false } radroots_sdk_sql_wasm_runtime = { path = "crates/sql_wasm_runtime", version = "0.1.0-alpha.2" } -radroots_trade_sp1_guest = { path = "../lib/crates/trade_sp1_guest", version = "0.1.0-alpha.2", default-features = false } radroots_sql_core = { path = "../lib/crates/sql_core", version = "0.1.0-alpha.2", default-features = false } radroots_trade = { path = "../lib/crates/trade", version = "0.1.0-alpha.2", default-features = false, features = [ "serde_json", diff --git a/crates/runtime_contract_v1/src/lib.rs b/crates/runtime_contract_v1/src/lib.rs @@ -123,8 +123,6 @@ runtime_operation_ids! { TradePrivateArtifactOpen => "trade.private_artifact.open", TradePrivateArtifactDelete => "trade.private_artifact.delete", ValidationStatus => "validation.status", - ValidationReceiptGet => "validation.receipt.get", - ValidationReceiptVerify => "validation.receipt.verify", SyncStatus => "sync.status", SyncPull => "sync.pull", SyncPush => "sync.push", @@ -794,20 +792,6 @@ pub const RUNTIME_OPERATION_DESCRIPTORS_V1: &[RuntimeOperationDescriptorV1] = &[ ProjectionEffectV1::ReadsProjection, ), read( - RuntimeOperationIdV1::ValidationReceiptGet, - OperationRiskV1::Low, - TransportCapabilityRouteV1::local(), - PrivacyEffectV1::None, - ProjectionEffectV1::ReadsProjection, - ), - read( - RuntimeOperationIdV1::ValidationReceiptVerify, - OperationRiskV1::Medium, - TransportCapabilityRouteV1::local(), - PrivacyEffectV1::None, - ProjectionEffectV1::ReadsProjection, - ), - read( RuntimeOperationIdV1::SyncStatus, OperationRiskV1::Low, TransportCapabilityRouteV1::diagnostics(), @@ -1133,7 +1117,6 @@ runtime_error_codes! { PrivateDataUnavailable => "private_data_unavailable", ValidationPending => "validation_pending", ValidationExpired => "validation_expired", - ValidationReceiptConflict => "validation_receipt_conflict", ValidatorSetInvalid => "validator_set_invalid", MediaPolicyDenied => "media_policy_denied", BackupInvalid => "backup_invalid", @@ -1164,7 +1147,6 @@ pub enum RuntimeErrorClassV1 { Privacy, Security, Maintenance, - ValidationReceipt, Internal, } @@ -1413,22 +1395,17 @@ pub const RUNTIME_ERROR_DESCRIPTORS_V1: &[RuntimeErrorDescriptorV1] = &[ ), error( RuntimeErrorCodeV1::ValidationPending, - RuntimeErrorClassV1::ValidationReceipt, + RuntimeErrorClassV1::Validation, true, ), error( RuntimeErrorCodeV1::ValidationExpired, - RuntimeErrorClassV1::ValidationReceipt, - false, - ), - error( - RuntimeErrorCodeV1::ValidationReceiptConflict, - RuntimeErrorClassV1::ValidationReceipt, + RuntimeErrorClassV1::Validation, false, ), error( RuntimeErrorCodeV1::ValidatorSetInvalid, - RuntimeErrorClassV1::ValidationReceipt, + RuntimeErrorClassV1::Validation, false, ), error( diff --git a/crates/sdk/README b/crates/sdk/README @@ -69,7 +69,7 @@ Relay URL policy is explicit. Public relay URLs must use `wss://`. Local develop URLs are accepted only under `NostrRelayUrlPolicy::Localhost` and only for `localhost`, `127.0.0.1`, or `[::1]`. Non-local insecure `ws://` targets, including private LAN addresses, are rejected. -Low-level event-contract, wire-codec, reducer, and validation receipt contract ownership lives in +Low-level event-contract, wire-codec, reducer, and agreement-attestation contract ownership lives in the shared Radroots libraries. The SDK exposes product APIs and selected adapter boundaries; it does not expose a public workflow-bypass namespace for product callers. diff --git a/crates/sdk/src/lib.rs b/crates/sdk/src/lib.rs @@ -200,8 +200,3 @@ pub use crate::transport::{ ReticulumProfile, SDK_TRANSPORT_TARGET_MAX_COUNT, SatisfactionPolicy, TargetPolicy, TargetSet, TransportProfile, TransportReceipt, }; -#[cfg(feature = "runtime")] -pub use radroots_trade::validation_receipt::{ - RadrootsTradeCommitmentConfidence, RadrootsTradeValidationAuthority, - RadrootsTradeValidationTrustPolicy, RadrootsTradeValidationTrustState, -}; diff --git a/crates/sdk/src/sync_runtime.rs b/crates/sdk/src/sync_runtime.rs @@ -333,7 +333,7 @@ pub struct SyncProjectionRefreshReceipt { pub scanned_events: usize, pub listing_upserts: usize, pub trade_upserts: usize, - pub validation_receipts: usize, + pub agreement_attestations: usize, pub transport_observations: i64, pub last_event_seq: Option<i64>, } @@ -353,7 +353,7 @@ impl SyncProjectionRefreshReceipt { scanned_events, listing_upserts: 0, trade_upserts, - validation_receipts: 0, + agreement_attestations: 0, transport_observations: summary.transport_observations, last_event_seq: summary.last_event_seq, } diff --git a/tools/xtask/src/cli_host.rs b/tools/xtask/src/cli_host.rs @@ -383,22 +383,6 @@ const CLI_OPERATION_METADATA: &[CliOperationMetadata] = &[ false, ), meta( - "validation.receipt.get", - "ValidationReceiptGet", - "radroots validation receipt get <receipt-event-id>", - "Get a validation receipt.", - "Any", - false, - ), - meta( - "validation.receipt.verify", - "ValidationReceiptVerify", - "radroots validation receipt verify <receipt-event-id>", - "Verify a validation receipt.", - "Any", - false, - ), - meta( "sync.status", "SyncStatus", "radroots sync status",