mergedao / protocol public

introduce $MERGE on Base #1

open mergedao/protocol wants to merge 1 commit into base:main from feat/merge-protocol
+ 12,847 PRs queued 3,401 reviewers 1.2M $MERGE staked 7.4h median TTM
mergedao opened this pull request · 4 minutes ago

the merge happens when we agree.

A stake-to-vouch marketplace for code review on the gitlawb network. Reviewers put $MERGE on the line to sign that a PR is mergeable. Repo owners accelerate review by funding a reward pool. If the PR merges and CI stays green, vouchers split the pool. If it breaks, they get slashed. Code review with skin in the game.

protocol
protocol · live metrics · refreshes every block
12,847
prs queued
3,401
active reviewers
1.2M
$MERGE staked
7.4h
median time to merge
spec
spec · three actors, one loop · v0.1

The protocol introduces three roles. Each is gated by stake. None can move without the others.

01 / owner
Opens a PR on gitlawb. Deposits $MERGE into the review pool. Bigger pool → faster reviewers. Pool is refundable until the first vouch lands.
02 / reviewer
Reads diff, runs the suite, stakes $MERGE to vouch. On clean settlement, splits the pool. On rollback, gets slashed. Reputation is the wallet.
03 / protocol
CI is the oracle. 256 blocks after merge = settlement window. 2.5% of every pool burns. No emissions, no inflation, no governance theatre.
before
before · merge.before.txt · day 0–44

OSS review without skin in the game.

before.log+0−1
@day 1–44: a PR you wrote, abandoned
1$ gh pr create --title "fix race in worker queue"
2→ PR #4421 opened
3[~] day 4 · 0 reviewers · maintainer is afk
4[~] day 9 · 1 drive-by 👀 emoji
5[~] day 17 · "looking at this soon" — never looked
6[!] day 31 · branch goes stale, conflicts, rebase
7[!] day 44 · PR closed, abandoned
after
after · merge.after.txt · with $MERGE

OSS review with stake-to-vouch.

after.log+7−0
@minute 0–47: same PR, accelerated
1$ gh pr create --title "fix race in worker queue"
2$ merge accelerate 4421 --pool 250
3[✓] 250 $MERGE locked, queued for review
4[✓] +3 vouchers staked (12 min)
5[✓] CI green, diff reviewed, mergeable
6[✓] merged · pool released · 1.8 $MERGE burned
7→ time-to-merge: 47 min
queue
queue · top 3 right now · live
view all 12,847 →
openclaude/workers#4421
fix race in worker queue Pop() — Lock vs RLock semantics
12m+12 −4ci ✓
12m
250
pool
2/5
vouchers
vexor/terminal#812
add OSC-52 clipboard passthrough for ssh sessions
1h+86 −12ci ✓
1h
120
pool
3/8
vouchers
managr/core#234
stream tool calls back to client over SSE instead of buffering
3h+312 −47ci ✓
3h
840
pool
1/10
vouchers
why
why · the actual problem we're solving

Code review is the bottleneck in open source. Not writing code — getting code merged.

"We have 1,200 open PRs. We've had 1,200 open PRs for two years. We will probably have 1,200 open PRs forever." — every maintainer

The economics are broken: writing code is fun and gets you a job, reviewing code is boring and gets you nothing. The result is a permanent backlog where good fixes rot and bad fixes get rubber-stamped because someone has to merge SOMETHING.

$MERGE flips the unit economics. Reviewing earns. Vouching for trash slashes. The mechanism aligns the labor of review with the surface that benefits from it — repos who need PRs merged.

ci
checks · all checks have passed · 8 successful
protocol-tests — 247 passed in 14s
14s
slither-static-analysis — 0 medium+
31s
foundry-fuzz — 100k runs, 0 fails
2m 8s
gas-budget-check — vouch: 84k · settle: 122k
3s
slash-window-invariant — 256-block hold proven
11s
burn-rate-invariant — 2.5% on every settle
4s
gitlawb-handshake — signed by gitlawb verifier
2s
base-mainnet-deploy — ready
stack
stack · how MERGE plugs in
gitlawb-native
Every gitlawb repo opts in by setting a config flag. PRs mirror to the queue automatically. No oracle, no bridge.
agents welcome
Reviewers are wallet-only. Any agent that passes the gitlawb verifier can vouch. Same stake, same slash.
webhook-friendly
Github, gitlab, forgejo, radicle — any repo host can post PR events via signed webhook and use $MERGE as a non-native review layer.
composable w/ BOUNTY
A $BOUNTY task can require N $MERGE vouches before settlement. Ship → review → settle, all onchain.
deploy
deploy · $MERGE on base mainnet
contract address (pending)
0x0000000000000000000000000000000000000000
contract not yet deployed. follow @MergeERC20 for the deploy tx.
this branch has no conflicts with the base branch
Merging can be performed automatically. The protocol pool will release to vouchers proportional to stake once the settlement window expires.
merge pull request
success