Bring the state files up to date so a cold session can resume

Rule 2 of the workflow is that state lives in the repo rather than the
chat, and a long session had put most of the current position only in
the chat. This writes it down.

TODO.md gains a RESUME HERE block at the top, because the useful
question for the next session is not what has been done but what to do
next and what is blocking it. It names the three live strands, the three
decisions waiting on the user, and the one thing that will break the
batch run if it is forgotten: NGC 6744 mixes bin1 luminance at 4096x4096
with bin2 colour at 2048x2048, so registration has to resample onto a
common grid. Nothing else in the archive does that, which is exactly why
it will be forgotten. It also drops three duplicate "Done (recent)"
headings that had accumulated, and tabulates what the five archived
sessions actually contain.

NOTES.md gains the gotchas, all of which produced plausible wrong
answers rather than errors: every frame is delivered twice as calibrated
and raw, so extracting both silently doubles the stack; an interrupted
segmented download leaves DIRECTORIES named like files, which defeats
anything that trusts an extension; a re-mirror duplicates rather than
replaces; two T20 archives are genuinely corrupt; extraction triples the
disk footprint and filled the drive. Alongside them the analysis lessons
from NGC 5128, kept for the same reason - each is a way to be confidently
wrong.

DECISIONS.md records why the pipeline reads headers rather than
filenames, and why imaging is being made push-button while the science
stays hand-driven.

ARCHITECTURE.md described a documentation-only repository with no code,
which stopped being true when the pipeline merged in. It now covers all
three parts, the code-and-data separation the pipeline is built around,
and the on-disk session layout.

Both of this session's own errors are recorded in TODO.md as things not
to repeat: measuring a foreground star instead of the galaxy nucleus and
booking telescope time to fix it, and telling the user NGC 6744 had not
been processed when it had.
This commit is contained in:
laurence 2026-07-21 17:32:00 +01:00
parent 015bff47fc
commit 3f785136ed
4 changed files with 303 additions and 106 deletions

View file

@ -3,6 +3,33 @@
> A dated, append only log of decisions and their rationale. Newest at the top. Never
> rewrite past entries; if a decision is reversed, add a new entry that says so.
## 2026-07-21: the pipeline reads headers, not filenames
The first pipeline parsed `calibrated-T32-...-Luminance-BIN2-W-300-001.fit` to
learn a frame's filter, binning and exposure. That works for one telescope, one
binning and one exposure length. Three of the four archived sessions have no
luminance channel at all and one is from 2021 with different naming, so the
approach could not survive contact with the archive.
FITS headers carry FILTER, EXPTIME, XBINNING, OBJECT and DATE-OBS precisely so
software does not have to guess, and iTelescope fills them in properly. The
pipeline opens each frame and asks. Filter aliases are mapped, so H-alpha,
Halpha and HA all resolve to Ha.
The colour scheme is then derived from what is present rather than assumed:
LRGB, RGB without luminance, SHO, HOO, or mono. That is what lets one command
handle a galaxy in LRGB and a nebula in narrowband without being told which is
which.
## 2026-07-21: push-button imaging, hand-driven science
The imaging half - unzip, measure, register, stack, plate solve, compose - is
mechanical and should run unattended on any session. The analyses are not: a
globular cluster survey suits an elliptical galaxy and is meaningless for an
emission nebula, and much of the value in the NGC 5128 work came from noticing
when a result was wrong rather than from running the code. So the pipeline is
being built to be push-button, and the science stays step by step.
## 2026-07-21: merge itelescope and astro-pipeline into one repository
The two were split by accident of chronology rather than by design. `itelescope`