# LINT_MODULE_STATE

A module-level name is changed by strategy code, so results depend on what ran before.

## What happened

A list, dictionary or set defined at the top of the file is changed inside a hook or a function. It keeps its contents between runs in the same process, so the second run does not start where the first one did.

## What to do

Keep state on the strategy itself, set in `on_start`, so every run starts clean.

## Example

```text
strategy.py, line 9: A module-level `seen` is changed by strategy code, so results depend on what ran before. [LINT_MODULE_STATE]
```

The wording of the message depends on your file, and the code does not. A warning does not stop the file from loading.
