3 Commits
Author SHA1 Message Date
Claude a470879d1e simplify test_last_full_moon.py: delegate to run_phase() with no_upload
Removes the bypass of east-frame verification — the script now runs the
complete production pipeline (dark-window filtering, moon detection on
east frames, NASA Dial-a-Moon fetch, render_phase_closeup) by calling
mpm.run_phase() with no_upload=True and a fixed test output path.

Retains the explicit sun_events_in_range() call as a regression check
for the bare-topos fix before the main pipeline runs.

https://claude.ai/code/session_01JieSeNQZ3X6fhsb11YyJrK
2026-05-02 12:53:14 +00:00
Claude 985f4883a8 update test_last_full_moon.py to produce the full moon image
Now runs the complete production pipeline without east-frame verification:
find last full moon → fetch NASA Dial-a-Moon render → render_phase_closeup
→ test_last_full_moon_out.jpg with caption (phase, % lit, local time,
NASA attribution).

Also retains the sun_events_in_range() call as a regression check for
the sunrise_sunset() bare-topos fix.

https://claude.ai/code/session_01JieSeNQZ3X6fhsb11YyJrK
2026-05-02 12:52:08 +00:00
Claude aa4f699b43 add test_last_full_moon.py — smoke-test for moon phase + sun events
Finds the most recent full moon (within 35 days), prints illumination,
phase angle, alt/az, and parallactic angle, then calls sun_events_in_range()
for the surrounding day.  The sun_events call is the direct regression
path for the sunrise_sunset() observer fix (bare topos, not earth+topos).

https://claude.ai/code/session_01JieSeNQZ3X6fhsb11YyJrK
2026-05-02 12:48:39 +00:00