Your generated UI, reviewed against the catalog that was supposed to constrain it
Paste the defineCatalog(...) that defines what your model may emit — or the same
thing as JSON — and a spec it actually produced. You get the things that will not render, the
props the catalog should never have allowed, the state paths nothing writes, a corrected spec
that is re-checked in your browser, and the schema changes that make each class of defect
impossible.
Both examples ship with a saved model run, so you can see the whole output — including the corrected spec and the catalog upgrades — without signing in and without spending a credit.
What this does, and what it does not
The walk above the run button is real parsing, not a keyword search. The catalog goes through a
brace-matching reader that pulls out every component, its z.object props and its
description — or reads a JSON catalog directly — and the spec goes through a tolerant JSON parse
that reports what it had to repair. Then the element graph is actually walked: children resolved
by id, reachability from the root, cycles, two parents on one node, every type
checked against the catalog, every prop against the declared schema, every
$state, $cond, $template and $computed
expression checked for shape, and every state path that is read matched against the ones
something actually writes. Everything it finds is handed to the model as facts it must
reconcile, and the review is checked against them afterwards — if the model skips a flag, this
page says so.
When the review comes back with a corrected spec, that spec is walked again in your browser against the same catalog, and the page reports how many of the original flags it genuinely cleared and whether it introduced any new ones. That check is free, and it is the honest answer to "did the model actually fix it".
It reviews; it does not render. Nothing on this page mounts your components or executes your
catalog, and the corrected spec is a suggestion to review rather than a build artifact. A
catalog whose components come from a spread such as
...standardComponentDefinitions cannot be enumerated by a parser, so unknown-type
checks are suppressed rather than guessed at, and the review says so.
Nothing to hand? Load the , a spec whose last branch never arrived, against a catalog that let a currency through as a free-form string — or the , which mostly wants confirmation. Both replay a saved run for free.