26 lines
639 B
Markdown
Raw Permalink Normal View History

# 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
```