commit 22e9c3327c8220a1d37106d32607bee17d7dc250
parent ed4a837381b0c974754785704d86f3bcd53e2399
Author: triesap <tyson@radroots.org>
Date: Sun, 14 Jun 2026 13:27:30 -0700
trade: document listing v1 wire posture
- describe stable Listing v1 kind usage in draft code
- document public and draft address intent
- clarify unsupported archive mutation posture
- verify trade checks and tests with all features
Diffstat:
2 files changed, 13 insertions(+), 0 deletions(-)
diff --git a/crates/trade/src/listing/draft.rs b/crates/trade/src/listing/draft.rs
@@ -1,3 +1,10 @@
+//! Canonicalization for Radroots Listing v1 drafts.
+//!
+//! Listing v1 keeps the public NIP-99 listing kind and the private draft kind
+//! stable while Radroots owns the JSON content contract. Canonical drafts derive
+//! both addresses from the same seller pubkey and d-tag: the public address is
+//! for publish or update intent, and the draft address is for save-draft intent.
+
#![forbid(unsafe_code)]
#[cfg(not(feature = "std"))]
diff --git a/crates/trade/src/listing/mutation.rs b/crates/trade/src/listing/mutation.rs
@@ -1,3 +1,9 @@
+//! Mutation draft preparation for Radroots Listing v1.
+//!
+//! Publish and update produce the stable public listing event, save-draft
+//! produces the stable listing-draft event, and archive remains unsupported
+//! because Listing v1 has no archive wire event.
+
#![forbid(unsafe_code)]
#[cfg(all(feature = "serde_json", not(feature = "std")))]