docs/research/sota-2026-05-22/ticks/tick-22.md
Thread: ADR-107 (cross-installation federation with secure aggregation) Verdict: Closes the privacy + federation chain explicitly deferred from ADR-105 + ADR-106. The full chain R6 → R3 → R14 → R15 → ADR-105 → ADR-106 → ADR-107 now has a formal guarantee at every layer.
docs/adr/ADR-107-cross-installation-federation.md — full ADR draft. Direct extension of ADR-105 + ADR-106.| Layer | Mechanism | Defends against |
|---|---|---|
| 1–3 (ADR-106) | Primitive isolation + grad clipping + DP noise | Local member inference, biometric exfiltration |
| 4 NEW | Secure Aggregation (Bonawitz 2016) | Cross-installation aggregator sees only sum |
| 5 NEW | Per-installation embedding-space rotation key | Cross-installation re-identification (R3 binding) |
With N installations each at σ_local = 1.0:
Cross-installation federation actually IMPROVES privacy through the amplification effect, as long as the cryptographic protocol is implemented correctly.
Per round, 10 installations: ~2 MB/installation. Monthly cadence: 70-200 MB/month/installation total (within + cross-installation). <0.1% of home broadband.
Additive on prior ADRs:
| ADR | LOC |
|---|---|
| ADR-105 (federation) | 500 |
| ADR-106 (DP-SGD + isolation) | +300 |
| ADR-107 (cross-installation) | +530 |
Total ruview-fed budget | ~1,330 LOC, ~6 weeks |
The research loop has produced 7 layers, each with a formal guarantee:
No remaining unspecified privacy gap. Cross-installation training can ship without violating any constraint surfaced by the loop.
Every threat row has a mitigation layer. Member inference (cross-installation) → Layer 3 + cross-installation DP composition. Cross-installation re-ID → Layer 5 rotation key. Sybil → Layer 4 dropout + Krum + N ≥ 5.
Quantum-resistant DH = out-of-scope future ADR-108; Kyber substitution is mechanical.
cog-wildlife is high-value cross-installation, cog-maritime-watch is per-vesselticks/tick-22.md. No PROGRESS.md edit. Branch research/sota-adr107-cross-install-federation.
~3.6h to cron stop. 22 ticks landed. The loop has covered: