Skip to content

Conformance checks

A report describes whether the named data or implementation satisfies the requirements under test. A valid package, for example, does not establish that its Form is usable on a particular Host.

This guide is non-normative. It explains how to read results; the conformance specification defines the requirements.

What is being verified?

SubjectMain checks
Form PackageDefinition, FormRef, canonical contents, declared files and allowed data formats
Interface / BindingDigests, definitions, operations and capabilities
SnapshotComplete data and references, and order-independent construction
HostAPI, resource lifecycle, concurrency, retries, identities and errors
ClientOnly declared settings are sent; FormRef is kept distinct from package identity
Publisher trust dataProvenance, signatures, publication records and revocation data

One result does not prove another subject's conformance or production readiness.

Run local verification

Fetch dependencies using the preparation steps, then run these commands at the repository root. The checks do not access the network or modify resources.

console
go run ./cmd/form-package verify conformance/takoform-v1/generic-host/external-family/counter-reservation

This checks the package index, declared files, FormRef and digests.

console
go run ./cmd/generic-conformance verify --manifest conformance/takoform-v1/generic.json

This checks package, Interface, Binding and Snapshot references, input-order independence and absence of partial results on failure. external-family and zero-family are fixtures, not real Forms or running Hosts.

Neither command performs Host resource operations, activates a Form or starts executable code.

Reading a report

  1. Check the subject of the report, not just status.
  2. Identify the verified definition using all four FormRef fields.
  3. Distinguish the package index's packageDigest from the definition's schemaDigest.
  4. Check publication and Host operation outcomes separately in the publisher's or Host's records.

Source code

Verification tools and fixtures are on GitHub. For checks of the OpenTofu implementation, see terraform-provider-takoform.

Read next

Specifications and source code are available on GitHub.