Commit e13cd4e
docs: apply 24 review fixes to routing table design spec
CRITICAL fixes:
- C1: Gate routing-neighborhood swaps on target-bucket capacity
- C2: Prohibit stale revalidation re-entry (prevents recursion)
- C3: Precisely enumerate post-revalidation re-evaluation scope (steps 4+8)
- C4: Require event subscription mechanism in Consumer API
- C5: Mandate live trust score query at transport auth time
HIGH fixes:
- H1,H2,H4: Document eclipse, Sybil, subnet risks in Logic-Risk Checklist
- H3: Add auto re-bootstrap when routing table depleted (new Section 10.3)
- H5: Add all_peers(), trigger_self_lookup(), routing_table_stats() to API
- H7: Check ALL IP addresses for diversity, not just primary
- H8: Trust score reads must occur under RT write lock (Invariant 10)
- H9,H10: Document staleness bound and sparse lookup termination
MEDIUM fixes:
- M1: Document K_BUCKET_SIZE < 4 as degenerate
- M2: Tighten IPv6 subnet mask from /64 to /48
- M3: Simplify bootstrap to match Kademlia industry pattern
- M4: Per-bucket revalidation lock prevents duplicate pings
- M5: Document eventual consistency for local lookups
- M6: Recommend monotonic clock for last_seen
- M7: Cancel in-flight RPCs on eviction (step 2a)
- M8: Note trust record GC as implementation concern
- M9-M11: Add 3 missing tests (loopback injection, response truncation,
KClosestPeersChanged emission)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>1 parent 7ef779b commit e13cd4e
1 file changed
Lines changed: 74 additions & 19 deletions
0 commit comments