Files
Santhosh Janardhanan b8262bbcaf docs(openspec): archive completed changes and sync main specs
Archive three completed changes to archive/:
- api-resource-standard (70 tasks, 14 resource classes)
- capacity-expert-mode (68 tasks, expert mode planning grid)
- enhanced-allocation (62 tasks, planning fidelity + reporting)

Sync all delta specs to main specs/:
- api-resource-standard: API response standardization
- capacity-expert-mode: Expert mode toggle, grid, KPIs, batch API
- resource-allocation: Month execution comparison, bulk, untracked
- untracked-allocation: Null team member support
- allocation-indicators: Variance indicators (red/amber/neutral)
- monthly-budget: Explicit project-month planning

All changes verified and tested (157 tests passing).
2026-03-08 19:13:28 -04:00

1.6 KiB

Decision Log: capacity-expert-mode

2026-02-24 — Timezone & Accessibility Fixes

Issue

User reported that weekend shading in Expert Mode was misaligned (showing on 5th/6th instead of 4th/5th for April 2026). Additionally, the shading was too subtle for colorblind users, and cells were not prefilled with O/H for weekends/holidays.

Root Cause

Browser new Date('YYYY-MM-DD') interprets dates in local timezone, causing dates to shift for users west of UTC. A user in UTC-6 sees 2026-04-04 as 2026-04-03T18:00, which reports as Friday instead of Saturday.

Decisions Made

# Decision Rationale
D8 Use Eastern Time (America/New_York) as canonical timezone for weekend/holiday detection Ensures consistent business-day alignment; future configurable
D9 Use high-contrast styling for weekends/holidays (solid backgrounds + borders) Accessibility for colorblind users
D10 Prefill weekends with O, holidays with H on grid load Matches user expectations; reduces manual entry
D11 Frontend and backend must sync when seeding default values Prevents divergent behavior on refresh

Implementation Notes

  • Frontend: Parse dates as new Date(dateStr + 'T00:00:00') to avoid timezone drift
  • Backend: Use Carbon with America/New_York timezone
  • Both sides must implement identical prefill logic

Future Considerations

  • Make timezone configurable per-team or per-user (v2)
  • Extract prefill rules to shared configuration

Earlier Decisions

See design.md sections D1-D7 for original design decisions.