Skip to main content

Preflight

What exactly am I about to commit?

Preflight is a deterministic, read-only CLI that inspects the Git index immediately before git commit. It summarizes the staged snapshot and reports evidence-backed repository states developers commonly regret committing.

python -m pip install evo-preflight
preflight

Preflight inspects staged paths and blob sizes, common generated artifacts, tracked files matching .gitignore, foundational repository files, and the repository default branch. Every finding says what was observed, why it matters, and a suggested fix.

It never blocks a commit, changes repository state, runs tests or builds, scans secrets, certifies releases, installs hooks, uses AI, sends telemetry, or accesses the network.

Commands

preflight
preflight --json
preflight --largest
preflight --version
preflight explain large-staged-file
preflight --config preflight.toml

Findings always return exit code 0. Exit code 2 means the repository or configuration is unavailable; 3 means an unexpected internal error occurred.

What it reports

  • staged files of at least 100 MB;
  • staged snapshots of at least 500 MB, with largest contributors;
  • Python caches: __pycache__, *.pyc, and *.pyo;
  • virtual environments: .venv and venv;
  • build artifacts: build, dist, *.whl, and *.egg-info;
  • *.jsonl and configured generated directories;
  • tracked files matching standard Git ignore rules;
  • a missing root README, LICENSE, or .gitignore;
  • a default branch named master, reported without claiming it is wrong;
  • the ten largest tracked files when --largest is requested.

Preflight reads staged content from Git, so unstaged edits are never described as part of the next commit.

Configuration

Preflight automatically reads preflight.toml from the repository root. Configuration is declarative, has no commands or scripting, and rejects unknown keys.

version = 1

[limits]
large_file_mb = 100
large_snapshot_mb = 500

[generated]
directories = ["benchmarks/results", "telemetry"]

Development

python -m pip install -e ".[dev]"
ruff check .
mypy
python -m unittest discover -s tests -v
python -m build
twine check dist/*

See CONTRIBUTING.md for the contribution workflow and CHANGELOG.md for release history.

Download files

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

Source Distribution

evo_preflight-0.1.0.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

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

evo_preflight-0.1.0-py3-none-any.whl (12.0 kB view details)

Uploaded Python 3

File details

Details for the file evo_preflight-0.1.0.tar.gz.

File metadata

  • Download URL: evo_preflight-0.1.0.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for evo_preflight-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fce701748c0dd091525905f4d1e98a3b969df89e9472f0015483256535aef3c9
MD5 4475ab5be77f8e93109bb2b4b2cfe259
BLAKE2b-256 1b5f14d96d7ecf5d584bb16a2b9505cb743d49735f8f5f8bb9eb7932c724ed15

See more details on using hashes here.

Provenance

The following attestation bundles were made for evo_preflight-0.1.0.tar.gz:

Publisher: release.yml on evo-engineering-llc/evo-preflight

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

File details

Details for the file evo_preflight-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: evo_preflight-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for evo_preflight-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b2837aaa34f0d1902cd5b238423aac486821243edc03b9de5ed8ad01f0378715
MD5 28d651fe5915136f9bc2169f06987dd0
BLAKE2b-256 ce14e76d3ecbf0c2f3926d5e2cddbba712fe7dca15a042570f9d6b8c0092578a

See more details on using hashes here.

Provenance

The following attestation bundles were made for evo_preflight-0.1.0-py3-none-any.whl:

Publisher: release.yml on evo-engineering-llc/evo-preflight

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page