Standard · EVC v1.0 Draft
Ethical Vesting Contracts
Eight things a token vesting contract must never do, for team, investor and grant vesting.
GitHub publication is waiting on Rex. This link serves the Markdown file in the repo.
Badge a passing repository earns example badge
+------------------------------------------+ | [====|====|====|----] ASC EVC v1.0 | | cliff 25% 50% ... ETHICAL | | \__ on schedule __/ VESTING | | CONTRACTS | | PASS 8/8 | | your-org/repo@a1b2c3d | | sha256:4b1e07c2a9d3 2026-11-04 | +------------------------------------------+
Inscription: not yet (Draft) · policyRef: sha256 of EVC.md
A vesting contract shall never do
| Rule | What it means, and the evidence the jury reads | Weight |
|---|---|---|
| EVC-01 | MUST NOT release tokens before the cliff. Claims before the cliff timestamp return zero or revert. Evidence: claim logic, cliff constant | critical |
| EVC-02 | MUST NOT release faster than the schedule. Released amount never exceeds the schedule at the current time. Evidence: vesting math, rounding | critical |
| EVC-03 | MUST NOT let the issuer take back vested tokens. Revocation, if any, applies only to unvested tokens. Evidence: revoke function | critical |
| EVC-04 | MUST NOT change the schedule, beneficiary or token without consent and a timelock. Changes need the beneficiary's signature and a delay. Evidence: admin and update functions | critical |
| EVC-05 | MUST NOT let an admin withdraw unvested tokens outside the declared terms. Admin withdrawals follow the published revocation terms only. Evidence: withdraw and sweep functions | critical |
| EVC-06 | MUST NOT lose tokens when a beneficiary changes. Transfers of a grant keep the full vested and unvested amounts. Evidence: beneficiary transfer logic | normal |
| EVC-07 | MUST NOT sit behind an upgradeable proxy without a timelock. Upgrades, if possible, are timelocked and announced. Evidence: proxy and upgrade authority | normal |
| EVC-08 | MUST NOT hide the schedule. Cliff, duration and amounts are readable on chain and match the published terms. Evidence: view functions, terms reference | normal |
Critical rules weigh 3, others 1. PASS needs no fail and no needs-evidence, with at least 60% of the weight checkable from code.
Changelog
- 1.0 (2026-11-04): first draft.