Skip to main content

SXS — SCIX Exoplanet Search

Exoplanet Search

A reproducible Kepler transit-recovery, signal-ranking, and independent-vetting pipeline.

Continuous integration CodeQL Public distribution test Latest release Python 3.11 and 3.12 SXS Source-Available Commercial License 1.0 No confirmed discovery

Abstract · CLI Preview · Results · Methodology · Installation · Reproduction · Data · Citation · Documentation · License

[!IMPORTANT] SXS does not claim the discovery, validation, or confirmation of a new exoplanet. Model scores prioritize review; they are not planetary probabilities. Every candidate output requires independent scientific confirmation.

Abstract

SXS is a computational astronomy system for detecting and reviewing transit-like signals in public Kepler photometry. It combines segment-aware light-curve preprocessing, Box Least Squares (BLS) period searches, target-grouped machine learning, catalog screening, empirical false-alarm analysis, physical transit fitting, and external evidence from Gaia and TESS. The research evaluates both end-to-end recovery on confirmed systems and a deterministic candidate search among targets without cataloged KOI or confirmed-name history. Its final independent review produced 0 strong candidates, 1 weak candidate, and 19 likely false positives—a reproducible methodology and negative-result record, not a planet-discovery claim.

CLI preview

Exoplanet Search command-line help

Recorded CLI output, rendered as a terminal preview—not a graphical application. See the preview gallery for the baseline dry-run view, copyable output, and commands to try locally.

Key results

Evaluation Result Interpretation
Baseline BLS top-five recovery 15/36 (41.67%) Confirmed planets recovered within the fixed search domain
Baseline RF end-to-end recovery 12/36 (33.33%) Confirmed planets retained after detection and ranking
Scaled BLS top-five recovery 227/434 (52.30%) Recovery on the quality-filtered confirmed-planet benchmark
RF v2 precision / recall 0.412 / 0.903 Target-grouped out-of-fold metrics at threshold 0.221107
RF v2 false-positive rate 0.146 292 false passes among 2,000 negative peaks
Bounded candidate search 250 targets; 1,250 peaks Deterministically selected workstation-scale sample
Frozen review queue 20 signals Highest-ranked signals passing preliminary checks
Independent review 0 strong; 1 weak; 19 likely FP Final classification using independent evidence rules

The sole weak signal, KIC 8300900-r1, has a period of 5.090289 days and empirical BLS false-alarm probability 20/1,001 = 0.01998. It has no supporting TESS period match and is not a confirmed exoplanet.

Methodology

  1. Acquire public Kepler light curves and catalog ground truth through MAST and the NASA Exoplanet Archive.
  2. Prepare each observing segment with quality filtering, normalization, and Savitzky–Golay detrending.
  3. Search the 0.5–50 day domain with BLS and retain distinct top-ranked periods.
  4. Qualify Random Forest and compact 1D CNN rankers with StratifiedGroupKFold, keeping every target in only one fold.
  5. Screen a deterministic 250-target sample after excluding cataloged KOI and confirmed-name history.
  6. Audit independently with segment-shuffle FAP, odd/even and secondary-eclipse tests, limb-darkened transit fits, stellar-radius plausibility, Gaia scene analysis, TESS photometry, and TOI lookup.
  7. Record evidence as versioned configurations, machine-readable tables, figures, and reports.

Ranking and scientific validation are deliberately separated. The independent audit does not reuse model probabilities in its decision rules.

Architecture

flowchart LR
    A[(Kepler<br/>photometry)] --> B[Quality control<br/>and detrending]
    B --> C[BLS<br/>period search]
    C --> D[RF / CNN<br/>signal ranking]
    D --> E[Catalog and<br/>morphology screen]
    E --> F[Independent audit<br/>FAP · fit · Gaia · TESS]
    F --> G[(Evidence record<br/>tables · figures · reports)]
Layer Main implementation Responsibility
Acquisition src/ingest/ Mission products and catalog snapshots
Signal processing src/preprocess/, src/detect/ Cleaning, detrending, and BLS searches
Ranking src/model/, src/scaleup/ Feature extraction and grouped ML evaluation
Scientific review src/independent_validation/, src/validate/ Independent tests, catalog checks, and evidence classification
Orchestration src/cli.py, configs/ Reproducible commands and decision rules

