> ## 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-RESULT-0005: Try body error types are not fully covered by except arms.

> Try body error types are not fully covered by except arms.

`SIFR-RESULT-0005` belongs to the **Result and typed errors** diagnostic family. It means: try body error types are not fully covered by except arms.

## Why It Happens

A typed failure path is being ignored or described with an invalid error type. Handle the `Result`, propagate it, or use a valid error type.

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

## Erroneous Code

```python theme={null}
read_text("notes.txt")
```

## How To Fix It

Handle typed failures explicitly. Use `try`/`except`, return the `Result`, or otherwise consume the value so failures cannot be ignored.

## Fixed Code

```python theme={null}
try:
    text = read_text("notes.txt")
except IOError as e:
    text = ""
```

## Details

| Field                  | Value                                                              |
| ---------------------- | ------------------------------------------------------------------ |
| Code                   | `SIFR-RESULT-0005`                                                 |
| Family                 | `RESULT`                                                           |
| Severity               | Error                                                              |
| Stability              | stable                                                             |
| Owner                  | `sifr_lowering::lower::statements`                                 |
| Representative fixture | `crates/sifr/tests/e2e/fail/try_except_uncovered_error_types.sifr` |

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