tuff-hooks-spec
tuff-hooks-spec defines Tuff's canonical hook vocabulary and compatibility
matrix types.
The crate is intentionally small and Tuff-owned. It exists so Tuff-standard hooks can be described once and rendered into native harness hook formats where an adapter declares compatible support. Native harness hook fragments remain outside this layer and are passed through by Tuff adapters.
Harness version bounds are optional. When Tuff knows that behavior changed in a
specific harness version, adapters can fill in since_harness_version and
until_harness_version. When the version is unknown, those fields should remain
empty rather than using placeholder values.
The vocabulary this crate defines is published as the Tuff Hooks
Specification, together with every
adapter's compatibility matrix, a conformance checklist, and a JSON Schema for
the machine-readable form. tuff hooks spec --json prints that document from
the running binary, and the repository's spec/hooks/ copy is generated from
it, so the published specification cannot say something the code does not do.