# 25-haskell-state This example shows intermediate Haskell planning with `State`. It includes: - a planner state that tracks build numbers and rollout waves, - stateful allocation of per-environment wave numbers, - a CLI that renders a deployment plan from compact request strings, and - a test suite run by `nix flake check`. Useful commands: ```bash nix develop cabal run cabal run -- api:production:3 worker:staging:1 cache:production:2 cabal test nix build ./result/bin/mini-state-planner api:production:3 worker:staging:1 cache:production:2 nix run . -- api:production:3 worker:staging:1 cache:production:2 nix flake check ```