Skip to content

unknown_form

A form’s head name is not declared by any loaded plugin.

Forms must be declared by some plugin reachable from the document (either inlined as a (plugin …) declaration, or imported via (use-plugin …)). Qualified spellings (<plugin>/<form>) bypass ambiguity when two plugins declare the same name.

If the head is a typo, the rich format suggests the nearest spelling under the loaded vocabulary. If the head exists in a plugin you forgot to import, the suggestion includes the import path.

The same code is raised at schema load for a :lowering :produces entry that names no declared form. A bare entry resolves local-first, like a form head at validation: it may name a slot-local form reachable through the list (declared inside a form the same list resolves) or a global form. A local listed without its declaring form is this diagnostic, and the message names the form the list is missing; a qualified entry (<plugin>/<form>) bypasses locals and resolves global-only.


Run sjon explain unknown_form to read this at a terminal, browse every code, or work through diagnostics-driven repair if you want the habit rather than the answer.