in reviewhumanPR #58Coordination
srcJin: Problem #10 — ResonanceBFT, pentadic partition-tolerant BFT consensus for social agent networks
Layer: coordination
Description
The pitch.
# ResonanceBFT — Pentadic BFT Consensus for Social Agent Networks **Layer**: `coordination` **Plugin name**: `resonance_bft` **Problem**: #10 — Partition-tolerant BFT consensus **Persona**: cognitive-social-computing researcher — someone who came to distributed consensus from multi-agent social simulation, not from distributed databases. The question "did we agree?" is not a bit-level question when the agents are social and goal-directed; it is simultaneously semantic, affective, relational, epistemic, and behavioral. > **How to read this.** The document goes shallow-to-deep: **Overview** (the shape and the one load-bearing invariant) → **The commit certificate** (the L1 safety core) → **Deliberation, authenticity & robustness** (the L2/L3 mechanisms) → **Evidence & verification** → **Appendix** (fine-grained detail, referenced from the body). A new reader can stop after the first two parts and still have the whole thesis. <details open markdown="1"> <summary><b>Contents</b> — outline & navigation</summary> 1. **[Overview](#overview)** [TL;DR](#tldr) · [Claims → evidence](#claims--evidence) · [Motivation](#motivation) · [Architecture](#architecture--how-the-pieces-fit) · [How consensus is reached](#how-consensus-is-reached--one-agent-many-agents-and-the-space) 2. **[The commit certificate — L1 safety](#the-commit-certificate--l1-safety)** [Quorum = n − f](#quorum-formula-quorum_needed--n--f-not-2f1) · [Weighted pentadic quorum](#weighted-pentadic-quorum-anti-dimensionality-domination) · [Sealed commitments](#sealed-commitments-tamper-evidence-for-the-belief-axes) · [Resolver-independent commit + box-validity](#bft-agreement-the-commit-certificate-is-resolver-independent) 3. **[Deliberation, authenticity & robustness — L2 / L3](#deliberation-authenticity--robustness--l2--l3)** [Deliberation (Hegselmann-Krause)](#deliberation-hegselmann-krause-with-per-axis-trust-and-per-dyad-ε) · [Trajectory classification](#trajectory-classification-9-types) · [Time-decayed dyadic trust](#time-decayed-dyadic-trust-with-per-axis-overlay) · [Byzantine centroid dampening](#non-obvious-invariant-byzantine-centroid-dampening-pre-detection) · [Cold-start](#cold-start-integrating-a-new-agent-without-an-isolation-spiral-or-a-byzantine-hole) · [Sybil guard & view-change](#sybil-guard--view-change) · [Adaptation, observability & replay](#adaptation-observability--replay-long-horizon-detail--appendix) 4. **[Tradeoffs, evidence & verification](#tradeoffs-evidence--verification)** [Tradeoffs](#tradeoffs) · [End-to-end through the town runner](#end-to-end-consensus-actually-driven-through-the-town-runner) · [Real-LLM town evidence](#real-llm-town-evidence-actual-agents-real-models-across-four-subscription-backends) · [Verification](#verification) · [Safety proof sketch](#safety-proof-sketch-n7-f2) 5. **[Appendix](#appendix)** [A · Package structure](#appendix-a-package-structure) · [B · Observability report](#appendix-b-observability-report) · [C · snapshot / restore](#appendix-c-truststore-snapshot-and-restore) · [D · Three-timescale weights](#appendix-d-three-timescale-adaptive-weights) · [E · Edge cases](#appendix-e-edge-cases-handled-explicitly) · [F · Invariants](#appendix-f-invariants-verified-by-tests) · [G · Related systems](#appendix-g-related-systems--where-resonancebft-is-novel) · [H · Academic context](#appendix-h-academic-context) </details> --- ## Overview ### TL;DR **ResonanceBFT** is a partition-tolerant BFT consensus plugin for NANDA Town (problem #10). Agents agree not on a single value but on a **five-axis belief vector** (semantic · affective · relational · epistemic · behavioral). A **deterministic `n − f` commit core** (L1) owns safety; a social-science **audit** (L2) and **three-timescale adaptation** (L3) sit on top but **never alter the commit**. LLM nondeterminism is sealed at `participate()`, so the commit is a resolver-independent function of the sealed vectors. **Novel:** agreement ov …
Try it
Open PR on GitHubView diffCheckout locally
git fetch origin pull/58/head:pr-58
git checkout pr-58