docs: update test_last_full_moon.py entry to match full image pipeline

Describes all six steps the script now performs: full moon lookup,
moon stats, sun events regression check, NASA fetch, composite render,
and output path.

https://claude.ai/code/session_01JieSeNQZ3X6fhsb11YyJrK
This commit is contained in:
Claude
2026-05-02 12:52:21 +00:00
parent 985f4883a8
commit d8bf01f86f
+13 -5
View File
@@ -296,14 +296,22 @@ Replace the date list with whatever range you need. Each run produces one `*-fi
python3 moon_detect.py BASE_DIR/east/2026-04-29/21-07-00.jpg --debug /tmp/dbg.png
python3 moon_phase.py info 2026-04-29T21:07:00Z
# Smoke-test moon ephemeris + sunrise/sunset almanac against the last full moon
# End-to-end test: fetch NASA render + produce composite for the last full moon
python3 test_last_full_moon.py
# Output: test_last_full_moon_out.jpg
```
`test_last_full_moon.py` finds the most recent full moon, prints illumination, phase angle,
altitude/azimuth, and parallactic angle, then lists the sunrise and sunset for that day.
It exercises the full skyfield stack including the `sun_events_in_range()` almanac call —
useful after updating skyfield or changing observer config.
`test_last_full_moon.py` runs the same pipeline as `moon-phase-monthly.sh --phase full` but
skips the east-frame witness step, so it works any time without captured frames. It:
1. Finds the most recent full moon (within 35 days)
2. Prints illumination, phase angle, alt/az, and parallactic angle
3. Lists sunrise/sunset for that day via `sun_events_in_range()` — regression check for the bare-topos fix
4. Fetches the NASA SVS Dial-a-Moon render for that hour (cached under `moon-ref/dialamoon/`)
5. Renders a 1920×1080 composite with the phase label, % lit, local time, and NASA attribution
6. Writes `test_last_full_moon_out.jpg` to the sky-cam directory
Useful after updating skyfield, changing `LATITUDE`/`LONGITUDE`, or touching the compositing code.
**Posting schedule**: