Scheme library: document actual scope + add World Pride Day and cheap event wins (#49) #70

Merged
claude-bot merged 1 commit from fix/49-scheme-library into main 2026-07-16 07:13:26 +00:00
Contributor

Closes #49. Scope decision: option (a) — document the real design rather than pretend ~200 events are hand-curated.

  • Spec §3.3 rewritten (and the same overstatement fixed in §2.2/§15): the built-in library is a curated core (bundled events + US federal holidays) + ~12 tag fallbacks, with AI suggestions covering the long tail. Dropped the "~200 major events" claim.
  • World Pride Day (Jun 28) added — the one §15-named event with no entry — with a pride-rainbow scheme.
  • Cheap recurrence-type wins added to config/events.yaml with matching builtin.yaml schemes: Kwanzaa (span Dec 26→Jan 1), Rosh Hashanah + Yom Kippur (hebrew, dates verified against real calendars), Cinco de Mayo (fixed).
  • Mid-Autumn Festival skipped — Chinese lunisolar; no existing recurrence type fits, and adding a precomputed table is beyond "cheap wins" (noted for a future issue).

Verified: ruff/format/mypy clean; test_builtin_yaml_covers_bundled_events + recurrence tests green.

🤖 Generated with Claude Code

Closes #49. Scope decision: **option (a)** — document the real design rather than pretend ~200 events are hand-curated. - **Spec §3.3 rewritten** (and the same overstatement fixed in §2.2/§15): the built-in library is a curated core (bundled events + US federal holidays) + ~12 tag fallbacks, with **AI suggestions** covering the long tail. Dropped the "~200 major events" claim. - **World Pride Day (Jun 28)** added — the one §15-named event with no entry — with a pride-rainbow scheme. - **Cheap recurrence-type wins** added to `config/events.yaml` with matching `builtin.yaml` schemes: Kwanzaa (`span` Dec 26→Jan 1), Rosh Hashanah + Yom Kippur (`hebrew`, dates verified against real calendars), Cinco de Mayo (`fixed`). - **Mid-Autumn Festival skipped** — Chinese lunisolar; no existing recurrence type fits, and adding a precomputed table is beyond "cheap wins" (noted for a future issue). Verified: `ruff`/`format`/`mypy` clean; `test_builtin_yaml_covers_bundled_events` + recurrence tests green. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Document actual scheme library scope and fill concrete event gaps (#49)
All checks were successful
CI / Python lint & type-check (pull_request) Successful in 1m3s
CI / Frontend lint, test & build (pull_request) Successful in 1m18s
CI / Dependency audit (pull_request) Successful in 1m16s
CI / Python tests (pull_request) Successful in 5m34s
CI / Alembic migration check (pull_request) Successful in 5m56s
CI / Docker build, health smoke & E2E (pull_request) Successful in 3m9s
d4d4b63b90
Spec §3.3 overstated the built-in scheme library as covering "~200 major
events." Rewrote it to describe the real design: a curated core (bundled
events + tag-based fallbacks for US federal holidays/Calendarific/etc.)
with AI suggestions covering the long tail. Also added the §15-named
World Pride Day (previously undefined) plus cheap wins using existing
recurrence types: Kwanzaa (span), Rosh Hashanah/Yom Kippur (hebrew),
Cinco de Mayo (fixed) — each with a matching builtin.yaml scheme.
Mid-Autumn Festival skipped: no existing recurrence type supports the
Chinese lunisolar calendar without a new precomputed date table.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
claude-bot deleted branch fix/49-scheme-library 2026-07-16 07:13:26 +00:00
Sign in to join this conversation.
No description provided.