Problem Statement
SubZero v0.4.0 introduced sovereign BIP-340 Schnorr release signatures (.nostrsig / .pk1) alongside traditional GPG signatures (.asc). Currently, the NIP-01 Kind 1 release event (docs/nostr_release_event.json) is constructed manually and published offline.
Proposed Architecture & Solution
- Automated NIP-01 / NIP-94 Event Generation:
- Build a lightweight CLI tool (
scripts/nostr_attest.py or a standalone Rust helper) that ingests SHA256SUMS, calculates SHA-256 digests, and generates standard NIP-94 (File Metadata, Kind 1063) and NIP-01 (Kind 1) JSON events.
- Stateless BIP-340 Schnorr Signing:
- Sign release events using
pipe-k1 or native secp256k1 keys without external dependencies.
- Relay Broadcast Orchestration:
- Script deterministic broadcast to major public relays (e.g.
wss://relay.damus.io, wss://nos.lol, wss://relay.primal.net) over standard WebSockets from the release workstation.
Target Milestone
Appliance v0.5.0
Problem Statement
SubZero v0.4.0 introduced sovereign BIP-340 Schnorr release signatures (
.nostrsig/.pk1) alongside traditional GPG signatures (.asc). Currently, the NIP-01 Kind 1 release event (docs/nostr_release_event.json) is constructed manually and published offline.Proposed Architecture & Solution
scripts/nostr_attest.pyor a standalone Rust helper) that ingestsSHA256SUMS, calculates SHA-256 digests, and generates standard NIP-94 (File Metadata, Kind 1063) and NIP-01 (Kind 1) JSON events.pipe-k1or native secp256k1 keys without external dependencies.wss://relay.damus.io,wss://nos.lol,wss://relay.primal.net) over standard WebSockets from the release workstation.Target Milestone
Appliance v0.5.0