Pull request #1816: PIPE-3064/PIPE-3133
Merge in PIPE/pipeline from PIPE-3064-pipeline-fails-when-a-band-is-fully-flagged-in-a-multi-band-observation to main
* commit 'ca4823d013cdbc346c7ba95799c1fda8bf05dcd2': PIPE-3064: Clarify bandpass warning when all SPWs have low S/N PIPE-3064: Add existence check before computing bandpass S/N statistics PIPE-3133: add logging for skipped zero-SNR SPWs PIPE-3064: Improve QA handler to independently score available calibration tables PIPE-3133: skip bandpass run for spws with very low S/N PIPE-3064: minor changes suggested in PR review PIPE-3064: adding check to ensure caltable is present before running the task PIPE-3133: checking if caltable is already present before appending solution to the existing table PIPE-3064: moving flagcount in the beginning PIPE-3064: checking existance of ktypecaltable, and gtypecaltable
PIPE-3064: Add existence check before computing bandpass S/N statistics
Prevents crash when bandpass calibration table doesn't exist due to
fully-flagged band. The _compute_median_snr() function requires the
table to exist, so check and return early with empty dict if missing.