The dashboard widget was filtering with a broken filter=status!=done query param that the list API never interpreted, so completed tasks could appear. Add a status= todo,in_progress filter to GET /api/tasks and update the widget to use it (also fix domain badge to use domainId).