Skip to content

Phase 2: New planet discovery pipeline#5

Open
humancto wants to merge 4 commits intomainfrom
feat/phase2-new-planet-discovery
Open

Phase 2: New planet discovery pipeline#5
humancto wants to merge 4 commits intomainfrom
feat/phase2-new-planet-discovery

Conversation

@humancto
Copy link
Copy Markdown
Owner

@humancto humancto commented Mar 30, 2026

Summary

Phase 2 infrastructure for discovering new exoplanets on stars that TESS has never flagged.

  • python/download_sector_bulk.py — Downloads ALL light curves from a TESS sector via astroquery.mast, filters out known TOIs/cTOIs, optionally filters for FGK dwarf stars. Supports resume and saves a reproducibility manifest (targets.json).
  • python/flag_discoveries.py — Cross-references BLS candidates against 3 catalogs (TOI, cTOI, confirmed exoplanets) and classifies each as NEW, KNOWN_TOI, KNOWN_PLANET, or LOW_SCORE. Planet-sized (Rp/Rs < 0.3) new candidates are highlighted for ExoFOP cTOI submission.
  • Makefile targets: make phase2 PHASE2_SECTOR=56 runs the full pipeline (download → BLS → validate → flag)
  • 22 new tests (18 discovery flagging + 4 bulk download) — total now 124 (70 Rust + 54 Python)
  • CLAUDE.md updated with Phase 2 pipeline docs, architecture diagram, and sector selection strategy

Key insight

Phase 1 re-validated existing TOIs (stars TESS already flagged). Phase 2 downloads ALL stars from a sector and runs BLS on unstudied stars — any transit detection on a non-TOI star is potentially a genuinely new planet candidate.

Initial results (sector 56, SPOC, 174 stars)

  • 161 BLS detections (SNR >= 6.0)
  • 87 flagged as NEW (not in TOI/cTOI catalogs)
  • 0 planet-sized (Rp/Rs < 0.3) — expected for SPOC targets where planets are already TOIs
  • 1 marginal: TIC 219791066 (Rp/Rs=0.3079, Score=90) — needs deeper analysis
  • Next: run on QLP data (160k stars/sector) where real discoveries live

Phase 2 workflow

MAST query (all sector stars)
  → Filter out TOIs/cTOIs
  → Download non-TOI light curves
  → Rust BLS search (same engine)
  → Rust validation (tests 1-3, 5; test 4 skipped for non-TOIs)
  → Discovery flagging (cross-ref 3 catalogs)
  → NEW candidates → ExoFOP cTOI submission

Test plan

  • 22 new Python tests pass
  • 70 Rust tests pass (no changes to Rust code)
  • Full pipeline e2e: download → BLS → validate → flag on sector 56
  • Discovery report generated with correct classification
  • QLP data test (larger star count, higher discovery potential)

🤖 Generated with Claude Code

Add infrastructure for discovering new exoplanets on non-TOI stars:

- download_sector_bulk.py: Query MAST for all stars in a TESS sector,
  filter out known TOIs/cTOIs, optionally filter for FGK dwarfs,
  download light curves with resume support
- flag_discoveries.py: Cross-reference BLS candidates against TOI,
  cTOI, and confirmed planet catalogs to flag genuinely new detections
- Makefile targets: phase2, phase2-download, phase2-hunt, phase2-validate,
  phase2-flag for one-command pipeline execution
- 22 new Python tests (124 total: 70 Rust + 54 Python)
- CLAUDE.md updated with Phase 2 pipeline docs and architecture

The key insight: Phase 1 re-validated existing TOIs. Phase 2 downloads
ALL stars from a sector and runs BLS on unstudied stars — any transit
detection on a non-TOI star is potentially a new planet.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@chatgpt-codex-connector
Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

Archith and others added 3 commits March 29, 2026 21:47
Ran full Phase 2 pipeline on 883 non-TOI SPOC targets from sector 56.
828 BLS detections, 434 flagged NEW, 1 planet-sized (TIC 97168477).

Deep analysis of TIC 97168477 (Rp/Rs=0.277, Score=80):
- Multi-sector phase fold shows NO transit dip (depth = -54 ppm)
- BLS detected scatter/noise with only 2 transits in 27.9 days
- Confirmed false positive

Conclusion: SPOC 2-min targets are already well-searched by TESS pipeline.
Real discovery potential is in QLP/FFI data (160k stars/sector).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sector 70 FGK dwarfs (203 stars): 176 detections, 88 NEW, 0 planet-sized.
Same pattern as sector 56 — SPOC targets already searched by TESS pipeline.

Key insight: SPOC 2-min targets have already been transit-searched by the
TESS TPS module. Non-TOI SPOC stars were searched and cleared. Our BLS finds
the same eclipsing binaries SPOC correctly rejected.

Real discovery potential requires FFI data (200k+ unsearched stars/sector)
via QLP bulk download, eleanor, or multi-sector stacking approaches.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…lti-sector)

Built and tested three independent FFI light curve extraction pipelines
to access 1M+ unstudied stars per sector that SPOC never transit-searched:

- download_ffi_tesscut.py: pixel-level aperture photometry from TESScut cutouts
- download_qlp_bulk.py: bulk QLP HLSP download (key fix: obs_collection="HLSP")
- stack_multisector.py: multi-sector stitching for sub-threshold detection

Tested end-to-end: QLP sector 40 = 1,037,873 targets, sector 56 = 1,132,613.
Multi-sector stacking: 26,665 pts across 811.8 days from 5 sectors.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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