Installation

SXS supports Python 3.11 and 3.12. Windows received the full workstation research validation; the CI matrix tests the deterministic core and installed wheel on Ubuntu, Windows, and macOS.

Platform downloads

Platform Release bundle Installation entry point
Windows Download .zip PLATFORM_INSTALL.md using PowerShell
macOS Download .tar.gz PLATFORM_INSTALL.md using Terminal
Linux Download .tar.gz PLATFORM_INSTALL.md using a POSIX shell

All three bundles contain the same Python source and scientific record. Verify downloads against SHA256SUMS.txt.

For CLI use without a checkout, download the standalone wheel, verify its checksum, and install it in a Python virtual environment:

python -m pip install scix_exoplanet_search-1.3.0-py3-none-any.whl
sxs demo --output demo

Open demo/report.html. The wheel bundles default configurations, not observations or trained models. See the installation guide.

Container package (GHCR)

The Python application is packaged as a Linux/amd64 container, including the complete scientific dependencies. Windows and macOS require a Linux-container runtime; this is not a native executable for those platforms.

The GHCR package is public. Anonymous pull and runtime verification for the numbered release is performed by the Public distribution workflow; no GitHub login is needed.

docker pull ghcr.io/science-experimental-technologies/exoplanet-search:v1.3.0
docker run --rm ghcr.io/science-experimental-technologies/exoplanet-search:v1.3.0 --help

v1.3.0 is the numbered container release; main follows tested default-branch builds. See the container guide for persistent data, digest pinning, local builds, and initial package visibility setup. There are no npm, NuGet, Maven, or RubyGems packages: SXS currently has no SDK in those languages.

Install from Git

git clone https://github.com/Science-Experimental-Technologies/Exoplanet-Search.git
cd Exoplanet-Search
py -3.11 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
python -m pip install -r requirements.txt

On Linux or macOS, create the environment with python3.11 -m venv .venv and activate it with source .venv/bin/activate.

Choose the dependency profile appropriate to the task:

  • requirements-core.txt — acquisition, preprocessing, BLS, validation, and CI;
  • requirements.txt — complete scientific and machine-learning environment;
  • requirements-ml.txt — compatibility alias for the complete environment; and
  • requirements-docs.txt — documentation website, manuscript, and PDF build support.

Reproduction

Try an isolated offline example

Analysis workbench commands included in v1.2.0:

python -m src.cli demo --output runs/demo
python -m src.cli analyze --input runs/demo/input.csv --time-system relative --output runs/analysis
python -m src.cli inject --periods 3 --depths 0.005 --repeats 5 --output runs/injections
python -m src.cli evaluate --demo --trees 20 --bootstrap 100 --output runs/evaluation

Open runs/demo/report.html for the offline analysis report. These synthetic examples do not constitute scientific discoveries or update archived metrics. The workbench guide covers FITS/KIC input, model compatibility, HTML reports, injection recovery, and nested grouped evaluation. Output folders must be new. Legacy workflows accept --workspace DIR for separate configs and outputs; their --resume now requires content-verified checkpoints rather than archived reports alone.

Reproduce the research workflow

The unified interface names workflows by scientific responsibility:

# Inspect the baseline workflow without writing artifacts
python -m src.cli baseline --config configs/base.yaml --dry-run

# Execute the baseline (required before scale-up in an empty workspace)
python -m src.cli baseline --config configs/base.yaml

# Reproduce scaled training and model qualification
python -m src.cli scaleup --config configs/scaleup.yaml

# Run the bounded candidate screen
python -m src.cli search --config configs/candidate_search.yaml

# Run the independent evidence audit
python -m src.cli validate --config configs/independent_validation.yaml --stage all

Full searches can download public mission products, consume substantial storage, and run expensive period grids. Review the chosen configuration before execution.

Use a separate checkout for a new run: tracked reports are frozen evidence, not proof that the untracked light curves and model binaries exist. Add --resume only after verifying that those artifacts belong to the same run. See the reproducibility guide.

Verify the deterministic core with:

python -m pytest -m "not network"
python -m src.cli baseline --config configs/base.yaml --dry-run

The live MAST integration test is opt-in:

