Skip to content
João Montenegro

What an edited photograph of Andromeda can and cannot prove

An audit of one 25 July 2026 image: exact pixel identity, a field-scale sky solution, 77 Gaia stars, and the claims that had to be withdrawn

25 Jul 2026Seestar S50Lisbon

M31 · M32 · M110 · NGC 206

The Andromeda Galaxy with M32 and M110, the edited photograph the audit examined
The edited Andromeda photograph with the audit's catalogue layers drawn over it
The edited photograph, session dated 25 July 2026, exposure time unknown, with the audit's layers drawn through the same sky solution: the four catalogue objects at their reviewed radii, the 77 Gaia DR3 positions, and the four raw frames' footprints. Turn each on and off; hover a marker for what it is.

Result

This run validates the existing Andromeda analysis without reconstructing a historical run that was never preserved. The source is one 1147 × 1249 baseline 8-bit JPEG with an embedded Display P3 profile. The existing photo-1-siril-solved.fit is not linear detector data: after the FITS planes are mapped to RGB and the logged vertical row transform is applied, every channel value in every pixel equals the JPEG exactly. The mean and maximum absolute differences are both zero.

The celestial WCS can nevertheless be defended for field-scale annotation. Its solved centre is ICRS RA 10.705103°, Dec +41.264038°; mean plate scale is 4.75086 arcsec/pixel; and the most distant corner is 1.12014° from the centre. A fresh coordinate-only Gaia DR3 query of the exact solved footprint, limited to G ≤ 11.0, returned 77 catalogue rows. A display-space source detector found 2,433 threshold-dependent peaks at a global threshold equal to the image median plus six times a robust noise sigma derived from the median absolute deviation. A separate bright-anchor test successfully associated 76 of the 77 catalogue positions with local JPEG centroids under its ≤2.0 pixel and S/N ≥ 5 rule. These are three different counts and must not be conflated.

This is a complete audit of the preserved attachment and its legacy products, with explicit limits. It is not a photometric reduction, a measurement of proper motion, a census of stars in M31, a time-resolved moving-object search, or a reconstruction of the unknown capture and edit history.

Product identity and legacy preservation

Before computing new science, the run recorded a zero-compute inventory of 20 legacy files with paths, SHA-256 hashes, modification times, format sniffing, lineage confidence, known and unknown historical tool versions, and an explicit gap list. It records Siril 1.4.4 as the only tool version supported at origin. Historical Python, NumPy, Matplotlib, Astropy, Pillow, operating system, and detailed catalogue-cache versions remain unknown.

Sixteen scientifically relevant legacy files were then copied byte-identically into this isolated run. Sources were retained, mtimes were preserved, and no destination was overwritten. The adoption manifest explicitly states that it does not backfill a historical run.json, science report, terminal status, query log, or plate-solve residual table.

The identity audit proves:

  • JPEG SHA-256: ae28b5d8e1693dce2fcc8e3e6f52156b2380a3f2adfe1f1479485c5de1babff3.
  • FITS SHA-256: 31ec662567b90e1f5ec86febb248ed10a36fc6c2c5a2272f47ba29feebe23269.
  • FITS encoding: BITPIX=8, three uint8 planes, Siril 1.4.4, ROWORDER=BOTTOM-UP.
  • Tested transform: FITS planes 0, 1, and 2 map directly to JPEG R, G, and B; display y = height - 1 - FITS y; no horizontal flip or resampling.
  • Exact identity: 100% equal channel values and 100% equal RGB pixels.

The source has nonlinear, edited, display-referred values. Its ICC profile, JPEG encoding, unknown edits, and clipping prohibit linear photometry, calibrated fluxes, sensor-noise inference, or defensible image-derived stellar temperatures and distances.

WCS validation

The preserved FITS header contains a structurally valid TAN-SIP celestial WCS. The missing historical solver matched-pair table means its original fit RMS cannot be recovered. This run therefore performed an external, explicitly display-space sensitivity check against the fresh Gaia DR3 rows.

Gaia DR3 positions were propagated from reference epoch J2016.0 before residual interpretation. Because the attachment's capture epoch is unknown, J2026.56 was used only as a sensitivity epoch, not asserted as the exposure epoch. Of 77 catalogue positions, 76 met the local centroid rule. For those associations:

  • median residual: 0.321 px or 1.527 arcsec;
  • 90th percentile: 1.038 px or 4.930 arcsec;
  • 95th percentile: 1.192 px or 5.665 arcsec;
  • maximum accepted residual: 1.845 px or 8.764 arcsec.

Residual versus field radius has Spearman ρ = 0.146, p = 0.207, so this sample does not show a significant radial trend. Residual versus Gaia G magnitude has ρ = -0.699, p = 2.18 × 10⁻¹²: the brighter sources produce larger centroid-proxy residuals in this nonlinear, saturated or blended display product. That relationship is a limitation of the display-centroid check, not evidence for a magnitude-dependent sky distortion.

The WCS therefore supports the DSO overlay, the Gaia position overlay, celestial-sphere minimap, and footprint comparisons in this run. It does not support precision astrometry from the JPEG.

Gaia provenance, epochs, and match logic

The fresh Gaia query used the ESA Gaia Archive TAP sync service on 28 July 2026. The preserved ADQL selects the exact TAN-SIP corner polygon and phot_g_mean_mag ≤ 11.0. It returned 77 rows, exactly the same source-ID set as the legacy rich CSV.

The legacy Siril export also contains 77 rows. Its coordinates agree with Gaia DR3 positions propagated from J2016.0 to J2000 at a median separation of 0.00114 arcsec and a maximum of 0.00208 arcsec. The best-fit marker epoch is J1999.9992. The legacy coordinates are therefore catalogue positions at J2000, not image-measured motion.

