golem
pushed to main at lucky/astro-mcp
05badb5cfd fix: single-point timezone conversion, clean up double normalization
Rule: _get_person_birth_data() is the ONLY function that converts stored
birth datetimes to UTC. All _byId tools receive UTC and must not re-normalize.
- _get_person_birth_data: now converts naive local time + IANA timezone to UTC
using zoneinfo (modern dates) or LMT from longitude (fallback)
- call_sky_state: no longer normalizes — expects UTC from callers
- calculate_natal_chart: no longer normalizes — expects UTC from callers
- All _byId functions use _get_person_birth_data (which returns UTC)
- Removed tz parameter from call_sky_state and calculate_natal_chart
- Removed stale sidereal time correction from call_sky_state
- DB migration: stripped bogus offsets from birth_datetime, added missing IANA timezones
- Added agent-guides/server-guide.md with architecture, timezone rules, tool reference
- Registered astro://guides/server-guide resource
db328c9bef fix: historical timezone handling — IANA for modern, LMT fallback for pre-1890
- _normalize_datetime: always use IANA timezone when available (handles
historical LMT correctly for most zones). Fall back to LMT from longitude
when no timezone is specified.
- call_sky_state passes lon for LMT computation
- Removed pre-1890 LMT override — IANA zoneinfo already encodes historical
LMT offsets (e.g. Europe/Berlin in 1879 = +0:53:28)
- Einstein 0.1° diff is 28s LMT precision (Berlin vs Ulm longitude), not a bug
031aaafa4a fix: timezone handling — naive datetime + IANA timezone, strip bogus DB offsets
- _normalize_datetime now accepts optional IANA timezone name for UTC conversion
- call_sky_state passes tz through to _normalize_datetime
- Removed leftover sidereal time correction (ephemeris is authoritative)
- calculate_natal_chart and calculate_natal_chart_by_id thread tz from DB
- _get_person_birth_data now returns timezone field
- DB migration: stripped bogus offsets from birth_datetime (e.g. T00:05-00:05)
- Added missing IANA timezones for chaka, einstein, gaga
- All 55 unit tests pass
- View comparison for these 3 commits »
3 månader sedan