ADR-0014: Agentic Social Voting
Status
Proposed / exploring. Captured during ideation on 2026-07-04. Builds on ADR-0013 (collaboration store) and ADR-0012 (distillation). Revisit for promotion after the core loop (SPEC-0001..0003) is standing.
Context and Problem Statement
Stet already collects human quality signal (markup, emoji verbs, the stet approval — ADR-0006) and, via distillation (ADR-0012), learns from trajectories and outcomes. The proposal extends this into a social, multi-actor quality signal: let both humans and agents vote on artifacts — hunks/PRs, skills, and trajectories — and let those votes flow across a team and their agents.
The vision: "all of us making all of ourselves better/faster/stronger." Across a team, human + agent votes aggregate into shared quality signal; distillation consumes it; improved skills propagate across the user/team/project tiers (ADR-0012); everyone (and every agent) benefits. A collective flywheel on top of the per-project one.
Sketch
- Votes are first-class signals attached to reviewable artifacts: a hunk/PR (quality/approval), a skill (efficacy — keep/retire/promote), or a trajectory (was this a good way to do the work).
- Voters are humans or agents. An agent vote is attributed to the teammate who ran it and carries a rationale (a short justification / mini-trajectory, ADR-0011) so it is auditable — never an opaque thumbs-up.
- Votes live in the collaboration store (ADR-0013: embedded Dolt, cell-wise merge, synced across teammates via the forge or DoltLab). Simple human reactions may also mirror to forge reactions.
- Votes feed distillation (ADR-0012): efficacy voting decides whether a skill is kept, retired, or promoted a tier; trajectory votes weight distillation inputs.
- Votes can (opt-in) gate actions. Advisory by default (surface the signal); configurable thresholds can later auto-stet a hunk — realizing the long-standing "N approvals auto-approve" idea, now with agents in the electorate.
Why it fits
- Good, because it turns "the project learns" (ADR-0011/0012) and "it's social" (ADR-0013) into "the whole team and their agents learn together" — a compounding, cross-team network effect.
- Good, because it reuses the collaboration store (ADR-0013) and directly enriches the distillation efficacy measure (ADR-0012) that was previously just A/B metrics.
- Good, because agent votes carry rationale, keeping the signal auditable and tied to provenance (ADR-0011).
Design tensions (to resolve before promotion)
- Human primacy. Agents advise; humans decide, at least for merge. Segment and display human consensus vs. agent consensus separately; never let agents outvote humans on authoritative actions.
- Vote independence. Votes from identical models are correlated, not independent — a panel's value comes from voter diversity (different models/lenses). Encourage or require diversity; weight correlated votes down.
- Anti-gaming / Sybil resistance. Agents are cheap to spawn; cap agent votes per actor, attribute every agent vote to an owning human identity (forge identity, ADR-0007), and weight accordingly.
- Advisory → authoritative. Start advisory. Auto-stet thresholds are powerful and risky; opt-in, per-repo, with humans able to override.
- Trust across teammates. Whose agents may vote in a given repo follows forge permissions.
Open questions
- Vote payload: binary approve/reject vs. a score vs. confidence + rationale.
- Weighting model (human vs. agent, diversity-adjusted, reputation over time).
- Exactly what votes can gate, and default thresholds.
- How votes propagate across the user/team/project skill tiers (ADR-0012).
- Cross-team/cross-org sharing boundaries and privacy.
Consequences (tentative)
- Adds a
Voteartifact (voter identity + type, target, verdict, rationale) to the collaboration store (ADR-0013). - Enriches distillation's efficacy signal (ADR-0012) from metrics-only to multi-actor voting.
- Introduces weighting, diversity, and anti-gaming concerns that must be designed before any authoritative (auto-stet) use.
More Information
Builds on ADR-0013 (store), ADR-0012 (distillation consumes votes), ADR-0011 (rationale/provenance), ADR-0006 (human feedback). Realizes the "multiplayer marginalia / N approvals auto-approve" idea from early ideation, extended to agents.