Skip to content

fix(#112): MEDIUM: event chips and adjacent-month day numbers have no contrast floor - #429

Merged
BeSovereign merged 1 commit into
mainfrom
fix/issue-112
Oct 15, 2026
Merged

BeSovereign merged 1 commit into
mainfrom
fix/issue-112

Conversation

@BeSovereign

Copy link
Copy Markdown
Contributor

Refs #112

Month chips and week/day blocks now render title/time/location in --ink with the calendar colour only as a 4px left rail and a ≤30% tint over --surface (the agenda treatment), and adjacent-month cells drop the opacity in favour of a --bg background with --ink numbers, so all of them stay above 4.5:1 for any calendar colour in light and dark themes; the light-only ensureContrastFloor helper and its grep test are removed. This round fixes the E2E flake that failed the previous attempt: the #112 spec now waits for network idle after boot, because #app is shown before loadCalendars and a late store.set({calendars}) dropped the injected test calendars.

Driver gates (measured, not claimed)

  • Suites: lint: 1 passed, 0 failed | node: 1763 passed, 0 failed | python: 104 passed, 0 failed | e2e: 73 passed, 0 failed
  • Red/green check on declared tests: e2e/calendar.spec.js, server/test/issue274_event_chip_double_title_announcement.test.js
red/green output
RED without the change:
s row id=385d5299-046c-4174-b8d2-f8bc72947bd7: Stored value is not an AES-256-GCM value of this app
[WebServer] [db] Skipping undecryptable linked_accounts row id=385d5299-046c-4174-b8d2-f8bc72947bd7: Stored value is not an AES-256-GCM value of this app
[WebServer] [db] Skipping undecryptable linked_accounts row id=385d5299-046c-4174-b8d2-f8bc72947bd7: Stored value is not an AES-256-GCM value of this app
[WebServer] [db] Skipping undecryptable linked_accounts row id=385d5299-046c-4174-b8d2-f8bc72947bd7: Stored value is not an AES-256-GCM value of this app
[WebServer] [Webcal] Refresh failed for subscription 1f6cf371-9e28-462d-8dbd-efef63aeb3c9: Feed is not valid iCalendar: END:VCALENDAR missing (wrong content or truncated response)
[WebServer] [MSGraph OAuth] authorization was not granted


GREEN with the change:
s row id=e34cc3d7-f84d-470c-a5c3-4e015ea54925: Stored value is not an AES-256-GCM value of this app
[WebServer] [db] Skipping undecryptable linked_accounts row id=e34cc3d7-f84d-470c-a5c3-4e015ea54925: Stored value is not an AES-256-GCM value of this app
[WebServer] [db] Skipping undecryptable linked_accounts row id=e34cc3d7-f84d-470c-a5c3-4e015ea54925: Stored value is not an AES-256-GCM value of this app
[WebServer] [db] Skipping undecryptable linked_accounts row id=e34cc3d7-f84d-470c-a5c3-4e015ea54925: Stored value is not an AES-256-GCM value of this app
[WebServer] [Webcal] Refresh failed for subscription ddc67a58-80e1-4fc7-8172-fe4df4410036: Feed is not valid iCalendar: END:VCALENDAR missing (wrong content or truncated response)
[WebServer] [MSGraph OAuth] authorization was not granted

🤖 Generated with Claude Code

Month chips and week/day blocks now render title/time/location in --ink with the calendar colour only as a 4px left rail and a ≤30% tint over --surface (the agenda treatment), and adjacent-month cells drop the opacity in favour of a --bg background with --ink numbers, so all of them stay above 4.5:1 for any calendar colour in light and dark themes; the light-only ensureContrastFloor helper and its grep test are removed. This round fixes the E2E flake that failed the previous attempt: the #112 spec now waits for network idle after boot, because #app is shown before loadCalendars and a late store.set({calendars}) dropped the injected test calendars.

Refs #112

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant