Skip to main content

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 Vote artifact (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.