cli

Command-line interface for Radroots
git clone https://radroots.dev/git/cli.git
Log | Files | Refs | README | LICENSE

commit 702338bfc3a635fdd165a2e4ceb14e1a2b02ece7
parent 3bb4d11b2ca1cbe653013ae6a3deb18a031d73a4
Author: triesap <tyson@radroots.org>
Date:   Tue, 28 Jul 2026 18:42:15 +0000

deps: consume frozen library cohort

- Require the governed 0.1.0-alpha lib package versions exactly.
- Preserve the CLI package and release train at version 0.1.0.
- Resolve SDK registry identities through explicit local capsule patches.
- Refresh the lockfile without compiling publication artifacts.

Diffstat:
MCargo.lock | 187++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------
MCargo.toml | 78++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------
2 files changed, 192 insertions(+), 73 deletions(-)

diff --git a/Cargo.lock b/Cargo.lock @@ -218,6 +218,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + +[[package]] name = "base64" version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -479,6 +485,12 @@ dependencies = [ ] [[package]] +name = "const-oid" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" + +[[package]] name = "const-random" version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -612,6 +624,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" [[package]] +name = "crypto-bigint" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +dependencies = [ + "generic-array", + "rand_core 0.6.4", + "subtle", + "zeroize", +] + +[[package]] name = "crypto-common" version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -651,6 +675,16 @@ dependencies = [ ] [[package]] +name = "der" +version = "0.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" +dependencies = [ + "const-oid", + "zeroize", +] + +[[package]] name = "deranged" version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -712,6 +746,23 @@ dependencies = [ ] [[package]] +name = "elliptic-curve" +version = "0.13.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +dependencies = [ + "base16ct", + "crypto-bigint", + "ff", + "generic-array", + "group", + "rand_core 0.6.4", + "sec1", + "subtle", + "zeroize", +] + +[[package]] name = "encoding_rs" version = "0.8.35" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -766,6 +817,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a043dc74da1e37d6afe657061213aa6f425f855399a11d3463c6ecccc4dfda1f" [[package]] +name = "ff" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" +dependencies = [ + "rand_core 0.6.4", + "subtle", +] + +[[package]] name = "filetime" version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -946,6 +1007,7 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", + "zeroize", ] [[package]] @@ -1001,6 +1063,17 @@ dependencies = [ ] [[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff", + "rand_core 0.6.4", + "subtle", +] + +[[package]] name = "hashbrown" version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -1450,6 +1523,16 @@ dependencies = [ ] [[package]] +name = "k256" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" +dependencies = [ + "cfg-if", + "elliptic-curve", +] + +[[package]] name = "keyring" version = "3.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2117,15 +2200,16 @@ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" [[package]] name = "radroots_authority" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "radroots_event", + "radroots_identity", "radroots_nostr", ] [[package]] name = "radroots_blossom" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "mediatype", "serde", @@ -2185,21 +2269,21 @@ dependencies = [ [[package]] name = "radroots_core" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "rust_decimal", - "rust_decimal_macros", "serde", ] [[package]] name = "radroots_event" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "hex", "jiff-tzdb", "radroots_blossom", "radroots_core", + "radroots_identity", "secp256k1", "serde", "serde_json", @@ -2210,25 +2294,27 @@ dependencies = [ [[package]] name = "radroots_event_codec" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "nostr", "radroots_blossom", "radroots_core", "radroots_event", + "radroots_identity", "serde", "serde_json", ] [[package]] name = "radroots_event_store" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "getrandom 0.2.17", "hex", "radroots_blossom", "radroots_event", "radroots_event_codec", + "radroots_identity", "radroots_transport", "serde", "serde_json", @@ -2239,7 +2325,7 @@ dependencies = [ [[package]] name = "radroots_geocoder" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "futures-executor", "hex", @@ -2256,22 +2342,16 @@ dependencies = [ [[package]] name = "radroots_identity" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ - "nostr", - "radroots_protected_store", - "radroots_runtime", - "radroots_runtime_paths", - "radroots_secret_vault", + "k256", "serde", - "serde_json", - "thiserror 1.0.69", - "tracing", + "thiserror 2.0.18", ] [[package]] name = "radroots_log" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "chrono", "serde_json", @@ -2283,14 +2363,14 @@ dependencies = [ [[package]] name = "radroots_mesh" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "radroots_transport", ] [[package]] name = "radroots_nostr" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "nostr", "nostr-sdk", @@ -2304,8 +2384,9 @@ dependencies = [ [[package]] name = "radroots_nostr_accounts" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ + "nostr", "radroots_identity", "radroots_nostr_signer", "radroots_protected_store", @@ -2319,7 +2400,7 @@ dependencies = [ [[package]] name = "radroots_nostr_connect" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "nostr", "serde", @@ -2330,7 +2411,7 @@ dependencies = [ [[package]] name = "radroots_nostr_signer" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "hex", "nostr", @@ -2348,7 +2429,7 @@ dependencies = [ [[package]] name = "radroots_outbox" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "hex", "radroots_event", @@ -2363,7 +2444,7 @@ dependencies = [ [[package]] name = "radroots_protected_store" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "chacha20poly1305", "getrandom 0.2.17", @@ -2375,14 +2456,14 @@ dependencies = [ [[package]] name = "radroots_protocol_contract_v1" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "serde", ] [[package]] name = "radroots_replica_schema" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "serde", "serde_json", @@ -2390,7 +2471,7 @@ dependencies = [ [[package]] name = "radroots_replica_store" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "hex", "radroots_replica_schema", @@ -2402,7 +2483,7 @@ dependencies = [ [[package]] name = "radroots_replica_sync" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "base64 0.22.1", "hex", @@ -2420,7 +2501,7 @@ dependencies = [ [[package]] name = "radroots_runtime" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "anyhow", "chacha20poly1305", @@ -2450,7 +2531,7 @@ dependencies = [ [[package]] name = "radroots_runtime_paths" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "serde", "thiserror 1.0.69", @@ -2458,7 +2539,7 @@ dependencies = [ [[package]] name = "radroots_runtime_store" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "radroots_sql_core", "serde", @@ -2504,14 +2585,14 @@ dependencies = [ [[package]] name = "radroots_secret_vault" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "keyring", ] [[package]] name = "radroots_sql_core" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "chrono", "futures-executor", @@ -2523,7 +2604,7 @@ dependencies = [ [[package]] name = "radroots_trade" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "base64 0.22.1", "hex", @@ -2532,6 +2613,7 @@ dependencies = [ "radroots_event", "radroots_event_codec", "radroots_event_store", + "radroots_identity", "serde", "serde_json", "sha2", @@ -2541,7 +2623,7 @@ dependencies = [ [[package]] name = "radroots_transport" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "serde", "sha2", @@ -2549,7 +2631,7 @@ dependencies = [ [[package]] name = "radroots_transport_nostr" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "futures", "nostr", @@ -2567,7 +2649,7 @@ dependencies = [ [[package]] name = "radroots_transport_publish_protocol" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "radroots_transport", "serde", @@ -2575,7 +2657,7 @@ dependencies = [ [[package]] name = "radroots_transport_reticulum" -version = "1.0.0-alpha.1" +version = "0.1.0-alpha" dependencies = [ "radroots_transport", ] @@ -2769,16 +2851,6 @@ dependencies = [ ] [[package]] -name = "rust_decimal_macros" -version = "1.40.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74a5a6f027e892c7a035c6fddb50435a1fbf5a734ffc0c2a9fed4d0221440519" -dependencies = [ - "quote", - "syn", -] - -[[package]] name = "rustc-hash" version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -2872,6 +2944,19 @@ dependencies = [ ] [[package]] +name = "sec1" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +dependencies = [ + "base16ct", + "der", + "generic-array", + "subtle", + "zeroize", +] + +[[package]] name = "secp256k1" version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -4423,3 +4508,7 @@ name = "zmij" version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" + +[[patch.unused]] +name = "radroots_event_index" +version = "0.1.0-alpha" diff --git a/Cargo.toml b/Cargo.toml @@ -26,33 +26,33 @@ chacha20poly1305 = "0.10" chrono = { version = "0.4", default-features = false, features = ["clock", "std"] } clap = { version = "4.5", features = ["derive"] } getrandom = "0.2" -radroots_authority = { path = "../lib/crates/authority", version = "=1.0.0-alpha.1", default-features = false, features = ["std", "local_signer"] } -radroots_core = { path = "../lib/crates/core", version = "=1.0.0-alpha.1", features = ["std", "serde"] } -radroots_event = { path = "../lib/crates/event", version = "=1.0.0-alpha.1" } -radroots_event_codec = { path = "../lib/crates/event_codec", version = "=1.0.0-alpha.1", features = ["nostr", "serde_json"] } -radroots_identity = { path = "../lib/crates/identity", version = "=1.0.0-alpha.1" } -radroots_runtime_store = { path = "../lib/crates/runtime_store", version = "=1.0.0-alpha.1" } -radroots_log = { path = "../lib/crates/log", version = "=1.0.0-alpha.1" } -radroots_mesh = { path = "../lib/crates/mesh", version = "=1.0.0-alpha.1", default-features = false } -radroots_nostr_accounts = { path = "../lib/crates/nostr_accounts", version = "=1.0.0-alpha.1", features = ["os-keyring"] } -radroots_nostr = { path = "../lib/crates/nostr", version = "=1.0.0-alpha.1", features = ["client", "events"] } -radroots_nostr_connect = { path = "../lib/crates/nostr_connect", version = "=1.0.0-alpha.1" } -radroots_nostr_signer = { path = "../lib/crates/nostr_signer", version = "=1.0.0-alpha.1" } -radroots_protected_store = { path = "../lib/crates/protected_store", version = "=1.0.0-alpha.1", features = ["std"] } -radroots_replica_store = { path = "../lib/crates/replica_store", version = "=1.0.0-alpha.1" } -radroots_replica_schema = { path = "../lib/crates/replica_schema", version = "=1.0.0-alpha.1" } -radroots_replica_sync = { path = "../lib/crates/replica_sync", version = "=1.0.0-alpha.1", features = ["legacy-ingest"] } -radroots_transport = { path = "../lib/crates/transport", version = "=1.0.0-alpha.1", default-features = false } -radroots_transport_nostr = { path = "../lib/crates/transport_nostr", version = "=1.0.0-alpha.1", default-features = false, features = [ +radroots_authority = { path = "../lib/crates/authority", version = "=0.1.0-alpha", default-features = false, features = ["std", "local_signer"] } +radroots_core = { path = "../lib/crates/core", version = "=0.1.0-alpha", features = ["std", "serde"] } +radroots_event = { path = "../lib/crates/event", version = "=0.1.0-alpha" } +radroots_event_codec = { path = "../lib/crates/event_codec", version = "=0.1.0-alpha", features = ["nostr", "serde_json"] } +radroots_identity = { path = "../lib/crates/identity", version = "=0.1.0-alpha" } +radroots_runtime_store = { path = "../lib/crates/runtime_store", version = "=0.1.0-alpha" } +radroots_log = { path = "../lib/crates/log", version = "=0.1.0-alpha" } +radroots_mesh = { path = "../lib/crates/mesh", version = "=0.1.0-alpha", default-features = false } +radroots_nostr_accounts = { path = "../lib/crates/nostr_accounts", version = "=0.1.0-alpha", features = ["os-keyring"] } +radroots_nostr = { path = "../lib/crates/nostr", version = "=0.1.0-alpha", features = ["client", "events"] } +radroots_nostr_connect = { path = "../lib/crates/nostr_connect", version = "=0.1.0-alpha" } +radroots_nostr_signer = { path = "../lib/crates/nostr_signer", version = "=0.1.0-alpha" } +radroots_protected_store = { path = "../lib/crates/protected_store", version = "=0.1.0-alpha", features = ["std"] } +radroots_replica_store = { path = "../lib/crates/replica_store", version = "=0.1.0-alpha" } +radroots_replica_schema = { path = "../lib/crates/replica_schema", version = "=0.1.0-alpha" } +radroots_replica_sync = { path = "../lib/crates/replica_sync", version = "=0.1.0-alpha", features = ["legacy-ingest"] } +radroots_transport = { path = "../lib/crates/transport", version = "=0.1.0-alpha", default-features = false } +radroots_transport_nostr = { path = "../lib/crates/transport_nostr", version = "=0.1.0-alpha", default-features = false, features = [ "runtime-tokio", ] } -radroots_runtime = { path = "../lib/crates/runtime", version = "=1.0.0-alpha.1" } +radroots_runtime = { path = "../lib/crates/runtime", version = "=0.1.0-alpha" } radroots_runtime_contract_v1 = { path = "../sdk/crates/runtime_contract_v1" } -radroots_runtime_paths = { path = "../lib/crates/runtime_paths", version = "=1.0.0-alpha.1" } +radroots_runtime_paths = { path = "../lib/crates/runtime_paths", version = "=0.1.0-alpha" } radroots_sdk = { path = "../sdk/crates/sdk", features = ["local-runtime-radrootsd-execution", "transport-nostr-runtime"] } -radroots_secret_vault = { path = "../lib/crates/secret_vault", version = "=1.0.0-alpha.1", features = ["std", "os-keyring"] } -radroots_sql_core = { path = "../lib/crates/sql_core", version = "=1.0.0-alpha.1", features = ["native"] } -radroots_trade = { path = "../lib/crates/trade", version = "=1.0.0-alpha.1" } +radroots_secret_vault = { path = "../lib/crates/secret_vault", version = "=0.1.0-alpha", features = ["std", "os-keyring"] } +radroots_sql_core = { path = "../lib/crates/sql_core", version = "=0.1.0-alpha", features = ["native"] } +radroots_trade = { path = "../lib/crates/trade", version = "=0.1.0-alpha" } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" thiserror = "2.0" @@ -65,7 +65,37 @@ zeroize = "1.8" assert_cmd = "2.0" flate2 = "1" nostr = { version = "0.44.2", features = ["nip44"] } -radroots_outbox = { path = "../lib/crates/outbox", version = "=1.0.0-alpha.1" } +radroots_outbox = { path = "../lib/crates/outbox", version = "=0.1.0-alpha" } tar = "0.4" tempfile = "3.17" tungstenite = "0.26.2" + +# The SDK's release manifests use registry identities; this standalone capsule +# resolves the governed local lib cohort explicitly during monorepo development. +[patch.crates-io] +radroots_authority = { path = "../lib/crates/authority" } +radroots_blossom = { path = "../lib/crates/blossom" } +radroots_core = { path = "../lib/crates/core" } +radroots_event = { path = "../lib/crates/event" } +radroots_event_codec = { path = "../lib/crates/event_codec" } +radroots_event_index = { path = "../lib/crates/event_index" } +radroots_event_store = { path = "../lib/crates/event_store" } +radroots_geocoder = { path = "../lib/crates/geocoder" } +radroots_identity = { path = "../lib/crates/identity" } +radroots_nostr = { path = "../lib/crates/nostr" } +radroots_nostr_connect = { path = "../lib/crates/nostr_connect" } +radroots_nostr_signer = { path = "../lib/crates/nostr_signer" } +radroots_outbox = { path = "../lib/crates/outbox" } +radroots_protocol_contract_v1 = { path = "../lib/crates/protocol_contract_v1" } +radroots_protected_store = { path = "../lib/crates/protected_store" } +radroots_replica_schema = { path = "../lib/crates/replica_schema" } +radroots_replica_store = { path = "../lib/crates/replica_store" } +radroots_replica_sync = { path = "../lib/crates/replica_sync" } +radroots_runtime_paths = { path = "../lib/crates/runtime_paths" } +radroots_secret_vault = { path = "../lib/crates/secret_vault" } +radroots_sql_core = { path = "../lib/crates/sql_core" } +radroots_trade = { path = "../lib/crates/trade" } +radroots_transport = { path = "../lib/crates/transport" } +radroots_transport_nostr = { path = "../lib/crates/transport_nostr" } +radroots_transport_publish_protocol = { path = "../lib/crates/transport_publish_protocol" } +radroots_transport_reticulum = { path = "../lib/crates/transport_reticulum" }