$env:SXS_RUN_NETWORK_TESTS = "1"
python -m pytest -m network tests/test_mast_client_network.py

Datasets and research record

SXS uses public upstream data but does not relicense or take ownership of it.

Source Role in SXS
MAST / Kepler Time-series photometry and product inventory
NASA Exoplanet Archive Confirmed-planet and KOI false-positive ground truth
Gaia Archive Nearby-source and stellar-context evidence
TESS Independent photometric comparison where available
ExoFOP Public TOI cross-check

Project-authored evidence is tracked in these records:

Repository structure
configs/       Versioned workflow and decision-rule configuration
data/          Catalog snapshots, compact evidence tables, and cache roots
models/        Model-selection metadata; large fitted binaries are untracked
reports/       Scientific reports, metrics, figures, and release audits
scripts/       Publication and artifact utilities
src/           Acquisition, preprocessing, detection, ranking, and validation
tests/         Deterministic unit and integration tests

Scientific limitations

  • The selected benchmarks do not support exoplanet occurrence-rate inference.
  • RF and CNN outputs are review-prioritization scores, not calibrated posterior probabilities.
  • The empirical shuffle FAP is conditional on the preprocessing, null construction, and search grid; it is not a VESPA-style Bayesian probability.
  • The bounded search uses four Kepler products per target even where additional data exist.
  • No new spectroscopy, high-resolution imaging, or pixel-level physical follow-up was performed.
  • Catalog absence does not establish astrophysical novelty.

Read DISCLAIMER.md before interpreting or redistributing candidate results.

Citation

If SXS materially supports your research or technical work, cite the release metadata in CITATION.cff:

Andrean, R. (2026). SCIX Exoplanet Search (SXS): Reproducible Kepler
Transit Recovery and Independent Vetting (Version 1.3.0).
Science Experimental Technologies.
https://github.com/Science-Experimental-Technologies/Exoplanet-Search

Also cite the relevant mission archives, catalogs, and scientific software—including Lightkurve, Astroquery, and batman—when their data or methods are used.

Creator, affiliation, and funding

SXS was created and developed by Rasya Andrean under Science Experimental Technologies. Visit the project website for documentation.

The project was independently funded by Rasya Andrean and Urus Foundation.

For research collaboration, commercial licensing, or royalty administration, contact scix.official@gmail.com.

Contributing

Focused bug reports, reproducibility improvements, and scientifically justified pull requests are welcome. Read CONTRIBUTING.md and the Code of Conduct before contributing. Contributions retain their repository-recorded credit but do not remove the original creator attribution or alter the project license.

New users can follow the independent testing protocol and report installation or usability problems through the dedicated issue template.

License and commercial use

Current revisions are distributed under the SXS Source-Available Commercial License 1.0. This is a source-available license, not an OSI-approved open-source license.

  • Public projects, deployments, and outputs materially using SXS must credit Rasya Andrean and Science Experimental Technologies.
  • Academic and technical publications must use the release citation in CITATION.cff.
  • Commercial use requires registration, quarterly reporting, and a 10% royalty on Covered Revenue, unless a separate signed agreement applies.
  • Award or competition submissions materially enabled by SXS must provide the required acknowledgment where applicable rules permit.

See COMMERCIAL_USE.md for the practical process and NOTICE for the required attribution. The full LICENSE controls if any summary differs.

The tagged v1.0.0 release was previously distributed under MIT. Rights already granted with copies of that release are not retroactively withdrawn; the current license governs revisions carrying it. Obtain qualified legal review before relying on custom license terms for material commercial activity.

(back to top)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scix_exoplanet_search-1.3.0-py3-none-any.whl (139.5 kB view details)

Uploaded Python 3

File details

Details for the file scix_exoplanet_search-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for scix_exoplanet_search-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f09ed7adf4084e7a68a359282569d412f04268eb11bb877532965612b7098724
MD5 78b4ed9f3dd08705b51d10989c487152
BLAKE2b-256 1799b9959c1d7a44aa55d095a41fafd868c33fb26c85859666f77f22a96dc6d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for scix_exoplanet_search-1.3.0-py3-none-any.whl:

Publisher: publish-pypi.yml on Science-Experimental-Technologies/Exoplanet-Search

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.3.0 This release

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page