Repository navigation
Merge develop into the tomography branch #374
Copy link
Copy link
Closed
Description
Activity
- added a parent issue
on Oct 2, 2026 - added a commit that references this issue
on Oct 2, 2026 These regression tests from the sp_validation audit should pass on the merged branch. They are on branch
assay/decision-record(audit epic #377). The tests in the first group already pass on develop, so they guard against the merge reintroducing the tomography branch's versions.Develop is right; the tomography branch regresses
- Joint xi+^B/xi-^B chi2 uses Hartlap p=n instead of 2n, so the joint PTE is too low (
b_modes.py:410). Keep develop'shartlap_factor(N, 2*nbins_eff).src/sp_validation/tests/regression/test_tomo_joint_pure_b_hartlap_dimension.py treecorr_configdropsmin_top=6andnum_threads, so xi± depends on the node's CPU count: 0.14 sigma between 16 and 48 CPUs on a jackknife fixture, 0.66 sigma at 256.src/sp_validation/tests/regression/test_tomo_drops_min_top_pin.py- The MC pure-E/B covariance rebins fine xi with a uniform mean instead of TreeCorr pair weights. sigma(xi+^B) shifts by 3-5%, and the [12,83]' B-mode PTE moves from 0.0385 to 0.0428.
src/sp_validation/tests/regression/test_tomo_mc_covariance_uniform_rebinning.py - Covariance and tau rules call scripts in an absolute external checkout, and GLASS outputs land outside the launch directory.
src/sp_validation/tests/regression/test_tomo_covariance_rules_call_external_checkout.py run_rho_tau.pychdirs into a hard-coded external checkout and reads itscat_config.yamlandoutput/.src/sp_validation/tests/regression/test_tomo_rho_tau_driver_external_checkout.py
The tomography branch is right; develop is wrong
- rho/tau ignore the configured
HSM_FLAG_PSF/HSM_FLAG_STARcut. Keep the tomography branch's_get_star_mask, forwarded to rho, tau andCovTauTh.src/sp_validation/tests/regression/test_rho_tau_ignores_hsm_flags.py - The rho/tau least-squares sample cache is not keyed on
cov_estimate_method. Keep the tomography branch'scov_typekey.src/sp_validation/tests/regression/test_lsq_sample_cache_ignores_cov_type.py
Defects in the tomography branch's own code
plot_pure_ebpasses the bin-keyed result tocalculate_eb_statisticsand raisesKeyError('gg'). Keep tomographic iteration.src/sp_validation/tests/regression/test_tomo_pure_eb_mapping_keyerror.pyplot_cosebishardcodescompute_tomography=False, so the flag has no effect.src/sp_validation/tests/regression/test_tomo_plot_cosebis_ignores_tomography.py_merge_iNKA_covariancefills lower cross-polarisation blocks withCOVAR_{pa}_{pb}.Tinstead ofCOVAR_{pb}_{pa}.T. All 12 cross-pol blocks are wrong.src/sp_validation/tests/regression/test_tomo_inka_merge_crosspol_transpose.py- Gaussian-sim workers write
..._seed_{seed}.npz, but the covariance reader looks for the unsuffixed name. It fails in a fresh directory and reads stale spectra otherwise.src/sp_validation/tests/regression/test_tomo_gaussian_sims_seed_filename_mismatch.py - Per-bin tau:
Catalogs.build_catalogin shear_psf_leakage removes the full-catalogue mean before applying the bin mask, leaving a tau_0/2/5 offset in each bin. The fix belongs in shear_psf_leakage; the test also fails on develop.src/sp_validation/tests/regression/test_tomo_tau_centering_before_bin_mask.py - The pseudo-C_ell covariance producer is broken on both branches. On develop,
get_theo_c_ellnow returns a dict (TypeError); see also the ell=0 convention in Fix one-multipole shift in the pseudo-Cℓ Gaussian covariance theory #372. The tomography branch calls the removedcalculate_pseudo_cl_eb_cov, andcv_pseudo_cl.pyomitspol_list.src/sp_validation/tests/regression/test_pseudo_cl_covariance_producer_crashes.py
Claude (Opus 5.5) on behalf of Cail
- Joint xi+^B/xi-^B chi2 uses Hartlap p=n instead of 2n, so the joint PTE is too low (
- added 14 commits that reference this issue
on Oct 3, 2026
Metadata
Metadata
Assignees
Labels
No labels
Step 3 of the epic: merge
develop(D) intofeature/sp_validation-extend-to-tomography(T) on an integration branch, with a PR into T.Resolution: keep T's API (bin-pair loops, renamed functions). Bring in D's:
open_entry/_CatalogueLoader, mandatorypatch_number;uv.lock.Ports, as separate commits:
cell_method == "map", in both the SACC window and the iNKA fiducial.Gate: the container test suite passes. Non-tomographic outputs (pseudo-Cℓ, ξ±, ρ/τ, COSEBIs, pure-E/B) on SP_v1.4.6.3 match D, apart from those ports.
Check
shear_psf_leakage: confirm that the mergeduv.lockpins a version that hasCovTauThmask support and the two-argumentcompute_xi_psf_sys. D's649edf4has both; T's0b3c175has neither. Then rerun the tomographic ρ/τ on the merged branch, rather than trusting earlier T outputs.Review: Sacha. Lisa reviews the real-space/ξ± part.
Traps git won't flag (found by reading the code):
pol_factorchanged from a bool to ±1. D'sconfig.yamlvaluetruewould silently drop the e2 flip, so set it to −1.summarize_bmodesswallows the KeyError from the new result shapes.cosmo_val/pseudo_cl.pycreates duplicate method definitions.cv_basenamestill assume the old names.— Claude on behalf of Cail