Features that span across multiple surfaces (Backend, Frontend, Smart Contracts, Infrastructure) require a rigorous Definition of Done to ensure complete, secure, and maintainable delivery.
Use this checklist before marking a multi-surface feature as "Done". All reviews and approvals must adhere to the Code Review and Approval Standards.
- Code is fully implemented and peer-reviewed by at least two core maintainers.
- 100% Unit test coverage achieved.
- Fuzzing and invariant tests implemented and passing.
- Slither / Static analysis run and all findings addressed or documented.
- Gas optimization report generated and regressions justified.
- Contract deployed to testnet and addresses documented.
- API endpoints implemented and matching the agreed-upon OpenAPI spec.
- Database migrations created, tested (up/down), and reviewed.
- Unit and Integration tests written and passing.
- Logging (with correlation IDs) and metrics implemented for new flows.
- Rate limiting and security constraints applied.
- UI components implemented matching Figma designs.
- State management handles loading, success, and error states gracefully.
- E2E tests (Playwright/Cypress) written for the happy path of the new feature.
- Feature is responsive across mobile and desktop breakpoints.
- Web3 integration handles wallet disconnects, network switching, and pending transactions.
- User-facing documentation/guides updated.
- API documentation (Swagger/Postman) updated.
- Runbooks and incident response procedures updated (if infra/ops changed).
- Architecture diagrams updated (if new services/components added).
- Threat modeling considered for the holistic feature.
- Alerts and dashboards created for new critical metrics (e.g., failure rates).
- Feature flagged appropriately (if using gradual rollout).
- All changes meet the non-functional requirement baselines (
docs/NFR_BASELINES.md) for SLO, RTO, and RPO.
- Cross-repo integration tests passing in the staging environment.
- Deployment checklist completed —
docs/DEPLOYMENT_CHECKLIST.mdfilled out and signed off for target environment (testnet/mainnet). - Rollback plan documented — specific rollback steps for the deployment.
- PR descriptions clearly link to all related PRs across different repositories.