Catalog entries. Literal names and schema types are kept.
The frozen catalog.
Rules (spec 5.2): camelCase unique names; unique method + path pairs;
params, query and body are Zod objects with no field in more than one
of them; params keys equal the path's parameters; query fields accept
string input; request schemas convert to JSON Schema in both input and
output modes and JSON responses in output mode; non-JSON responses are
bytes or text. Every violation is reported at once.
CatalogDefinitionError listing every violation.
Validate entries against the catalog rules and freeze them into a catalog.