Definition of Done
The shared bar a story has to clear before it leaves a sprint. Verified by someone other than the implementer, tests at the right level, deployed and observable, ticket closed with what actually shipped.
Users stay signed in across tab reloads
Users stay signed in across tab reloads
Author-self-closes plus 'code merged' is the minimum bar that lets work skip QA, deploy verification, and the metric check. Two of those three will go wrong if nobody checks them.
Done means verified by someone other than the implementer, deployed, and observable. The closing comment names the verifier, the environments, the deploy, and a real metric the work moved.
Activity feed prepends new items in real time
Activity feed prepends new items in real time
Snapshot tests passing only means the rendered HTML did not change. They do not exercise the WebSocket path or the scroll-position rule the story committed to. The next refactor will silently regress.
Tests at the appropriate level for what shipped. The next person who touches the prepend logic will know if they broke the scroll-position behavior, which was the actual user-facing concern.
Customer downloads invoice as PDF
Customer downloads invoice as PDF
Closing on merge alone hides the deploy gap. If the change sat in a branch waiting on a release window, or rolled out only to a staging tier, nobody on the board can tell. Production reality and the board diverge silently.
'Merged' is a halfway point. Done means deployed to the target environment and observable in metrics. The dashboard line confirms the feature is reaching users and the path the change took through the system actually works.
API supports filtering by created-after timestamp
API supports filtering by created-after timestamp
'Will write up the docs later' is a debt that grows. The next change will compound it; the team that depends on the API will keep filing 'how do I use this?' tickets; eventually someone has to spend a sprint catching docs up.
Done includes the documentation that consumers depend on. For an API change, the OpenAPI spec, the partner portal, and the SDK changelog are part of the contract. Without them, the work landed but partners still cannot use it.
Managers export team reports as CSV
Managers export team reports as CSV
'Done' alone tells you nothing when scope changed mid-sprint. The next sprint planning will rediscover the descoped pieces from scratch, possibly twice.
Stories drift. The right closing comment names what shipped, what was descoped, and where the descoped work lives now. Anyone reading the ticket later can reconstruct the decision without asking the team.