Create a Tasks Excel Table with the requested columns and a unique TaskID that never changes when a task moves. Use controlled lists for Owner, Priority, Status, and IsMilestone. Validate that Done requires CompletedDate, Blocked requires BlockerReason and NextReviewDate, and DependencyTaskID exists in Tasks. Keep Status user-entered; add a formula-derived Health column.
Health logic: if Status is Done or Cancelled, return Closed; if DueDate is blank, return Review; if DueDate<TODAY(), return Overdue; if DueDate<=TODAY()+3, return Due soon; if Status is Blocked, return Blocked; otherwise return On track. Put Blocked before date tests instead if the team wants blockers to dominate. Add DaysPastDue only for open overdue work and do not calculate percent complete from calendar time.
Build PivotTables by ProjectID and Owner showing open, overdue, due-soon, blocked, and completed counts; list overdue high-priority tasks rather than hiding them in totals. Add a Milestones view sorted by DueDate. Each Tuesday, append ProjectID, TaskID, Status, DueDate, Health, Owner, and SnapshotDate to a History table so deadline changes remain visible. Wednesday checks: duplicate IDs, missing owners or dates, invalid dependencies, stale LastUpdated, blocked items without review dates, and summary counts reconciled to filtered task rows.