Skip to content

Retire in-code catalogue versioning and the pre-Snakemake run layers - #880

Merged
cailmdaley merged 6 commits into
developfrom
feat/retire-versioning
Oct 25, 2026
Merged

cailmdaley merged 6 commits into
developfrom
feat/retire-versioning

Conversation

@cailmdaley

@cailmdaley cailmdaley commented Sep 5, 2026 •

Copy link
Copy Markdown
Contributor

We retire catalogue-version patch tables, post-hoc run summaries and the CANFAR submission layers, leaving Snakemake as the production orchestration path.
A campaign is a tile list; git tags identify the producing code rather than runtime catalogue-version switches.

Retirement scope

  • Remove the version-dependent CCD/PSF helpers, patch loops and -V/-P options, summary scraping and summary notebooks.
  • Remove CANFAR submission and distribution scripts, their Python front end and the skaha dependency. Retire the canfar_submit_job, summary_run and get_ccds_with_psf entry points.
  • Keep collate_star_cat.py's PSFEx path; remove its MCCD catalogue-collation branch and version-dependent patch loop.
  • Require sharded exposure-store configuration in merge_headers, multi-epoch psfex_interp and multi-epoch vignetmaker: EXP_BASE_DIR, ME_DOT_PSF_EXP_DIR and ME_IMAGE_EXP_DIR, respectively. Legacy run-log lookup isn't a fallback.
  • Update installation, cluster and workflow documentation, with a workflow tutorial in the Sphinx navigation.

Completeness manifests and sp report provide run status; exposure coverage products provide campaign maps.
The header-download and corner-extraction coverage utilities remain available.

Compatibility boundaries

The Gen-2 scripts run_job_sp_canfar_v2.0.bash, job_sp_canfar_v2.0.bash and their shared command helper remain installed because the downstream image-simulation workflow calls them.
canfar_monitor and canfar_monitor_log remain available.
create_final_cat.py retains the patches/<run> group read downstream.

This is a breaking retirement for callers of the removed submission, summary, per-tile merge and patch-based collation tools; it doesn't supply a compatibility shim.
It doesn't change shape-measurement algorithms or scientific defaults.
The shared completeness, ngmix-range and shell-prologue helpers are left unchanged, avoiding a workflow rerun-trigger change for this retirement.

— Codex on behalf of Cail.

@cailmdaley
cailmdaley force-pushed the feat/persist-exp-products branch from 0d7c313 to d91da36 Compare September 9, 2026 13:00
@cailmdaley
cailmdaley force-pushed the feat/retire-versioning branch from 77af691 to 8ac4caa Compare September 10, 2026 00:46
@cailmdaley

Copy link
Copy Markdown
Contributor Author

From the smk-g7 acceptance run (integration of #879 + #886 + #887 + this branch, 64 tiles / 127 exposures): coverage_map ran and completed — 4891 CCDs with a PSF, 54.5 deg² of depth-map footprint, and the depth sampled at each catalogue object reproduces the catalogue's own NGMIX_N_EPOCH histogram (mode 3; 99.987% of objects at depth > 0). That is the acceptance run this PR named as not yet done. One tuning note: the job requested 31.25 GB and used 1.09 GB (3%); worth sizing from the footprint count like the other campaign-level rules do.

— Claude (Fable) on behalf of Cail

cailmdaley and others added 4 commits September 29, 2026 01:06
ccd_psf_handler (v1.3/v1.4 -> 7, v1.5 -> 8, v1.6 -> 9 patches), its
get_ccds_with_psf entry points and the build_and_plot_coverage_maps.sh
VERSIONS loop go, with utilities/summary.py, summary_params_pre_v2.py,
summary_run and summary_tiles.py: a per-patch scrape of a finished run whose
job is done by the workflow's manifests, logs and completeness.py.
collate_star_cat.py keeps only its version-free path (no -V/-P, no patch
loop).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BeQNTBcjTqu6TPktxysovQ
The gen-0 HTCondor-era scripts and the gen-1 curl/skaha submission layer
(${kind}_runs/$ID layout, bit-coded job masks, patch-specific special
cases) go, with canfar_submit.py, canfar_submit_job and the skaha
dependency. canfar_monitor/canfar_monitor_log stay. The gen-2 bash
(run_job_sp_canfar_v2.0.bash, job_sp_canfar_v2.0.bash, functions.sh's
command()) stays: sp_validation's image-sims workflow calls it. The
Dockerfile's script-symlink loops tolerate an empty glob.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BeQNTBcjTqu6TPktxysovQ
merge_headers, psfex_interp and vignetmaker lose the single-run-root branch
resolved through log_run_sp.txt (last:/all:): EXP_BASE_DIR and
ME_*_EXP_DIR are required, and a config without them fails loudly.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BeQNTBcjTqu6TPktxysovQ
docs/source/workflow.md is the user-facing workflow guide;
pipeline_tutorial.md follows the rule chain; pipeline_canfar.md and
post_processing.md go with the layers they described.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BeQNTBcjTqu6TPktxysovQ
@cailmdaley
cailmdaley force-pushed the feat/retire-versioning branch from 496d67b to b88c389 Compare September 29, 2026 08:09
@cailmdaley cailmdaley changed the title Retire in-code catalogue versioning; coverage masks become a workflow product Retire in-code catalogue versioning and the pre-Snakemake run layers Sep 29, 2026
…rams pin

# Conflicts:
#	docs/source/pipeline_canfar.md
#	scripts/python/merge_final_cat.py
#	workflow/README.md
@cailmdaley
cailmdaley marked this pull request as ready for review October 25, 2026 23:07
@cailmdaley
cailmdaley merged commit 2a56ed0 into develop Oct 25, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant