[architecture] Project Hour Budgets and Time Tracking

Task 4579 · Done · Architecture · created · updated

_Automatically composed from the parent epic at dispatch time._

Outcome

Budgets follow the hourly-rate pattern and sit on byProjectRows; one budgetStatus function produces every string. Split: C1 model/tokens/key → C2 Timesheet (stacked at ≤900px) ∥ C3 Reports progress list. Spec gate passed on round 2.

Artifacts

Activity

  • Ready
  • Runner started
  • Runner ended (done)