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

# NotExecuted

> Raised by an executor to assert the remote side did nothing (SPEC-v0.1 §5.5).

`ctrlrun.NotExecuted` — class, defined at `src/ctrlrun/errors.py:157`

```python theme={null}
from ctrlrun import NotExecuted
```

```python theme={null}
class NotExecuted(CTRLRunError)
```

Raised by an executor to assert the remote side did nothing (SPEC-v0.1 §5.5).

This is the *only* exception that maps to `FAILED` and therefore permits a retry.
Every other exception is an `AMBIGUOUS` outcome.

## Next

* [Python API index](/reference/api/index).
* [Get started](/get-started/quickstart) · [Why](/why).


## Related topics

- [Errors](/reference/errors.md)
- [Reconcile automatically](/guides/reconcile-automatically.md)
- [Outcomes and AMBIGUOUS](/concepts/outcomes-and-ambiguous.md)
- [Fail closed](/concepts/fail-closed.md)
- [Verify in CI](/guides/verify-in-ci.md)
