Morning refresh run

Morning refresh run A workflow diagram generated by Archify. 01 / GitHub Actions 02 / Daily refresh script 03 / Repository EX / Failure and recovery Start Measure each subject Commit and publish Independent subjects Scheduled run · 12:00 UTC daily · GitHub Actions › Start · contents + issues Scheduled run 12:00 UTC daily contents + issues Deploy Pages · build, verify paths · GitHub Actions › Commit and publish Deploy Pages build, verify paths Reservoirs · refresh_reservoirs.py · Daily refresh script › Independent subjects › Measure each subject Reservoirs refresh_reservoirs.py Drought · fetch, measure, pair check · Daily refresh script › Independent subjects › Measure each subject Drought fetch, measure, pair check Snow · refresh_snowpack.py · Daily refresh script › Independent subjects › Measure each subject Snow refresh_snowpack.py Stage the manifest · generated-files.json · Repository › Commit and publish · exact set Stage the manifest generated-files.json exact set Commit and push · one data revision · Repository › Commit and publish Commit and push one data revision Retry 1 / 3 / 9 min · three whole-run attempts · Failure and recovery › Measure each subject Retry 1 / 3 / 9 min three whole-run attempts Keep yesterday · restore the verified set · Failure and recovery › Commit and publish Keep yesterday restore the verified set Self-healing issue · late or withdrawn feeds · Failure and recovery › Commit and publish Self-healing issue late or withdrawn feeds workflow_run starts the build late or withdrawn counts week disagrees run failed three attempts, then stop short response only changed bytes runs the same script as a laptop Legend Refresh stage Gate Retry Committed data GitHub Actions GitHub issue

Three independent subjects

  • • Reservoir failure stops the run; snow and drought do not
  • • A failed subject keeps its last verified file

Yesterday survives

  • • Only manifest-named paths are staged
  • • A rejected push rebases instead of discarding the run

Degradation stays visible

  • • Late drought, late feeds and withdrawn feeds each own an issue
  • • Each issue closes itself when the next run recovers