{"service":"pow-attest","version":"0.2.0","description":"PoW-gated Schnorr attestation oracle. Dead man's switch and conditional release. Register a switch, prove you're alive by signing per-10-min-bucket messages with your Schnorr key, and the oracle auto-signs a DEAD attestation when you miss a deadline. Verifiable months later against oracle_pubkey via BIP-340.","oracle_pubkey":"2bc78390c94d8bbb96ac3e6940462ba2812418d871e701c1a845fdb1dfd4a0e5","attestation_tag":"DLC/oracle/attestation/v0","pow":{"difficulty":18,"algo":"sha256","encoding":"hashcash"},"checkin":{"sig_algo":"BIP-340 schnorr","bucket_seconds":600,"message":"sha256(switch_id || str(bucket_ts))"},"endpoints":[{"path":"/api/v1/info","method":"GET","desc":"this manifest"},{"path":"/api/v1/switch/challenge","method":"GET","desc":"free PoW challenge issue"},{"path":"/api/v1/switch","method":"POST","desc":"register switch (PoW-gated)"},{"path":"/api/v1/switch/:id/checkin","method":"POST","desc":"prove alive (Schnorr-gated)"},{"path":"/api/v1/switch/:id","method":"GET","desc":"read current attestation"},{"path":"/api/v1/bounty","method":"POST","desc":"register bug bounty (PoW-gated)"},{"path":"/api/v1/bounty/:id/announcement","method":"GET","desc":"DLC oracle announcement — nonce, pubkey, outcome hash for CET adaptor signing (JSON)"},{"path":"/api/v1/bounty/:id/announcement.tlv","method":"GET","desc":"OracleAnnouncement binary TLV (dlcspecs type 55332) for dlcdevkit / rust-dlc integration"},{"path":"/api/v1/bounty/:id/attestation.tlv","method":"GET","desc":"OracleAttestation binary TLV (dlcspecs type 55400) — only available after RELEASED"},{"path":"/api/v1/bounty/:id/status","method":"GET","desc":"check condition + sign RELEASED if met"},{"path":"/api/v1/bounty/:id","method":"GET","desc":"read bounty record (no condition check)"}]}