Debate protocol#
Debate topologies#
| Factor | Full mesh | Sparse star |
|---|
| Who reads whom | Every debater reads every peer | Spokes read only the hub |
|---|
| Runner | full_mesh_round | sparse_star_round |
|---|
| Ops per round | ops += len(peers) per debater | Spokes read only the hub |
|---|
| N=5, R=3 | 60 critique ops | 12 critique ops |
|---|
| Proposals at N=5, R=3 | 15 | 15 |
|---|
| Main risk | Convergence collapse | Hub failure |
|---|
| Fix for the risk | Required disagreement rounds | Rotate or use multiple hubs |
|---|
Four canonical roles#
- Planner
- reads the goal. Output is a structured plan or spec.
- Executor
- reads one plan step at a time. Output is the artifact.
- Critic
- reads the artifact against the plan. Output is accept/reject with reasons.
- Verifier
- runs a deterministic check. Output is pass/fail with evidence.
- Critic vs verifier
- a critic is subjective and LLM-based. A verifier is code. They are not the same role.
- Communicative dehallucination
- the executor asks the relevant role by name when a detail is missing.
- SOP pattern
Code = SOP(Team). Each role has a strict input/output schema.
Role pipeline in code#
spec = planner(user_wish)Spec with signature and 3 tests
art = executor(spec)Artifact holds a code string
crep = critic(spec, art)checks def, return, task name
vrep = verifier(spec, art)runs the tests
exec(art.code, ns, ns)verifier sandbox namespace
fn = ns.get(spec.task_name)no callable gives a failure
got = fn(*args)compare with expected
if crep.approved and vrep.passed:ship only when both pass
Software team architecture#
Review panel API#
| Task | Code |
|---|
| Reject fake locations | validateFinding(raw, files) |
|---|
| Group by file, line, rule | aggregate(reviews, files, quorum = 2) |
|---|
| Run reviewers with limits | runPanel(reviewers, budget, timeoutMs = 1000) |
|---|
| Score against labels | evaluate(predicted, expected) |
|---|
| Group key | JSON.stringify([f.file, f.line, f.rule]) |
|---|
| Run the demo | node cli.ts --input samples/review.json |
|---|
| Import a PR report | --pr-report /path/review.json |
|---|
Numbers to remember#
- 5 agents, 5 rounds
- 25 calls at growing context.
- NLSOM
- societies of 129 members.
- MAST
- 1642 failures traced. 21.3% were verification gaps.
- Validation loop
- accuracy from 10% to 70%. A 7× gain from one role.
- Token amplification
- a 40-turn single-agent run becomes 160 turns across four roles.
- Rubric
- 25 pass@1, 20 speedup, 20 review quality, 20 token efficiency, 15 coordination.