The old rich-table builder used a greedy, one-to-one nearest-neighbour match at unpropagated J2016 coordinates with a 10 arcsecond ceiling. This audit instead propagated Gaia to J2000, applied a Hungarian one-to-one assignment, and then used a 3 arcsecond ceiling. All 77 rows pass. A deterministic null control shifted every legacy coordinate through ten component offsets: ±30 and ±60 arcsec along each coordinate axis, plus (±120, ±120) arcsec diagonal shifts whose radial displacement is about 169.7 arcsec. 0 of 770 shifted controls matched within 10 arcseconds. This control tests local catalogue confusion; it is not a completeness or false-discovery probability.

Among the 77 Gaia rows, 75 have Gaia proper-motion components, 46 have GSP-Phot distances, temperatures, and radii, 76 have radial velocities, and 77 have XP continuous spectra. The photograph measured none of those properties. The rows are bright foreground Milky Way catalogue sources in the direction of M31. They are not individual detected stars in the Andromeda Galaxy, and the withdrawn "M31 stellar census" language is scientifically misleading.

The Gaia layer of the figure at the top draws those 77 positions, projected at J2000; the one that found no image centroid is drawn open. They are catalogue positions, not image detections. The clean JPEG, transparent marker layer, composite, coordinate transform, row count, query hash, and per-marker geometry are all retained separately.

Field objects and sky cartography

The preferred image uses fresh coordinate-only SIMBAD TAP positions for the M31 bright core, M32, M110, and NGC 206. Each marker has reviewed object-specific geometry. The M31 circle encloses only its bright core, not the full roughly 3.3-degree galaxy. M32 and NGC 206 use leaders clipped at their circle boundaries. The overlay is monochrome and retained as a byte-identical clean JPEG, a transparent layer, and a composite with SHA-256 provenance.

The run also placed the solved ICRS field on a celestial-sphere minimap with a direct, open marker and constellation asterism lines from a pinned dataset whose raw SHA-256 is 294f66bef5d5cf50b1e17f16d2efa1d97a15131612c68dd935adef6e7373e13c. The map below is that dataset, live.

The solved field on the sky: the edited image's footprint at its measured plate scale (1147 by 1249 pixels at 4.75 arcseconds each), and the catalogue positions of M31, M32 and M110. Pinch to zoom in on it; drag to turn.

Relation to the four-frame M31 session

The independent shared WCS/header-truth audit locally solved all four preserved 30-second frames in m31-mosaic-2026-07-24-ircut-30s. Their UTC timestamps run from 2026-07-24T00:40:44.038 to 00:42:16.389. Their mean scale is 2.37579 arcsec/pixel, and each field spans about 0.713° × 1.267°. Per-frame catalogue residual RMS values range from 0.499 to 0.971 arcsec.

The four solved centres have only 40.19 arcsec maximum pairwise separation, and their common intersection retains 98.24% of the smallest frame area. They are a short same-pointing sequence, not four distinct mosaic panels. Every raw footprint lies inside the edited product's larger solved footprint, but one raw frame covers only about 36.1% of the edited footprint.

The footprint layer of the figure at the top draws those four frames on the edited image, each through the edited image's own solved WCS: four nearly coincident rectangles, low in the field.

This verifies a bounded same-sky relationship. It does not prove direct pixel lineage. No preserved capture-input list, registration transform, stack recipe, calibration history, or byte-level derivation links those four frames to the edited JPEG, and their heavily overlapping footprints do not explain the edited product's larger field.

Moving-object scope

The edited JPEG contains 0 accepted long linear-feature candidates under the recorded line-segment, collinearity, support, and longitudinal-profile screen. That is only a display-space trail screen. It does not establish that no satellite, aircraft, asteroid, comet, or short feature was present.

The known-object ephemeris pass was not run because no defensible exposure UTC or interval is attached to the JPEG. The uncatalogued-candidate pass was not run because only one edited image exists and at least three independent, timestamped subframes are required. The machine-readable candidate table therefore has status not_evaluated_missing_time_resolved_inputs; its zero rows are not a negative search result.

No image, private observer coordinates, astrometric measurement, or candidate was uploaded or submitted externally. Only coordinate-only Gaia and SIMBAD catalogue queries were made.

Legacy claim disposition

Legacy statement or productAudit disposition
"77 Gaia DR3 sources at magnitude limit 11"Confirmed by a fresh exact-footprint Gaia DR3 TAP query: 77 rows at G ≤ 11.0.
Solved FITS is a science imageRejected for photometry. It is an exact 8-bit wrapper of the edited JPEG; its WCS remains usable at field scale.
"M31 stellar census"Withdrawn. The table contains bright foreground Gaia sources in the direction of M31.
Proper-motion vectors were measured in this imageRejected. Gaia supplied 75 proper-motion pairs; the image measured none.
Legacy 10 arcsecond crossmatch is sufficientSuperseded by epoch propagation, one-to-one assignment, a 3 arcsecond ceiling, and a 770-point null control.
Historical WCS residual or solver detection counts are knownWithheld. The legacy solve log and matched-pair table were not preserved.
Cropped Siril GUI overlays are canonical reader productsWithheld from preferred use. Their exact crop and display transform are unknown; byte-identical copies remain in the archive.
The four M31 files are four mosaic panels that produced the JPEGRejected as stated. They are four heavily overlapping same-pointing frames; a sky relationship is verified, direct derivation is not.

The presentation

The report as it was published: one claim a page, made for a phone.

Published from session andromeda-2026-07-25 · run 20260728T145637Z-backyard-science. Every number above traces to a sealed measurement in that run.