Skip to content

Generalize Tracer Framework and Add CMB Lensing Support#616

Draft
vitenti wants to merge 15 commits intomasterfrom
tracer_generalization
Draft

Generalize Tracer Framework and Add CMB Lensing Support#616
vitenti wants to merge 15 commits intomasterfrom
tracer_generalization

Conversation

@vitenti
Copy link
Collaborator

@vitenti vitenti commented Feb 9, 2026

Description

This PR generalizes Firecrown's tracer system to support multiple types of projected fields beyond galaxy redshift distributions, with CMB lensing as the first new implementation. The refactoring introduces a flexible ProjectedField protocol that enables the framework to work with different types of tracers while maintaining backwards compatibility.

Fixes #606, #607

Type of change

  • New feature (non-breaking change which adds functionality)
  • Refactoring

Checklist:

The following checklist will make sure that you are following the code style and
guidelines of the project as described in the
contributing page.

  • I have run bash pre-commit-check and fixed any issues
  • I have added tests that prove my fix is effective or that my feature works
  • I have made corresponding changes to the documentation
  • I have 100% test coverage for my changes (please check this after the CI system has verified the coverage)

@codecov
Copy link

codecov bot commented Feb 10, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.0%. Comparing base (5d36572) to head (9718adb).

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #616   +/-   ##
=======================================
  Coverage   100.0%   100.0%           
=======================================
  Files         151      151           
  Lines        9044     9076   +32     
  Branches     1033     1042    +9     
=======================================
+ Hits         9044     9076   +32     
Files with missing lines Coverage Δ
firecrown/app/sacc/_utils.py 100.0% <100.0%> (ø)
firecrown/generators/_inferred_galaxy_zdist.py 100.0% <100.0%> (ø)
firecrown/likelihood/_cmb.py 100.0% <100.0%> (ø)
firecrown/likelihood/_two_point.py 100.0% <100.0%> (ø)
firecrown/likelihood/_weak_lensing.py 100.0% <100.0%> (ø)
firecrown/likelihood/number_counts/_factories.py 100.0% <100.0%> (ø)
firecrown/likelihood/number_counts/_source.py 100.0% <100.0%> (ø)
firecrown/metadata_functions/_combination_utils.py 100.0% <100.0%> (ø)
firecrown/metadata_functions/_extraction.py 100.0% <ø> (ø)
firecrown/metadata_functions/_matching.py 100.0% <100.0%> (ø)
... and 4 more
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@vitenti vitenti linked an issue Feb 10, 2026 that may be closed by this pull request
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.

CMB Lensing Tracer Implemented as N(z) tracer post PR make_all_photoz_bin_combinations_with_cmb has duplicated correlations (my bad!)

2 participants