Specification · Section 14 of 14
Conformance
The seven things an implementation must do to call itself ANVIL v1 conformant.
An implementation is ANVIL v1 conformant if:
parsenever throws, for any input, including every prefix of every fixture.- Unknown kinds, sigils, attributes and field types degrade with a warning rather than being dropped silently or throwing.
- Derived ids depend only on content.
- Blocks render inert while the fence is incomplete.
swatch,fontandimgare allowlisted; everything else is escaped.- If it implements stamping: the five laws hold, stamps are idempotent on
(blockId, nonce), and expiry is enforced server-side. - If it delivers stamps to a model: they are framed as untrusted data.
Reference implementation: packages/parser and
packages/render-html.