Spec Conformance Status¶
Last updated: 2026-03-22
This repository makes profile-scoped conformance claims rather than claiming coverage against the full external HTML ecosystem.
Current Summary¶
| Format | Profile | Claim | Evidence basis |
|---|---|---|---|
| HTML | default |
100% | Repo manifest plus Python conformance runners and Rust seam/backend conformance runners |
| T-HTML | default |
100% | Repo manifest plus Python runtime conformance runners and Rust seam/backend conformance runners |
Current manifest totals:
- HTML
default: 34 cases - T-HTML
default: 47 cases
The current matrix now explicitly covers:
- HTML escaping,
RawHtml,Renderable, fragment insertion, spread merge, class normalization, boolean attrs, parse errors, formatter raw-source fidelity, cache-key derivation, and semantic diagnostic spans - T-HTML component resolution, explicit and captured scope, spread props, children normalization, component return normalization,
Renderablecomposition, auto-wrap behavior, compiled-template per-render scope, parse/semantic errors, and runtime-without-bindings boundaries
Evidence Contract¶
The source of truth is:
conformance/<format>/profiles.tomlconformance/<format>/profiles/<profile>/spec-map.toml
Each manifest records:
- the repo-local v1 rule being exercised
- the concrete case id
- the expected result or expected error
- which execution layer must enforce it:
python,rust, orboth - optional notes and provenance details
Python and Rust conformance runners both resolve those manifests through the same contract.
Representative recently-added case groups:
- HTML
renderable-attribute-escapedrenderable-spread-escapedthtml-renderable-childformat-rich-roundtripsemantic-attr-primary-spansemantic-component-primary-span- T-HTML
renderable-scope-frozenrenderable-ignores-later-overridesauto-wrap-uses-defining-globalshtml-renderable-inside-thtmlcompiled-render-scope-per-callpartial-scope-globals-onlypartial-scope-locals-onlysemantic-attr-primary-spansemantic-raw-text-primary-span
Scope Notes¶
- These are repo-local v1 conformance claims, not full WHATWG HTML or browser compatibility claims.
- External specifications may inform the design, but upstream spec text and fixture bodies are not copied into this repository.
- T-HTML is a Python-first runtime. Its Rust-side conformance evidence focuses on syntax, formatting, diagnostics, static validation, cache-key behavior, and the explicit runtime-without-bindings boundary.
Verification Commands¶
uv sync --group devuv run pytest -qcargo test --manifest-path rust/Cargo.toml --workspace --tests
Targeted conformance-only verification:
uv run pytest html-tstring/tests/test_html_conformance.py thtml-tstring/tests/test_thtml_conformance.py -qcargo test --manifest-path rust/Cargo.toml --test conformance -- --nocapture