Fiducial cosmology to Firecrown and TJPCov stages - #28
Merged
Conversation
eduardojsbarroso
added a commit
that referenced
this pull request
Aug 7, 2026
…nning
Both predate this branch's rename work:
- examples/cosmodc2_halos/Firecrown.yml had a stray trailing `---`
(leftover multi-doc separator), which makes yaml.safe_load() -- what
ceci's own Pipeline.build_config() uses -- refuse to parse it
("expected a single document in the stream").
- None of cosmoDC2-20deg2/{Firecrown,TJPCov}.yml, cosmodc2_halos/
{Firecrown,TJPCov}.yml, or SDSS_data/CL_SDSS_concat.yml declared
fiducial_cosmology as an input, even though #28 added it as a
required input to CLPFirecrown/CLPCovariance. Every other
cosmodc2-based example in the repo (redmapper, capish_simulation)
points it at the same shared IN2P3 path, so these now do too.
Verified by constructing the actual ceci pipeline graph for all 5
files (Pipeline.create()) -- previously all 5 failed at graph
construction; all 5 now succeed and resolve outputs to
sampler_file.ini/likelihood_file.py/priors_file.ini as expected.
eduardojsbarroso
added a commit
that referenced
this pull request
Aug 7, 2026
…line The assertion compared the SSC-replaced variance against the mock fixture's hardcoded data value (40.0), not against the theory model's own prediction for that bin. But replace_crow_counts only guarantees full_cov[i, i] >= theory_counts[i] (Poisson term + non-negative SSC addition) -- there's no guarantee theory_counts[i] itself equals the arbitrary mock value, and #28's fiducial-cosmology change (using fiducial_cosmology.to_ccl(), which doesn't set transfer_function) shifted that prediction to ~39.67, just under 40, breaking the test. Exposes the actual theory prediction as stage.crow_theory_counts (set right before replace_crow_counts returns) so the test can assert against the real invariant instead of an incidental match to the fixture's round number.
eduardojsbarroso
added a commit
that referenced
this pull request
Aug 7, 2026
…nning
Both predate this branch's rename work:
- examples/cosmodc2_halos/Firecrown.yml had a stray trailing `---`
(leftover multi-doc separator), which makes yaml.safe_load() -- what
ceci's own Pipeline.build_config() uses -- refuse to parse it
("expected a single document in the stream").
- None of cosmoDC2-20deg2/{Firecrown,TJPCov}.yml, cosmodc2_halos/
{Firecrown,TJPCov}.yml, or SDSS_data/CL_SDSS_concat.yml declared
fiducial_cosmology as an input, even though #28 added it as a
required input to CLPFirecrown/CLPCovariance. Every other
cosmodc2-based example in the repo (redmapper, capish_simulation)
points it at the same shared IN2P3 path, so these now do too.
Verified by constructing the actual ceci pipeline graph for all 5
files (Pipeline.create()) -- previously all 5 failed at graph
construction; all 5 now succeed and resolve outputs to
sampler_file.ini/likelihood_file.py/priors_file.ini as expected.
eduardojsbarroso
added a commit
that referenced
this pull request
Aug 10, 2026
* New chains with no purity * Rename CLPipeline to CLPipe; rename stage classes and Firecrown output tags - clpipeline package/module/imports -> clpipe (dir, files, CLI entrypoint, conda env names, CI, docs, examples, notebooks, tutorials) - FirecrownPipeline -> CLPFirecrown, TJPCovPipeline -> CLPCovariance (class names, stage `name`, config yml top-level keys, module_name paths) - FirecrownPipeline outputs renamed at the ceci tag level: cluster_counts_mean_mass_redshift_richness -> sampler_file, cluster_redshift_richness -> likelihood_file, cluster_richness_values -> priors_file. On-disk output filenames are unchanged: added `aliases:` blocks to every example pipeline yml declaring the CLPFirecrown stage so ceci's default tag->filename naming still resolves to the old basenames. * Point pyproject.toml URLs at the LSSTDESC org, not a personal fork Homepage/Issues still referenced eduardojsbarroso/CLPipe from before the repo lived under the LSSTDESC org; the CLPipeline->CLPipe rename carried that stale owner forward verbatim. * Drop ceci aliases for CLPFirecrown; on-disk names now match the new tags Aliases would have kept output filenames pinned to the old cluster_counts_mean_mass_redshift_richness/cluster_redshift_richness/ cluster_richness_values basenames forever. Instead, let ceci's default tag->filename naming apply, so outputs are written as sampler_file.ini, likelihood_file.py, and priors_file.ini: - Removed the aliases: block from all 36 example pipeline ymls. - clp_firecrown.py's generated sampler ini now cross-references its sibling likelihood/values files by their actual (computed) basenames instead of hardcoding the old ones. - Renamed the 10 checked-in example output artifacts and fixed the values=/likelihood_source= lines inside each generated sampler_file.ini. - Updated every launch_*.sh that invoked `cosmosis cluster_counts_mean_mass_redshift_richness.ini` to `cosmosis sampler_file.ini`. - Updated tests/test_clp_firecrown.py to match. * Fix test_ssc_replaced_counts_variance_at_least_poisson's Poisson baseline The assertion compared the SSC-replaced variance against the mock fixture's hardcoded data value (40.0), not against the theory model's own prediction for that bin. But replace_crow_counts only guarantees full_cov[i, i] >= theory_counts[i] (Poisson term + non-negative SSC addition) -- there's no guarantee theory_counts[i] itself equals the arbitrary mock value, and #28's fiducial-cosmology change (using fiducial_cosmology.to_ccl(), which doesn't set transfer_function) shifted that prediction to ~39.67, just under 40, breaking the test. Exposes the actual theory prediction as stage.crow_theory_counts (set right before replace_crow_counts returns) so the test can assert against the real invariant instead of an incidental match to the fixture's round number. * Fix pre-existing gaps blocking the 3 target examples from actually running Both predate this branch's rename work: - examples/cosmodc2_halos/Firecrown.yml had a stray trailing `---` (leftover multi-doc separator), which makes yaml.safe_load() -- what ceci's own Pipeline.build_config() uses -- refuse to parse it ("expected a single document in the stream"). - None of cosmoDC2-20deg2/{Firecrown,TJPCov}.yml, cosmodc2_halos/ {Firecrown,TJPCov}.yml, or SDSS_data/CL_SDSS_concat.yml declared fiducial_cosmology as an input, even though #28 added it as a required input to CLPFirecrown/CLPCovariance. Every other cosmodc2-based example in the repo (redmapper, capish_simulation) points it at the same shared IN2P3 path, so these now do too. Verified by constructing the actual ceci pipeline graph for all 5 files (Pipeline.create()) -- previously all 5 failed at graph construction; all 5 now succeed and resolve outputs to sampler_file.ini/likelihood_file.py/priors_file.ini as expected.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.