# `Lockstep.Linter`
[🔗](https://github.com/b-erdem/lockstep/blob/v0.1.0/lib/lockstep/linter.ex#L1)

Compile-time AST scanner that warns when a `ctest` body uses operations
that aren't routed through Lockstep's controller. Bare `send`, bare
`receive`, `Process.send_after`, `GenServer.call`, `Task.async`, and
similar will silently break the controlled schedule -- better to warn
at compile time than have the user wonder why nothing reproduces.

False positives (your project genuinely defines `MyMod.send/2` and
the linter flags `send/2` calls) can be silenced by qualifying the
call (`Kernel.send(...)`) or by `import`ing nothing.

# `lint`

Walk `ast` and emit `IO.warn/2` for each unwrapped operation found.
Always returns the AST unchanged.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
