puzz is the puzzle wing of an experiment running across this repo: take a vast combinatorial space, generate it deterministically from a seed, and put an interestingness engine on top to decide which points are worth a second look. The atlas of worlds at mappa does it for planets; the Ludographer does it for board games. Here the domain is logic puzzles — and the interestingness engine is something special: a real solver.
For most generated artifacts, "is this interesting?" is a matter of taste you approximate with a hand-tuned battery or a learned critic. A logic puzzle is different. There is a precise, checkable notion of a good one:
So the solver does triple duty: it certifies, it grades, and — ranking seeds by a small battery of aesthetic signals built from the trace — it curates. Every number on the page line is a puzzle no human authored; the solver vouched for each one.
Two puzzle types share a single boolean-cell deduction engine:
A square grid in two colors. No three of a color in a row; each line balanced; no two lines alike.
The engine deduces with three named techniques — no-triple, line balance,
unique lines — and the grade reflects which a given puzzle needs.
Row and column run-length clues reconstruct a hidden picture. The engine is a real nonogram line-solver;
it distinguishes free overlap (a long run forced to overlap itself) from cross-chaining
(a cell known from one line constraining the crossing one).
The interesting claim isn't the count of puzzle types — it's that one solver certifies, grades, and ranks every instance, turning a combinatorial space into an atlas you navigate by interestingness. Adding a genus — Star Battle, Slitherlink, Akari — is one module implementing the same contract: a propagator with a complete validity check, a seeded generator, and a technique-tier table. Those harder genera will populate the upper difficulty tiers these two gentle ones leave open.
Page number n yields the identical puzzle on every machine, for ever (seeded
xmur3 → mulberry32, the repo's standard pair). That's what makes
/puzz/?n=42 a permalink rather than a fresh roll.