Regenerating docs/specification/compliance.md today produces the same content as the version stamped Time_executed: 2024-07-03 — all 66 headings match one for one, differing only by the {#anchor} suffixes pandoc adds. The doc isn't out of date because nobody rebuilt it. It's identical because the suite has not gained a case in two years.
Ten commits have touched tests/test_compliance/ since that date, and every one is mechanical: isort, Run ruff format, Automatic ruff lint fixes, Move "unit" dev group into the main group, a linkml version bump.
What the 55 combos actually cover:
test_simple_unit_conversion 13 test_map_enum 4
test_expr 9 test_inheritance 4
test_map_types 8 test_isomorphic 2
test_stringify 7 test_map_collections 2
test_complex_unit_conversion 4 test_join 2
Seventeen of the 55 are unit conversion. Joins get two — against an engine that has since been replaced:
510b0a5 Set-based DuckDB join engine (default, with per-row fallback)
4f44ec3 Synthesize implicit joins from expression references
a19eb09 Suppress nested object on sparse join miss
66cbcc3 Fix dotted populated_from crash and synthesize its join
d5abfd0 Implicit cross-table join resolution for nested class derivations
Enum handling also changed recently (7cffbf0, routing enum expression evaluation through the gated eval path), and --unrestricted-eval gating is a behavioural boundary a compliance suite ought to pin down.
This is the part that matters more than how the doc gets built: we publish this under Specification in the nav, so it reads as a statement of what LinkML-Map does. Right now it's a statement about mid-2024, and the areas we've changed most are the ones it covers least.
Intended outcome: the compliance suite exercises what the engine actually does now — set-based joins and sparse-join misses in particular — so the published doc is a description of current behaviour rather than a historical one.
Worth doing alongside #318, which covers why the doc can't currently be regenerated reproducibly. Neither blocks the other, but both need to land before a CI drift check could keep this honest on its own.
Regenerating
docs/specification/compliance.mdtoday produces the same content as the version stampedTime_executed: 2024-07-03— all 66 headings match one for one, differing only by the{#anchor}suffixes pandoc adds. The doc isn't out of date because nobody rebuilt it. It's identical because the suite has not gained a case in two years.Ten commits have touched
tests/test_compliance/since that date, and every one is mechanical:isort,Run ruff format,Automatic ruff lint fixes,Move "unit" dev group into the main group, a linkml version bump.What the 55 combos actually cover:
Seventeen of the 55 are unit conversion. Joins get two — against an engine that has since been replaced:
Enum handling also changed recently (7cffbf0, routing enum expression evaluation through the gated eval path), and
--unrestricted-evalgating is a behavioural boundary a compliance suite ought to pin down.This is the part that matters more than how the doc gets built: we publish this under Specification in the nav, so it reads as a statement of what LinkML-Map does. Right now it's a statement about mid-2024, and the areas we've changed most are the ones it covers least.
Intended outcome: the compliance suite exercises what the engine actually does now — set-based joins and sparse-join misses in particular — so the published doc is a description of current behaviour rather than a historical one.
Worth doing alongside #318, which covers why the doc can't currently be regenerated reproducibly. Neither blocks the other, but both need to land before a CI drift check could keep this honest on its own.