Guard all RdSAP-Schema-17.0 corpus certs in the strict parse+map bucket 🟩

Promote RdSAP-Schema-17.0 into SUPPORTED so all 1000 corpus certs are held to
the strict parse+map guard. Drop the now-redundant cert[0] tracer (subsumed by
the parametrised bucket); keep the reduced-field synthesis behavioural test.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Jun-te Kim 2026-06-12 12:48:47 +00:00
parent 9b01e1d0c9
commit 6c03f3323c

View file

@ -7,7 +7,7 @@ scripts/eon/harvest_certs.py. Each line is one cert in the exact shape
* 21.0.0 / 21.0.1 supported today; these are a regression guard.
* 20.0.0 pre-SAP10 Reduced-Field Synthesis (ADR-0027).
* 19.0 / 18.0 / 17.1 pre-SAP10 family, inherited coefficients (ADR-0028).
* 19.0/18.0/17.1/17.0 pre-SAP10 family, inherited coefficients (ADR-0028).
All 1000 certs each parse and map; the strict guard
below keeps the whole bucket honest.
@ -32,6 +32,7 @@ SUPPORTED = {
"RdSAP-Schema-19.0",
"RdSAP-Schema-18.0",
"RdSAP-Schema-17.1",
"RdSAP-Schema-17.0",
}
@ -66,19 +67,6 @@ def test_supported_schemas_map(cert: dict[str, Any]) -> None:
assert isinstance(result, EpcPropertyData)
def test_rdsap_17_0_maps() -> None:
# Arrange
certs = _load("RdSAP-Schema-17.0")
if not certs:
pytest.skip("no RdSAP-Schema-17.0 corpus harvested")
# Act
result = EpcPropertyDataMapper.from_api_response(certs[0])
# Assert
assert isinstance(result, EpcPropertyData)
def test_rdsap_19_0_synthesises_windows_for_windowless_cert() -> None:
"""ADR-0028 Reduced-Field Synthesis: a reduced 19.0 cert lodges no
per-window geometry, only a glazed_area band the mapper synthesises a