> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sifr.sh/llms.txt
> Use this file to discover all available pages before exploring further.

# SIFR-PYENV-0003: A package graph requires Python but no root environment is selected.

> A package graph requires Python but no root environment is selected.

`SIFR-PYENV-0003` belongs to the **Embedded CPython environment** diagnostic family. It means: a package graph requires Python but no root environment is selected.

## Why It Happens

The selected Python environment is missing, malformed, ambiguous, or fails probe/ABI checks. Configure exactly one root-application uv environment and ensure the interpreter, site-packages, and declared imports are available.

<Info>
  Use `sifr --explain SIFR-PYENV-0003` locally to see the renderer's exact message template and any machine-applicable suggestions for the compiler version you are running.
</Info>

## Details

| Field                  | Value                                                                                          |
| ---------------------- | ---------------------------------------------------------------------------------------------- |
| Code                   | `SIFR-PYENV-0003`                                                                              |
| Family                 | `PYENV`                                                                                        |
| Severity               | Error                                                                                          |
| Stability              | stable                                                                                         |
| Owner                  | `sifr_package::python`                                                                         |
| Representative fixture | `crates/sifr_package/src/python/tests.rs::missing_uv_environment_selection_reports_pyenv_0003` |

See the [Error Codes index](/diagnostics/error-codes) for the complete catalog.
