# Skotiq 8.1.0 — complete implementation history

All 235 commits after v8.0.0 through the tested application commit `63f335b0eaafb30e5401eaf2c55645277c46006a`. Release preparation additionally updates version metadata, README download links and these release documents, then reconciles strict CI formatting/lint checks, reviewed audit entries and the isolated flat-wizard reservation test.

- 2026-10-23 [`d57a83c64`](https://github.com/Scdouglas1999/Skotiq/commit/d57a83c64944df08612df55d6a4096eba5749236) Recover meridian tracking-limit stops through the flip controller
- 2026-10-24 [`3f431f220`](https://github.com/Scdouglas1999/Skotiq/commit/3f431f220c8eb30817e36ee2a4545864c2adc0c3) Fix post-flip guide acquisition and verified recovery
- 2026-10-24 [`6fb86812a`](https://github.com/Scdouglas1999/Skotiq/commit/6fb86812a353ef17d45f082406c7ea699f39405e) Accept floating-point master flats when calibrating camera lights
- 2026-10-24 [`291d9e88a`](https://github.com/Scdouglas1999/Skotiq/commit/291d9e88a4a44ba6aa11d64c63d6a32ffd6ed575) Order registration triangle vertices by geometry instead of detection rank
- 2026-10-24 [`1220b71cc`](https://github.com/Scdouglas1999/Skotiq/commit/1220b71cc08820ff5be828ddc704eea0cdf180e0) Add guided multi-night Darkroom builds with uniform coverage export
- 2026-10-24 [`6e1eb32c7`](https://github.com/Scdouglas1999/Skotiq/commit/6e1eb32c75705c21ef4767df8e4d41278714a1f7) feat(darkroom): registration pre-pass reports footprints and the common crop before integration
- 2026-10-24 [`edfe867e0`](https://github.com/Scdouglas1999/Skotiq/commit/edfe867e05799848be656b6327bee38d9ad99cbb) fix(sequencer): a dawn or obstruction park still runs the plan's shutdown steps
- 2026-10-24 [`7de85c3bf`](https://github.com/Scdouglas1999/Skotiq/commit/7de85c3bf35ce85661d8f55bb6b0e2963c1b0637) fix(calibration): the dawn park starts end-of-night calibration
- 2026-10-24 [`516824c27`](https://github.com/Scdouglas1999/Skotiq/commit/516824c27909e9aeb952bd3643058f73b5dabd8d) feat(darkroom): the pre-pass reuses known footprints so exclusions re-evaluate the crop at once
- 2026-10-24 [`d15adf004`](https://github.com/Scdouglas1999/Skotiq/commit/d15adf004527604e68dc5c23d11e3f13b867c08d) fix(post-session): a night ended by the dawn park is integrated after its calibration
- 2026-10-24 [`47d9cdc5c`](https://github.com/Scdouglas1999/Skotiq/commit/47d9cdc5c88a45efc0eb805b1bd8ba983a6f829e) fix(guiding): serialize PHD2 restarts and wait for its capture to end
- 2026-10-24 [`ad60eee69`](https://github.com/Scdouglas1999/Skotiq/commit/ad60eee6927bd91c01716669e703cb71eacd19f4) fix(grading): judge each frame against its filter's recent frames at its airmass
- 2026-10-24 [`7e0302166`](https://github.com/Scdouglas1999/Skotiq/commit/7e0302166905000b702f2e0f14348c08fd3afadc) feat(darkroom): group by observing night, check framing first, and run builds as a background job
- 2026-10-24 [`2e8ab36ae`](https://github.com/Scdouglas1999/Skotiq/commit/2e8ab36aeb3e9e6a31fe5ed81c77f204c6e6ec40) test(darkroom): drop redundant imports
- 2026-10-24 [`b1e43d866`](https://github.com/Scdouglas1999/Skotiq/commit/b1e43d8664f33b30ac55a5ecd43013e6282b590e) fix(sequencer): a stop time left from an earlier night moves to tonight
- 2026-10-24 [`738907657`](https://github.com/Scdouglas1999/Skotiq/commit/738907657e91c39818bc2efd6d7e2caca5cba09e) fix(sequence): a run that skipped its targets and imaged nothing is not completed
- 2026-10-24 [`86f4789ce`](https://github.com/Scdouglas1999/Skotiq/commit/86f4789ce5927a79b439bc41f55150c315983c9a) fix(recovery): the recovery banner clears when the run ends
- 2026-10-24 [`8c912cf2d`](https://github.com/Scdouglas1999/Skotiq/commit/8c912cf2dac66d54496d634038b2587b7a6253d5) feat(sequencer): record the frame watch's verdict on each frame and learn obstructions per site
- 2026-10-24 [`3cfa507f9`](https://github.com/Scdouglas1999/Skotiq/commit/3cfa507f9f81f2ac2d922209ffd9ea8b57d52a50) refactor(sequencer): read absent frame-watch fields as unreported, not defaulted
- 2026-10-24 [`8750bf14f`](https://github.com/Scdouglas1999/Skotiq/commit/8750bf14f5836b9043b92f3446f1b7e4e99f8b0e) docs(audit): re-point the serializer rows the frame_watch import moved
- 2026-10-24 [`959b94847`](https://github.com/Scdouglas1999/Skotiq/commit/959b9484741e78bfef3afd3434334307c0c62c1f) feat(darkroom): build masters in the background with a framing review before integration
- 2026-10-24 [`0be5f6cb2`](https://github.com/Scdouglas1999/Skotiq/commit/0be5f6cb24e4bb086f77f2e8fe0d79bf69ad9785) docs(audit): register the Darkroom build defaults and log the two fallbacks
- 2026-10-24 [`76f3c05cd`](https://github.com/Scdouglas1999/Skotiq/commit/76f3c05cd3fe9ee04da97cfce607d21f1cdca6a4) docs(darkroom): describe the framing check, background builds and unattended builds
- 2026-10-24 [`75f56ac00`](https://github.com/Scdouglas1999/Skotiq/commit/75f56ac006c1177eec0aa0b5e7e3956767785d3c) fix(darkroom): show errors from starting background build work in the window
- 2026-10-24 [`e3f268208`](https://github.com/Scdouglas1999/Skotiq/commit/e3f268208a00a47a16597bd2c92d9c935474b65d) feat(imaging): float calibration, per-flat normalization, geometric warp coverage and ESD rejection
- 2026-10-24 [`e5bb95509`](https://github.com/Scdouglas1999/Skotiq/commit/e5bb95509c4d072d06eaf917a1c9ac20163318f2) fix(darkroom): batch-integrate multi-night builds from float-calibrated subs
- 2026-10-24 [`ba7ecd045`](https://github.com/Scdouglas1999/Skotiq/commit/ba7ecd0455ad8d2a035d2ca0a663d3d3904c4cd3) fix(sequencer): tracking-loss recovery confirms the mount tracks from its pointing
- 2026-10-24 [`e2f9a7e05`](https://github.com/Scdouglas1999/Skotiq/commit/e2f9a7e0570f73a3fc0773a9054a6db98fb39210) fix(meridian): a verified flip is recorded at once and never stops the night
- 2026-10-24 [`28f5fbabe`](https://github.com/Scdouglas1999/Skotiq/commit/28f5fbabec487db1c8aa44353eb0ab6bf61e406e) feat(meridian): flip early when the mount stops at its own tracking limit
- 2026-10-24 [`5de200e51`](https://github.com/Scdouglas1999/Skotiq/commit/5de200e51d2f13115c855ea79f4264375ce7f102) fix(sequencer): untracked frames are rejected and guiding waits for a tracking mount
- 2026-10-24 [`a34b167d0`](https://github.com/Scdouglas1999/Skotiq/commit/a34b167d0dedbf879c5a8cb1e75a64e1414062e1) fix(mount): the site/time card is shown below the router Navigator
- 2026-10-24 [`b7496967c`](https://github.com/Scdouglas1999/Skotiq/commit/b7496967cf14dc81465a90209b5f84ca19021ee7) fix(location): an unset site elevation takes the mount's
- 2026-10-24 [`89bd0c369`](https://github.com/Scdouglas1999/Skotiq/commit/89bd0c3699b7a0ecd52039af43bcbd3954df0594) feat(settings): show learned obstructions per site and the frame watch settings
- 2026-10-24 [`4f6985f2e`](https://github.com/Scdouglas1999/Skotiq/commit/4f6985f2e3ae0b7c8db7913ccf4bacad6aa2c496) feat(frames): badge frames the frame watch marked off target or obstructed
- 2026-10-24 [`11d86b915`](https://github.com/Scdouglas1999/Skotiq/commit/11d86b915c96fb5af46c528e8a2a86b7ee1fb92d) fix(analytics): label session counts as kept and not kept
- 2026-10-24 [`d6a94a184`](https://github.com/Scdouglas1999/Skotiq/commit/d6a94a184b913a50e19deb472b334936307ac926) fix(logs): routine and untrue log lines on every frame
- 2026-10-24 [`a6a3aa3e1`](https://github.com/Scdouglas1999/Skotiq/commit/a6a3aa3e14fff3a606d70e22a107c7b6ec9b68da) docs(audit): re-point the rows the end-of-night changes moved, register the new sends
- 2026-10-24 [`5fcf5d71c`](https://github.com/Scdouglas1999/Skotiq/commit/5fcf5d71c6b009ce40b550dee6493f6460e1f02d) feat(settings): choose what a run does when the mount stops at its limit
- 2026-10-24 [`b47fc21c6`](https://github.com/Scdouglas1999/Skotiq/commit/b47fc21c66a511d8f87d22f88b199bd1c6437796) test(guiding): keep the PHD2 stand-in tests under a tests directory
- 2026-10-24 [`b75617c8c`](https://github.com/Scdouglas1999/Skotiq/commit/b75617c8cc3dabbd80608f38fb037680e1413837) fix(guiding): hand stopped mounts to tracking recovery and restart lost guiding
- 2026-10-24 [`00c811b39`](https://github.com/Scdouglas1999/Skotiq/commit/00c811b393b9ff5fbf0d04ac742e64063cba7466) docs(audit): re-point the row the guider star-quality methods moved
- 2026-10-24 [`618dd2b78`](https://github.com/Scdouglas1999/Skotiq/commit/618dd2b78128407b76817e26cda7f3ed7283409f) fix(sequencer): a tracking stop from the app's mount controls pauses the run
- 2026-10-24 [`fac6153c7`](https://github.com/Scdouglas1999/Skotiq/commit/fac6153c7441356984ff1e6ce9fc5dd222553cad) fix(darkroom): findings from driving the build on real frames
- 2026-10-24 [`61006e4aa`](https://github.com/Scdouglas1999/Skotiq/commit/61006e4aa7638bb05fd471fffdeb284ba0ee7255) feat(calibration): end-of-night calibration is on unless switched off
- 2026-10-24 [`063bde3f6`](https://github.com/Scdouglas1999/Skotiq/commit/063bde3f6f9b1586b82d3c2bf07631a64e39caef) feat(calibration): the plan's warm-up waits for end-of-night calibration
- 2026-10-24 [`33ccc9f70`](https://github.com/Scdouglas1999/Skotiq/commit/33ccc9f7077671a0d87abc46eea1dff71541edd7) docs(audit): re-point the rows the calibration warm-up changes moved
- 2026-10-24 [`80abb06ad`](https://github.com/Scdouglas1999/Skotiq/commit/80abb06ad7e63a2cd5294296daf8680f5884c198) feat(darkroom): scale mismatched darks with the bias, ask for PixInsight's automatic rejection, and report filters with no integrable light
- 2026-10-24 [`1cc022a04`](https://github.com/Scdouglas1999/Skotiq/commit/1cc022a04c7f80501c900f7d5b0dafde32293194) perf(darkroom): keep the accumulating master in memory between adds and journal each fold
- 2026-10-24 [`9592a92a2`](https://github.com/Scdouglas1999/Skotiq/commit/9592a92a2b04bc634b1d34acbd3c6b3371ea9fa7) feat(darkroom): export linear masters without clipping and add RGB and LRGB composites
- 2026-10-24 [`26e28a47f`](https://github.com/Scdouglas1999/Skotiq/commit/26e28a47f423a24c8d1757fe6a70c1d91ed72677) docs(audit): re-point and register the Darkroom native rows
- 2026-10-24 [`a13654f20`](https://github.com/Scdouglas1999/Skotiq/commit/a13654f20250e81d8b62a3dd222bce12c94eab6c) test(sequencer): drop an unused scenario-harness helper
- 2026-10-24 [`5d60b06e7`](https://github.com/Scdouglas1999/Skotiq/commit/5d60b06e78fa031dd2b9e6b0ff6e2b30750c504f) fix(grading): keep the reject-folder docs on their function and grade the rig corpus per filter
- 2026-10-24 [`74162c476`](https://github.com/Scdouglas1999/Skotiq/commit/74162c476b124d4147636ffecdd68294cf869c00) fix(autofocus): a failed sweep keeps the last good HFR baseline, and autofocus waits out bad frames
- 2026-10-24 [`fd172951d`](https://github.com/Scdouglas1999/Skotiq/commit/fd172951dfe7fad46778b792e458fd8849920036) docs(audit): re-point the rows the frame watch and grading changes moved, register the new sites
- 2026-10-24 [`8b88f7262`](https://github.com/Scdouglas1999/Skotiq/commit/8b88f72627654dc43e21e0236e6d017a40d9570e) feat(sequencer): watch every saved frame for drift, lost stars and obstructions
- 2026-10-24 [`b8dbc8991`](https://github.com/Scdouglas1999/Skotiq/commit/b8dbc89918e95b0c2637206697d6856523300c82) Merge rv/w4: end of night, plan hygiene and app robustness
- 2026-10-24 [`f33c596f9`](https://github.com/Scdouglas1999/Skotiq/commit/f33c596f92023f1b9457493865da9c641b5c0dd3) style(darkroom): satisfy clippy in the ESD rejector and the sub spool
- 2026-10-24 [`1f59991e9`](https://github.com/Scdouglas1999/Skotiq/commit/1f59991e94d8fd1469b0baceed182f5737f92d3f) Merge rv/w2: PHD2 guiding restarts and guide-star recovery
- 2026-10-24 [`ddd16b329`](https://github.com/Scdouglas1999/Skotiq/commit/ddd16b32939205dc806dfa1b61aecc0a3862fb6e) Merge rv/w1: tracking loss, tracking limit and meridian flip
- 2026-10-25 [`3bcc80762`](https://github.com/Scdouglas1999/Skotiq/commit/3bcc8076222499bb69bb486dccb2559cbcc8c989) Merge rv/w3: frame watch, grading baselines and session record
- 2026-10-25 [`7bb27f485`](https://github.com/Scdouglas1999/Skotiq/commit/7bb27f485e73bfaaa4dd369a858e5b200f539398) Merge rv/w6: Darkroom background builds, framing pre-pass and unattended builds
- 2026-10-25 [`b0c96087b`](https://github.com/Scdouglas1999/Skotiq/commit/b0c96087b84120d8d449bfab236f039f58512585) Merge rv/w5: Darkroom native batch integration and float calibration
- 2026-10-25 [`aeac00e65`](https://github.com/Scdouglas1999/Skotiq/commit/aeac00e652278ebae233e79333bbb89b6a329278) fix(guiding): the guider restarted after a flip or autofocus refuses a star below the run's guide star
- 2026-10-25 [`b8a1f121b`](https://github.com/Scdouglas1999/Skotiq/commit/b8a1f121b262884f383cdb0957c2c44bd2be4380) feat(sequencer): the frame watch counts a guide-star recovery stalled at one pointing as lost guiding
- 2026-10-25 [`1e3a5e2bf`](https://github.com/Scdouglas1999/Skotiq/commit/1e3a5e2bfbf2baf38757ddea281d6e11e6f34ac5) test(sequencer): the light frame's guiding gate runs the unguided retry and waits on a mount that reads not tracking
- 2026-10-25 [`a5596b1ad`](https://github.com/Scdouglas1999/Skotiq/commit/a5596b1ad150753c03cbdabbf2a1607b265cc10c) perf(darkroom): the framing pre-pass detects the reference's stars once
- 2026-10-25 [`10218e6da`](https://github.com/Scdouglas1999/Skotiq/commit/10218e6da7f1299314d660d4e1aedcfdee83231f) fix(darkroom): a build checks the free space for its working folder before it starts
- 2026-10-25 [`5a815a308`](https://github.com/Scdouglas1999/Skotiq/commit/5a815a308fbdca451c527e22dbe67cc47de5e67f) feat(darkroom): the end of a night builds its targets' masters with the guided multi-night build
- 2026-10-25 [`32712438c`](https://github.com/Scdouglas1999/Skotiq/commit/32712438c0ca479c6094514ba474f5144a0ca4af) docs(audit): re-point the rows the merged fix branches moved
- 2026-10-25 [`162b4a576`](https://github.com/Scdouglas1999/Skotiq/commit/162b4a5761f5acf438255a819be40d34101aeb49) feat(darkroom): a finished unattended guided build is delivered and announced with the morning message
- 2026-10-25 [`f49fa318c`](https://github.com/Scdouglas1999/Skotiq/commit/f49fa318cb76f4bd799aa95d9690400d124ace9f) fix(night-control): a flip that needed retries names the step that failed
- 2026-10-25 [`5a97da06c`](https://github.com/Scdouglas1999/Skotiq/commit/5a97da06c59e4ba1ff2bade53999cf8ee3fea62c) feat(imaging): measure the direction stars are stretched in
- 2026-10-25 [`eb941fa2e`](https://github.com/Scdouglas1999/Skotiq/commit/eb941fa2ec67618939f664c8365a3e2890b7aa2e) fix(devices): the hot-plug poll does not probe serial ports while a mount is connected
- 2026-10-25 [`456039615`](https://github.com/Scdouglas1999/Skotiq/commit/4560396154bb7fef5242176525196aca730e7dfa) fix(guiding): say why guiding is stopped, keep it stopped after a run Stop, and hold a locked star through a settle timeout
- 2026-10-25 [`c39fff15f`](https://github.com/Scdouglas1999/Skotiq/commit/c39fff15f9266e79f8d4753d3b3ae0c8fb6936c6) feat(night-control): the guide tab says why guiding is stopped
- 2026-10-25 [`18bf378df`](https://github.com/Scdouglas1999/Skotiq/commit/18bf378df3a3af3da231f1b97b163032122b83db) fix(meridian): the post-flip settle cannot pass sooner than a real settle
- 2026-10-25 [`a791215be`](https://github.com/Scdouglas1999/Skotiq/commit/a791215be39c8897c07eccce1692159204313211) test(sequencer): a frame that loses tracking halfway through is rejected with the reason
- 2026-10-25 [`82d249aec`](https://github.com/Scdouglas1999/Skotiq/commit/82d249aec892405f8fe3136494a16b7a139021b0) feat(grading): keep the eccentricity baseline per filter and pier side and say what a rise after the flip points to
- 2026-10-25 [`9f01c8bd1`](https://github.com/Scdouglas1999/Skotiq/commit/9f01c8bd1ea5b3048b9bd2e8f5b8b2029dc429a1) docs(audit): re-point the rows the guiding, grading and discovery changes moved, register the new sites
- 2026-10-25 [`0c24bd99c`](https://github.com/Scdouglas1999/Skotiq/commit/0c24bd99c6fea5195f0901ee3dd3e40b9b6ad66b) fix(guiding): a dither whose settle runs out with the star held is a dither done
- 2026-10-25 [`a11dff3e0`](https://github.com/Scdouglas1999/Skotiq/commit/a11dff3e036781ba8f7fc98d9d00deef46901fa7) fix(guiding): a guider guiding again does not report a stop reason
- 2026-10-25 [`395152ca7`](https://github.com/Scdouglas1999/Skotiq/commit/395152ca797bc66b41cbb66f387151106f93d12a) docs(audit): re-point the rows the dither settle change moved
- 2026-10-25 [`9e59e74f9`](https://github.com/Scdouglas1999/Skotiq/commit/9e59e74f9a3862a037a9f5c34680f749e79ae412) fix(guiding): dithers keep their own settle values; planned restarts settle at the looser bar
- 2026-10-25 [`0a4896b46`](https://github.com/Scdouglas1999/Skotiq/commit/0a4896b46c85cdcf0f21a7c5b064ff675a07b106) docs(audit): re-point the rows the settle-bar change moved
- 2026-10-25 [`0261ac652`](https://github.com/Scdouglas1999/Skotiq/commit/0261ac652834ac74fd0c4443fe476cfe225a33bf) feat(calibration): build and register masters for waiting raw calibration frames
- 2026-10-25 [`7fe670cfe`](https://github.com/Scdouglas1999/Skotiq/commit/7fe670cfe4abcb6ee4298701f9f31528e2f4ea48) feat(flat-wizard): keep each run's saved flats and record them as raw calibration frames
- 2026-10-25 [`29c2b4434`](https://github.com/Scdouglas1999/Skotiq/commit/29c2b44342ab955becdb881879a4f615605500d4) feat(darkroom): master builds persist across restarts and new nights fold into one build per target
- 2026-10-25 [`4ee0d3b25`](https://github.com/Scdouglas1999/Skotiq/commit/4ee0d3b25eaebb35795a38cbb8a2f09fbf266a3a) refactor(darkroom): the recipe editor becomes the Edit tab
- 2026-10-25 [`1df4dfbdb`](https://github.com/Scdouglas1999/Skotiq/commit/1df4dfbdb07615cbe80fba35bb4f740a77312fbb) feat(darkroom): one night-end runner calibrates, builds every target from all its nights, delivers and sends one message
- 2026-10-25 [`961bfc88b`](https://github.com/Scdouglas1999/Skotiq/commit/961bfc88b1c68177a80d1c36f836481567305264) feat(darkroom): register the RGB and LRGB composites as color masters
- 2026-10-25 [`d23fbc5b3`](https://github.com/Scdouglas1999/Skotiq/commit/d23fbc5b38a199bc958bbc9a060af34253925200) feat(notifications): Darkroom notifications open the target, its framing check or Activity
- 2026-10-25 [`f199635d9`](https://github.com/Scdouglas1999/Skotiq/commit/f199635d9d32d627a88cc9bd05be624cd8713691) refactor(darkroom): name the core route builders apart from the app's navigation helpers
- 2026-10-25 [`80159ac56`](https://github.com/Scdouglas1999/Skotiq/commit/80159ac56b249c40083b4d852c8a6c271afaa395) feat(session-review): build masters through the Darkroom's guided build
- 2026-10-25 [`48d099096`](https://github.com/Scdouglas1999/Skotiq/commit/48d0990961bdfb5ab480d916202f741075b003d2) feat(live-stack): Save master registers the master in the library
- 2026-10-25 [`a4a50cc88`](https://github.com/Scdouglas1999/Skotiq/commit/a4a50cc88b47d0fb8fc721b05f166e3b726faa0b) fix(live-stack): name a saved master from the stack's reference frame
- 2026-10-25 [`a1b60fe62`](https://github.com/Scdouglas1999/Skotiq/commit/a1b60fe62a5ae814a76374efcff97e5013f3d443) feat(ui): hero title and hero figure type roles
- 2026-10-25 [`daef2ce1b`](https://github.com/Scdouglas1999/Skotiq/commit/daef2ce1b83a09af2bdc2bce7b505d0c9379a4c4) feat(darkroom): re-evaluate a waiting build's crop for a changed plan
- 2026-10-25 [`d97c367ff`](https://github.com/Scdouglas1999/Skotiq/commit/d97c367ff3313d9b56d4d786d56d2b7721d54421) feat(darkroom): Targets tab and an in-screen framing check
- 2026-10-25 [`eb5e51623`](https://github.com/Scdouglas1999/Skotiq/commit/eb5e51623edcd6902e9fa9a6750e697509d26f72) feat(darkroom): combine a target's per-filter masters in the Edit tab
- 2026-10-25 [`be8b98950`](https://github.com/Scdouglas1999/Skotiq/commit/be8b9895054b4b32c559311543715212bee93dd4) docs(audit): re-point the rows the composite registration moved, register the new Edit tab sites
- 2026-10-25 [`796eb755b`](https://github.com/Scdouglas1999/Skotiq/commit/796eb755b151e18905c2cec53af59397a8cba507) feat(darkroom): the Activity tab shows the running build, held builds, night-end history, passes and the automation switches
- 2026-10-25 [`e7a7878f9`](https://github.com/Scdouglas1999/Skotiq/commit/e7a7878f943712ada84725ba479ae6658c6d13b1) feat(settings): the night-end automation switches live in the Darkroom
- 2026-10-25 [`ec236facd`](https://github.com/Scdouglas1999/Skotiq/commit/ec236facd197535f37c88fe14b19786b66d672a0) refactor(darkroom): build the night-end step sentences from their parts
- 2026-10-25 [`177e2ab6a`](https://github.com/Scdouglas1999/Skotiq/commit/177e2ab6a45fe515cf667e4fce840ec45936c056) docs(audit): register the night-end and saved-build defaults and re-point the rows they moved
- 2026-10-25 [`f21d4e120`](https://github.com/Scdouglas1999/Skotiq/commit/f21d4e12018af31016e279140c3b57c7fd6c274b) refactor(darkroom): use the shared Darkroom route model and link builders
- 2026-10-25 [`2bf3942b5`](https://github.com/Scdouglas1999/Skotiq/commit/2bf3942b5e2eded0520aca0df10cfe7c5476a451) fix(darkroom): say when a matched calibration file is missing, and keep the build decision by the button
- 2026-10-25 [`dbc344d1b`](https://github.com/Scdouglas1999/Skotiq/commit/dbc344d1ba0ff0a0c7e95d601b4f578f61981218) test(darkroom): Targets tab, framing check and route parsing
- 2026-10-25 [`ae597f92b`](https://github.com/Scdouglas1999/Skotiq/commit/ae597f92b4ee4b0fec3e5ebe5ebb8ef92af0e3ca) fix(darkroom): a sub a build skipped is not new light, and not counted as used
- 2026-10-25 [`082ebf01b`](https://github.com/Scdouglas1999/Skotiq/commit/082ebf01b8f7d085bfc1cccfc5fe3da8ed1153f9) fix(darkroom): the night-end history says why a step has not run
- 2026-10-25 [`38c0f59eb`](https://github.com/Scdouglas1999/Skotiq/commit/38c0f59ebc92f3d6b07bdbe1d143028ad51d2f2f) fix(darkroom): the image list counts a new recipe at once; the editor bar names the recipe
- 2026-10-25 [`482306360`](https://github.com/Scdouglas1999/Skotiq/commit/48230636049044d7ffe60ab55e58fb404e12fcd7) fix(darkroom): Targets controls announce themselves as enabled, and links into Edit come back
- 2026-10-25 [`2a2b4f577`](https://github.com/Scdouglas1999/Skotiq/commit/2a2b4f5773a9a18cb6b88043aa59fd8672071ec8) docs(audit): re-point the rows the Darkroom Targets changes moved
- 2026-10-25 [`3eebf16d9`](https://github.com/Scdouglas1999/Skotiq/commit/3eebf16d90ddf59f697f5dd27f02678a63e19ea3) fix(darkroom): the combine dialog counts frames in words
- 2026-10-25 [`cc454efb8`](https://github.com/Scdouglas1999/Skotiq/commit/cc454efb8c319f15b136d86ef31b7f47d6e89ed3) feat(darkroom): Calibration tab, one library of darks, bias and flats
- 2026-10-25 [`ede0b5e80`](https://github.com/Scdouglas1999/Skotiq/commit/ede0b5e8002a54a0bcb3eaaa716cf943fa55f7a4) feat(flat-wizard): finish a run with Build master flat
- 2026-10-25 [`326148a34`](https://github.com/Scdouglas1999/Skotiq/commit/326148a34515aa2c2c003f9725a96d84ee84a0c8) docs(audit): register the calibration tab rows and re-point the moved ones
- 2026-10-25 [`923b255d2`](https://github.com/Scdouglas1999/Skotiq/commit/923b255d21279628d35b55950fa62050812d9b14) test(darkroom): putting a light back re-evaluates from its known footprint
- 2026-10-25 [`17a2b8df4`](https://github.com/Scdouglas1999/Skotiq/commit/17a2b8df4ccf0de1d1cde22cfcd8df5700fa5b24) docs(design): regenerate tokens.css for the hero type roles
- 2026-10-25 [`18b848285`](https://github.com/Scdouglas1999/Skotiq/commit/18b8482855482e9a6cd5143c8bc80f0a04f27640) fix(darkroom): an image that cannot be opened offers the image list, not Analytics
- 2026-10-25 [`5d1f46a4e`](https://github.com/Scdouglas1999/Skotiq/commit/5d1f46a4e469c0b82665c0b9ee1fcaba73e7a232) docs(audit): re-point the rows the route alignment moved, register the route parser's sites
- 2026-10-25 [`0b64c1103`](https://github.com/Scdouglas1999/Skotiq/commit/0b64c11039d397e391b2ce4d835f81e51b122406) feat(darkroom): group waiting calibration frames by night and keep build results in view
- 2026-10-25 [`09b7cfba8`](https://github.com/Scdouglas1999/Skotiq/commit/09b7cfba8aff86eda700c7087d25a497a1427c0d) fix(darkroom): a target still held at the framing check folds into the next night's build
- 2026-10-25 [`ffe82ca30`](https://github.com/Scdouglas1999/Skotiq/commit/ffe82ca30c32875d4b712462cbc20d1cbddc11f6) docs(audit): re-point the night-end run row the history fix moved
- 2026-10-25 [`2999a7c92`](https://github.com/Scdouglas1999/Skotiq/commit/2999a7c9216c697e3d09927f532622d2017179d3) Merge branch rv/d1: Darkroom shell, Targets tab and framing check
- 2026-10-25 [`73c5c704c`](https://github.com/Scdouglas1999/Skotiq/commit/73c5c704c0372fc47e260d4639eae74271dbd030) Merge branch rv/d2: Calibration tab
- 2026-10-25 [`280561710`](https://github.com/Scdouglas1999/Skotiq/commit/280561710800e4b2683fefa451251be839f6873a) Merge branch rv/d3: Activity tab and night-end automation
- 2026-10-25 [`4a3803f20`](https://github.com/Scdouglas1999/Skotiq/commit/4a3803f202556c8fa787f87e17d691ca0a274f38) Merge branch rv/d4: Edit tab and consolidation
- 2026-10-25 [`b4500693d`](https://github.com/Scdouglas1999/Skotiq/commit/b4500693d24da84247dd150c91f438ebbeb0c756) fix(darkroom): tab bodies read the screen's route, and a held build is reviewed where it waits
- 2026-10-25 [`7749495ee`](https://github.com/Scdouglas1999/Skotiq/commit/7749495ee2522735bb6e26b8530ec0af13d96315) feat(darkroom): masters are built at night end unless the operator turned it off
- 2026-10-25 [`65065819b`](https://github.com/Scdouglas1999/Skotiq/commit/65065819b3dfc314eb2058b95a8e1d6eb95275e2) refactor(session-review): the header builds masters through the Darkroom, not a per-night pass
- 2026-10-25 [`c575c50d6`](https://github.com/Scdouglas1999/Skotiq/commit/c575c50d6e4a9fc7c4bf6aee5b1b3b8d47f40ed0) fix(darkroom): build progress counts only the subs that go into the build
- 2026-10-25 [`e2057cce1`](https://github.com/Scdouglas1999/Skotiq/commit/e2057cce1bb7f2ed9b0937f4c31cb553e796a91e) fix(darkroom): a fold keeps two export folders and one library master per filter
- 2026-10-25 [`773410c8e`](https://github.com/Scdouglas1999/Skotiq/commit/773410c8e69a38c8f825abab203ea3fb2d8b6fd9) feat(darkroom): Targets tab polish: real build summary, cropped channel tiles, live calibration and the night-end chip
- 2026-10-25 [`287b154f3`](https://github.com/Scdouglas1999/Skotiq/commit/287b154f3064bdaafee048c60adb2fac5e14199a) docs(audit): keep one row per Darkroom site after the merge and re-point the moved ones
- 2026-10-25 [`36fc4fad2`](https://github.com/Scdouglas1999/Skotiq/commit/36fc4fad25afbf46ef95eca2227c3d8cb825503c) fix(darkroom): the framing check names subs and calibration masters that are not on this computer
- 2026-10-25 [`b5b78c3d7`](https://github.com/Scdouglas1999/Skotiq/commit/b5b78c3d74a08a108ce77960f2ee3d27b9e15525) fix(darkroom): layout and wording found driving the Darkroom
- 2026-10-25 [`4cdf131c3`](https://github.com/Scdouglas1999/Skotiq/commit/4cdf131c30b01355363b05fe27c6142b602becbe) fix(darkroom): Build masters after a finished build checks the framing again
- 2026-10-25 [`49c284471`](https://github.com/Scdouglas1999/Skotiq/commit/49c284471dd5f1fba211b7b2c47faf1fd4a8439c) fix(darkroom): the Edit list dates each image and Activity titles a finished build as the last one
- 2026-10-25 [`c1a05bbfe`](https://github.com/Scdouglas1999/Skotiq/commit/c1a05bbfee7eefab9affe4cd54297fb6e7019888) docs(audit): re-point the framing check rows; regenerate the settings search index
- 2026-10-25 [`98612a9a3`](https://github.com/Scdouglas1999/Skotiq/commit/98612a9a3e7b3b7333b7e84cb9365b49f45db7db) fix(darkroom): Activity and Edit links announce themselves as enabled
- 2026-10-25 [`12facd482`](https://github.com/Scdouglas1999/Skotiq/commit/12facd4827a35c5810008dd1f256d87be8b0cb45) fix(darkroom): the Darkroom header fits a phone-width window
- 2026-10-25 [`225cabef4`](https://github.com/Scdouglas1999/Skotiq/commit/225cabef4c6b83a77f16615e131a849206d39c20) fix(darkroom): color composite previews auto-stretch each channel, and a fold carries recipes to the new master
- 2026-10-25 [`39d765976`](https://github.com/Scdouglas1999/Skotiq/commit/39d7659764a15002dae120dedf90fb3e087c78a7) feat(darkroom): the Darkroom shows a recipe's rendered draft, else the auto-stretched master
- 2026-10-25 [`3a5a5927a`](https://github.com/Scdouglas1999/Skotiq/commit/3a5a5927a31ac96338a0dcda824da97fdad5a1a4) test(darkroom): iterate the composite preview test's channel levels directly
- 2026-10-25 [`8749f4b52`](https://github.com/Scdouglas1999/Skotiq/commit/8749f4b529b2182a8fd7f998aa990e13bb15fc76) fix(darkroom): the Targets and Edit lists read again when a draft thumbnail is saved
- 2026-10-25 [`4d00d5e9d`](https://github.com/Scdouglas1999/Skotiq/commit/4d00d5e9deca94382c819a1513115dc9b56996fb) docs(audit): re-point the preview helper row the unlinked stretch moved
- 2026-10-25 [`c00106d67`](https://github.com/Scdouglas1999/Skotiq/commit/c00106d67bdb34b23f142a2745ce733e154ce103) fix(science): report each frame's outcome and keep reprocessed frames' history in capture order
- 2026-10-25 [`77a0bee64`](https://github.com/Scdouglas1999/Skotiq/commit/77a0bee64ac47e58d07b7f7cc5cf917baaa41950) fix(sequencer): sequence light frames go through the per-frame science pipeline
- 2026-10-25 [`8fa105b6a`](https://github.com/Scdouglas1999/Skotiq/commit/8fa105b6af018dbcedc4b4da58db8490a8b4c3ce) feat(science): reprocess a recorded session's frames through the science pipeline
- 2026-10-25 [`ab35eca4b`](https://github.com/Scdouglas1999/Skotiq/commit/ab35eca4b6ed4e216ad6ead2f69a0aa5207acbe0) test(science): moving-object detection stays off unless a session turns it on
- 2026-10-26 [`bc2a17fcb`](https://github.com/Scdouglas1999/Skotiq/commit/bc2a17fcb2cc15710700f90ceeb7bff61bc9365a) fix(platesolve): take the solved field size from the frame, since ASTAP's .wcs names none
- 2026-10-26 [`5c3cd9f3a`](https://github.com/Scdouglas1999/Skotiq/commit/5c3cd9f3af77cfdb383596c5bc593ce0432b8f20) fix(platesolve): ask ASTAP for SIP distortion terms
- 2026-10-26 [`eab381bc2`](https://github.com/Scdouglas1999/Skotiq/commit/eab381bc2b32053690359f19f4e5a9b2b07a587c) fix(first-light): Chase refuses to slew while a sequence owns the mount
- 2026-10-26 [`88b933cc6`](https://github.com/Scdouglas1999/Skotiq/commit/88b933cc632b7644a862cca6974df5fa2181b1b6) fix(science): camera e/ADU and read noise follow the gain in use
- 2026-10-26 [`1ee4583fb`](https://github.com/Scdouglas1999/Skotiq/commit/1ee4583fba5805bd149282e035dd4a6824195cc0) fix(wcs): project the sky onto the frame with the standard FITS mapping
- 2026-10-26 [`ac030f648`](https://github.com/Scdouglas1999/Skotiq/commit/ac030f648cd0f207960f547c59fa72eb7c3a2f79) fix(science): take a fresh solve's field size from the frame when the solver gives none
- 2026-10-26 [`9be317755`](https://github.com/Scdouglas1999/Skotiq/commit/9be31775561f20596a3a24d8cee6821bc33621c8) fix(science): the PSF field map measures every star the pipeline asked for
- 2026-10-26 [`97fcacd04`](https://github.com/Scdouglas1999/Skotiq/commit/97fcacd046f1b92781923f6fb22c6cf402875750) fix(science): link moving objects on the sky, not by pixel
- 2026-10-26 [`8bbb3ad0f`](https://github.com/Scdouglas1999/Skotiq/commit/8bbb3ad0f97f800674e342177620045421400ad6) feat(analytics): choose ADES PSV or the 80-column report in the MPC export
- 2026-10-26 [`bee206057`](https://github.com/Scdouglas1999/Skotiq/commit/bee206057b1589bc8c1c664a8f340571dba6a11e) fix(science): read FITS header cards without literal fallbacks
- 2026-10-26 [`5284e01db`](https://github.com/Scdouglas1999/Skotiq/commit/5284e01dbe38b881bf037b4ac065832aa64ea899) fix(narrator): guiding, cloud, focus-drift and solve-drop cards speak only from settled, finished, usable data
- 2026-10-26 [`af66fcbeb`](https://github.com/Scdouglas1999/Skotiq/commit/af66fcbeb1420d8ee76cd2ddc841c4957db8a48a) fix(narrator): the tilt arrow points at the side the diagnostics name
- 2026-10-26 [`a0be40a8d`](https://github.com/Scdouglas1999/Skotiq/commit/a0be40a8df4895efb6bc71cf0dfa70bf938793de) feat(science): photometry rows record their filter and catalog band
- 2026-10-26 [`8abbb44a2`](https://github.com/Scdouglas1999/Skotiq/commit/8abbb44a2bd0846dc6bcac083145670974fcdad9) fix(science): honest zero points and per-filter transparency
- 2026-10-26 [`7d7b2dc86`](https://github.com/Scdouglas1999/Skotiq/commit/7d7b2dc86bbb775c656317dd247715e0a1a6e5a1) fix(annotation): label and identify through the frame's full WCS, parity included
- 2026-10-26 [`8e6fb462f`](https://github.com/Scdouglas1999/Skotiq/commit/8e6fb462f78804461f49a8cf86a71ec1444c2e0c) fix(science): show astrometric residuals as the field pattern, catalog minus measured
- 2026-10-26 [`56d82b082`](https://github.com/Scdouglas1999/Skotiq/commit/56d82b082a6d57eb8c17fcb4a142403a12262f4f) fix(science): differential photometry keeps one ensemble and one target
- 2026-10-26 [`b4cf5f9ac`](https://github.com/Scdouglas1999/Skotiq/commit/b4cf5f9ac4b3a8bd19d6f26871f32e6472641dda) fix(science): AAVSO export writes valid differential lines
- 2026-10-26 [`fd73c73ff`](https://github.com/Scdouglas1999/Skotiq/commit/fd73c73ff3430dbbd0317350abcf6d997df83509) fix(science): transforms fit the filter's band and refuse fake extinction
- 2026-10-26 [`08dabe662`](https://github.com/Scdouglas1999/Skotiq/commit/08dabe66240dee5edfd20a99a120f2c944143266) docs(audit): register the photometry band and transparency defaults
- 2026-10-26 [`a03c30cc0`](https://github.com/Scdouglas1999/Skotiq/commit/a03c30cc08599a6c12050b872fc67eeec1f31e5c) fix(database): bring each solved frame's stored rotation in line with its CD matrix
- 2026-10-26 [`fc8984056`](https://github.com/Scdouglas1999/Skotiq/commit/fc898405625477341abb8543c72de337c9754eca) fix(analytics): the zero point trend plots one filter
- 2026-10-26 [`d4f1225ad`](https://github.com/Scdouglas1999/Skotiq/commit/d4f1225ad1b59ad48c06a40cc7ddee3b2edcdefc) refactor(wcs): read a missing SIP block as one named no-distortion value
- 2026-10-26 [`b795f271a`](https://github.com/Scdouglas1999/Skotiq/commit/b795f271a85736cdbbfb1623d9e768ff97be2f10) docs(audit): re-point the DepthLock empty-path rows the WCS change moved
- 2026-10-26 [`ee9fea941`](https://github.com/Scdouglas1999/Skotiq/commit/ee9fea941bdd8c3eb644a8b10e931975f201a538) fix(wcs): send the frame solve's CD matrix to linked clients and key the catalog overlay on it
- 2026-10-26 [`b5a4fb106`](https://github.com/Scdouglas1999/Skotiq/commit/b5a4fb10602b24ff15ccb9731bb241e34859c82c) fix(sequencer): quality and guiding triggers only notify unless the operator asks them to stop the run
- 2026-10-26 [`d2d847358`](https://github.com/Scdouglas1999/Skotiq/commit/d2d847358c175c4f01a631e9f06525616b2bd4d8) fix(sequencer): dawn ends a held run whose plan owns its end time
- 2026-10-26 [`6fb68269a`](https://github.com/Scdouglas1999/Skotiq/commit/6fb68269a7246138745466fd433adf35c5f39ecf) fix(weather): dawn leaves an active run to the sequencer's own dawn rule
- 2026-10-26 [`e2ca03fe4`](https://github.com/Scdouglas1999/Skotiq/commit/e2ca03fe47396fa146bfd0e2e4687463f16a40ab) fix(science): run the solved-frame hook once per solved light frame, whoever solved it
- 2026-10-26 [`d99e9e92a`](https://github.com/Scdouglas1999/Skotiq/commit/d99e9e92a82af68e319c9a45e74690513c65b8ab) docs(science): say why a frame-watch-solved sequence frame is solved again
- 2026-10-26 [`80d0ccd2d`](https://github.com/Scdouglas1999/Skotiq/commit/80d0ccd2d163323c0e36348c63566e22c570a560) chore(platesolve): compile the size-less WCS parse helper for tests only
- 2026-10-26 [`c0a607158`](https://github.com/Scdouglas1999/Skotiq/commit/c0a607158ae67d22818e3c0196a1cb6e7aab2a62) test(wcs): construct the frame-solve channel const in its test
- 2026-10-26 [`31c994a47`](https://github.com/Scdouglas1999/Skotiq/commit/31c994a47bbca8b7787db83c66f9426ecf1da91c) fix(darkroom): turn a master's CD matrix into its overlay with the matrix's parity
- 2026-10-26 [`7a4c505a7`](https://github.com/Scdouglas1999/Skotiq/commit/7a4c505a7ddabab3b614bd7c549ce5d59be1d563) docs(audit): re-point the session review rows the master overlay change moved
- 2026-10-26 [`c1b4ea5bd`](https://github.com/Scdouglas1999/Skotiq/commit/c1b4ea5bd2107e478d8fc905e58491091bdc5d0b) style(wcs): dart format the files the projection changes touched
- 2026-10-26 [`a9e9c02c3`](https://github.com/Scdouglas1999/Skotiq/commit/a9e9c02c3311d4c6232b10d5ed9d3c53872affee) fix(science): optical diagnostics skip star-less tiles, report field curvature and measure collimation
- 2026-10-26 [`89b9a6bbd`](https://github.com/Scdouglas1999/Skotiq/commit/89b9a6bbdcdd06c7bcda3373b345e9ef6747fd1a) fix(frame-watch): a run of starless frames is time-bounded, ignores trails, and ends the night only when confirmed twice
- 2026-10-26 [`c290246e5`](https://github.com/Scdouglas1999/Skotiq/commit/c290246e57987aae41a0bf656861e517b9315d1f) docs(meridian): say why a refused early flip is not forced
- 2026-10-26 [`2f78b3ebe`](https://github.com/Scdouglas1999/Skotiq/commit/2f78b3ebe6fd6d88f5c0c84bb4329e7305ad8499) fix(science): photometry measures stars in one seeing-scaled aperture
- 2026-10-26 [`fc8d5d443`](https://github.com/Scdouglas1999/Skotiq/commit/fc8d5d4430e0d20fc5cf23f61a336e74415d1fcf) test(science): describe the narrator and zero point cases by what they check
- 2026-10-26 [`4f3f0870b`](https://github.com/Scdouglas1999/Skotiq/commit/4f3f0870ba05e423ad82026347bc4b210e75afd9) fix(science): an APASS cone cut off at the row limit is not cached
- 2026-10-26 [`686b16f6d`](https://github.com/Scdouglas1999/Skotiq/commit/686b16f6db7d2a50a1724e678fb89f1ea44b8466) fix(atlas): count a frame once per cell, fold batches tile by tile, keep filters apart
- 2026-10-26 [`0194284a7`](https://github.com/Scdouglas1999/Skotiq/commit/0194284a784db7201d4362a529b5bac5da2df8e2) fix(your-sky): count each frame once, queue folds, add an atlas switch
- 2026-10-26 [`31c4c03a4`](https://github.com/Scdouglas1999/Skotiq/commit/31c4c03a449c850899be5feb5af18e0a7e774db4) style(sequencer): rustfmt the run-control changes
- 2026-10-26 [`3d7ad65c5`](https://github.com/Scdouglas1999/Skotiq/commit/3d7ad65c5d94b784ab8c0ab6be53019f6ef20e5b) test(annotation): expect the frame centre at the 0-based pixel centre
- 2026-10-26 [`32e56bdcf`](https://github.com/Scdouglas1999/Skotiq/commit/32e56bdcfddfc98ba3502b27ab8fcded524abb09) test(science): the narrator reads a light curve only for a chosen target
- 2026-10-26 [`0fe8bb41f`](https://github.com/Scdouglas1999/Skotiq/commit/0fe8bb41f4de03ed110079b56894be071b072ece) docs(audit): re-point the rows the run-control changes moved
- 2026-10-26 [`69db1b5a4`](https://github.com/Scdouglas1999/Skotiq/commit/69db1b5a4d76f36656b2eea1828c3f99a0665858) refactor(science): name the FITS scaling defaults in the cutout reader
- 2026-10-26 [`ff34d6d8e`](https://github.com/Scdouglas1999/Skotiq/commit/ff34d6d8e5e395b5f50561431983e3cf5b1aab91) fix(science): frame "SNR" becomes the sky-to-read-noise ratio, and the longer-subs advice follows it
- 2026-10-26 [`99cc1a594`](https://github.com/Scdouglas1999/Skotiq/commit/99cc1a59444d8bb172b6b41c70615f6b1bc57606) fix(imaging): quality maps measure the real gradient and the sky noise
- 2026-10-26 [`d86487dc2`](https://github.com/Scdouglas1999/Skotiq/commit/d86487dc2475c6bc6098ad88924c495ac11d58a2) fix(grading): trailed frames are rejected even when their stars read round
- 2026-10-26 [`83282a567`](https://github.com/Scdouglas1999/Skotiq/commit/83282a567cb4441d1f1936bc40ec1896e3203f0a) docs(audit): re-point the exposure rows the trail measurement moved
- 2026-10-26 [`7e4a693df`](https://github.com/Scdouglas1999/Skotiq/commit/7e4a693df577e0ff0d4237341bf4e47c7511cdad) Merge branch 'rv/f2' into rv/sinteg
- 2026-10-26 [`c1de5e5bd`](https://github.com/Scdouglas1999/Skotiq/commit/c1de5e5bd1d3c9ddcd72ae41592506f41fd95b10) Merge branch 'rv/f4' into rv/sinteg
- 2026-10-26 [`0660a239b`](https://github.com/Scdouglas1999/Skotiq/commit/0660a239b97f08f54a8ff529081d7beaffe3fc9c) Merge branch 'rv/f5' into rv/sinteg
- 2026-10-26 [`854757bca`](https://github.com/Scdouglas1999/Skotiq/commit/854757bcae39c540f2e9a254127b05e2b6cdf9f5) docs(audit): register the per-filter narrator defaults the focus and frame-watch changes added
- 2026-10-26 [`dfc5f1474`](https://github.com/Scdouglas1999/Skotiq/commit/dfc5f14742e568457b734d3709ee4e10d8b583be) fix(first-light): difference against a same-filter template scaled on star flux, with artifact guards
- 2026-10-26 [`d98d0ad05`](https://github.com/Scdouglas1999/Skotiq/commit/d98d0ad054dc69ec7e56113eaf814b43c7226731) fix(first-light): report only sources confirmed in a second frame, named honestly
- 2026-10-26 [`38e95051c`](https://github.com/Scdouglas1999/Skotiq/commit/38e95051cd9dc76ad8faa4a558dc862757a2483a) fix(first-light): return the rows a scan just persisted
- 2026-10-26 [`6e3883a39`](https://github.com/Scdouglas1999/Skotiq/commit/6e3883a3911a9d30e729a86007a7051210b54412) Merge branch 'rv/f3' into rv/sinteg
- 2026-10-26 [`bbab0b8f0`](https://github.com/Scdouglas1999/Skotiq/commit/bbab0b8f039cd7341429d263127869a161be3c16) chore(settings): regenerate the search index for the Your Sky atlas switch
- 2026-10-26 [`3f901230e`](https://github.com/Scdouglas1999/Skotiq/commit/3f901230ee49b1b47006778db01f849807a2aeb4) style(science): dart format the optical diagnostics service
- 2026-10-26 [`fb4907318`](https://github.com/Scdouglas1999/Skotiq/commit/fb4907318b4b50cd5f78e3185dfc45a8b2b97d10) test(your-sky): region rollups count each frame once
- 2026-10-26 [`4f416d182`](https://github.com/Scdouglas1999/Skotiq/commit/4f416d1824d5f9bc35b0548f32bd56b1db66f05e) style(imaging): satisfy clippy in the difference image and atlas fold
- 2026-10-26 [`be1124d1d`](https://github.com/Scdouglas1999/Skotiq/commit/be1124d1d5d4de383fe14fbfd21902ccb123c3f3) style(imaging): rustfmt the trail export
- 2026-10-26 [`de7fb444e`](https://github.com/Scdouglas1999/Skotiq/commit/de7fb444e719930c7c8af00c311d75d28042dbb0) refactor(imaging): satisfy clippy in the atlas fold and difference gates
- 2026-10-26 [`237bd872c`](https://github.com/Scdouglas1999/Skotiq/commit/237bd872c7683017211971fc3e21c43d682749c3) Merge branch 'rv/f3' into rv/sinteg
- 2026-10-26 [`4904dc4da`](https://github.com/Scdouglas1999/Skotiq/commit/4904dc4dae45e33c11448ea58c9b343d7d083f84) fix(first-light): expire stale sightings and recheck chase ownership
- 2026-10-26 [`8fafec745`](https://github.com/Scdouglas1999/Skotiq/commit/8fafec7452b809b84dfa19980d0cf749da23f996) fix(photometry): preserve comparison stars when aperture measurement falls back
- 2026-10-26 [`b6e516255`](https://github.com/Scdouglas1999/Skotiq/commit/b6e516255ff5a704da2d03786d4d0a7a5e0a8604) fix(your-sky): distinguish frames sharing a batch fold label
- 2026-10-26 [`a68ff7289`](https://github.com/Scdouglas1999/Skotiq/commit/a68ff728997a739370b3064809d6ca2b3c5a7afe) fix(analytics): wrap timeline readouts in narrow panels
- 2026-10-26 [`1925db450`](https://github.com/Scdouglas1999/Skotiq/commit/1925db4508ab9ad292cc033e80a4ee5dee7ce8d0) fix(first-light): explain scans rejected by subtraction validation
- 2026-10-26 [`25b83a5d2`](https://github.com/Scdouglas1999/Skotiq/commit/25b83a5d2f9be4f6a59ae9153f43a98e5660bf1e) fix(first-light): reject unreliable reference subtraction
- 2026-10-26 [`b2db4a1fb`](https://github.com/Scdouglas1999/Skotiq/commit/b2db4a1fb12c49e4dbbb250969dda6ab88d70447) Fix Darkroom color previews and use measured photometric drafts
- 2026-10-26 [`6676d5ab2`](https://github.com/Scdouglas1999/Skotiq/commit/6676d5ab2cbec64cd24bb532baee22391567cc4d) Rebuild affected filters after accepted Darkroom plan changes
- 2026-10-26 [`54a982033`](https://github.com/Scdouglas1999/Skotiq/commit/54a982033a1e24c0fc73ab59a475cc2858f21ddc) Use gentler noise reduction for automatic color edits
- 2026-10-26 [`51428734d`](https://github.com/Scdouglas1999/Skotiq/commit/51428734d16f18d5536b0d8e08ffa26f48cdb3a7) Add configurable angular drift recentering to the sequencer
- 2026-10-27 [`6e41c035c`](https://github.com/Scdouglas1999/Skotiq/commit/6e41c035c4318d8e30fdda3a6b8bbba44f83f692) Recenter at 30 arcseconds from the first solved frame
- 2026-10-27 [`93cd4c8b1`](https://github.com/Scdouglas1999/Skotiq/commit/93cd4c8b13c82501d18b09fb37034cd48ece6bb2) fix(guiding): recover stalled PHD2 command connections
- 2026-10-27 [`46dfeb7fb`](https://github.com/Scdouglas1999/Skotiq/commit/46dfeb7fb6fd0fe0eac22009048a20d814497618) fix(science): use captured gain and grade before atlas publication
- 2026-10-27 [`414693e63`](https://github.com/Scdouglas1999/Skotiq/commit/414693e63774579a86aae57e520d91eaf5db0d03) Prepare explicitly selected flats before night-end integration
- 2026-10-27 [`3fc864168`](https://github.com/Scdouglas1999/Skotiq/commit/3fc864168f21136025fc901fe4c4c4dd6ffe4fc9) Add local normalization and 1x–4x drizzle to Darkroom builds
- 2026-10-27 [`a01c5366b`](https://github.com/Scdouglas1999/Skotiq/commit/a01c5366bd8e22f844021184af0506e822535a4a) fix(science): move CPU measurements off the UI isolate
- 2026-10-28 [`c26293f9b`](https://github.com/Scdouglas1999/Skotiq/commit/c26293f9bb277687c15c24f9ae3cb40acc9b84d6) Fix overnight polling bursts, settle recovery and stale autofocus triggers
- 2026-10-28 [`63f335b0e`](https://github.com/Scdouglas1999/Skotiq/commit/63f335b0eaafb30e5401eaf2c55645277c46006a) Add per-filter flat capture settings and compact rig status panel
