Containers for tasks with health + portfolio rollups.
Every task belongs to a project. Projects carry status, owner, start + end dates, and are the natural join point for board columns, workload, health scoring, and portfolios.