The full protocol reference. For quick answers, see the FAQ instead.
Taskify is an on-chain bounty board on Mezo. Owners post tasks and lock MUSD (or MEZO) in escrow, contributors apply and get paid on approval, and Patrons fund a shared grant pool and vote on which grant-funded tasks get built.
Every step that matters — escrow, experience gating, payout, voting weight — is enforced by the Taskify smart contract itself, not by a central party. Nobody, including the Taskify team, can move escrowed funds outside the paths the contract allows.
Every task is one of two kinds, chosen at creation and fixed for its lifetime:
maxWinners addresses; the escrow splits evenly between them in one transaction.Development tasks can be funded one of two ways:
Community tasks are always self-funded (3%) — grant-funded Community tasks aren't supported yet.
Every fee splits the same way: 60% to the protocol treasury, 40% into the current wave pool.
A task moves through a fixed set of on-chain statuses. The exact path depends on how it's funded and what kind it is:
Development, self-funded:
Open → Assigned → In Progress → Submitted → Payment Released
(Open can also go to Cancelled or Expired; Submitted can go back to Open via a rejected submission.)
Development, grant-funded:
Grant Pending → (vote) → Open → Assigned → In Progress → Submitted → Payment Released
(Grant Pending resolves to either Open, on approval, or Grant Rejected.)
Community:
Open → Payment Released (via selectWinners, once)
(Open can also go to Cancelled or Expired before any winners are picked.)
A creator can cancela self-funded task before it's assigned, refunded minus the fee. Anyone can call markExpiredon a task past its deadline that hasn't reached Submitted — this never touches work that's already been delivered or a grant proposal that was never funded.
Contributors declare a tier at registration (self-attested, changeable once a day). Development tasks set a minimum and maximum tier at creation — the contract checks the match on-chain when a contributor calls applyForTask, not just in the UI.
| Tier | Experience |
|---|---|
| Newcomer | 0 – 1 year |
| Junior | 1 – 2 years |
| Mid-level | 2 – 3 years |
| Senior | 3 – 5 years |
| Expert | 5+ years |
Community tasks skip the experience gate entirely — anyone registered can join.
Taskify doesn't custody anything for governance. Voting weight is read live from your veBTC position on Mezo Earn — lock BTC there to mint veBTC, and pair it with a veMEZO lock via Mezo's Matching Market to boost weight up to 5x. It's completely decoupled from MUSD deposits: depositing into the pool funds grants and earns Patron tiers, but grants no votes on its own.
Each grant proposal opens a 3-day voting window and fixes a snapshot — both the timestamp and the veBTC contract address — the moment it opens. Locking veBTC after a vote has started doesn't let you swing it, and the snapshot can't be affected by a later change to which contract Taskify reads from.
A proposal passes at 70% support of cast weight. Grant voting is currently in an invite-only pilot: holding real veBTC weight is necessary but not sufficient — only wallets the project owner has explicitly approved can cast a vote. Reach out via @taskifyhq if you hold veBTC and want to be considered.
Any registered wallet can deposit MUSD into the shared grant pool (minimum 50 MUSD), independent of role or voting status. Cumulative deposits unlock a tier:
| Tier | Total deposited |
|---|---|
| Bronze | 100+ MUSD |
| Silver | 500+ MUSD |
| Gold | 1,000+ MUSD |
| Diamond | 5,000+ MUSD |
Separately, every self-funded task's fee sends 40% into a rolling wavepool. Every 30 days, the wave closes and that pool splits among the wave's self-funded creators, proportional to how many tasks each one posted — a small ongoing incentive for creators who keep the board active. Grant-funded tasks contribute fees to the wave pool too, but don't count toward any creator's share.
Funds move only through the Taskify contract: MUSD or MEZO locks in at task creation and only leaves escrow when the Owner approves submitted work, a task is cancelled before assignment, or a task expires past its deadline. There's no custodial intermediary holding funds at any point, and Taskify only ever requests an approval for the exact amount about to be escrowed — never unlimited.
For wallet setup and phishing-safety guidance, see the Wallet safety section of the FAQ.