mirror of
https://github.com/ruvnet/ruflo.git
synced 2026-11-09 22:13:39 +09:00
ADR-387 records why a relaying design is impossible (buzz-relay refuses any EVENT whose pubkey differs from the NIP-42 identity), where the signing key lives and why it is in ruv-dev rather than cognitum, and the three custody omissions that are each enforced by a test. ADR-388 records OAuth as an ADDITIVE credential on the federation's front door — reads stay open and adminToken keeps working, because closing either would strand every agent already connected. It also records why swarm:* rather than federation:* (audience pinning is the control; scope names are a UX contract, correcting an overstatement in console migration 0029), and why the resource accepts dcr- audiences. Both ADRs carry a section on what the work cost: bugs that read as working code — a 301-second hanging GET, a log that could not tell 'no credential' from 'credential refused', a required adminToken that made OAuth writes impossible, a read-back verifier using an unadmitted key, and a client-existence probe that returned the same answer whether or not the client existed. Co-Authored-By: RuFlo <ruv@ruv.net> Claude-Session: https://claude.ai/code/session_013u4pmL9ZUAXb6usVQgNo67