Skip to content

Commit da9032f

Browse files
committed
tests/interaction: allow pre-staged spec_version in arm_exclusions/known_failures
The reachability invariants now check transport only. spec_version is already type-checked against the two-value SpecVersion Literal and runtime-validated against KNOWN_PROTOCOL_VERSIONS in __post_init__, so the SPEC_VERSIONS membership check was redundant and blocked annotating entries with spec_version="2026-07-28" before that version is on the active matrix axis.
1 parent dd82ff6 commit da9032f

1 file changed

Lines changed: 12 additions & 6 deletions

File tree

tests/interaction/test_coverage.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -140,25 +140,31 @@ def test_supersession_links_are_symmetric_and_versioned() -> None:
140140

141141

142142
def test_every_arm_exclusion_targets_a_reachable_cell() -> None:
143-
"""Every arm exclusion names a connectable transport and an active spec version (or wildcards)."""
143+
"""Every arm exclusion names a connectable transport (or wildcards).
144+
145+
spec_version is type-checked against the SpecVersion Literal and may reference a version not yet
146+
on the active SPEC_VERSIONS axis, so pre-staged exclusions for an upcoming revision are permitted.
147+
"""
144148
unreachable = [
145149
f"{req_id}: {exclusion}"
146150
for req_id, req in REQUIREMENTS.items()
147151
for exclusion in req.arm_exclusions
148-
if (exclusion.transport is not None and exclusion.transport not in CONNECTABLE_TRANSPORTS)
149-
or (exclusion.spec_version is not None and exclusion.spec_version not in SPEC_VERSIONS)
152+
if exclusion.transport is not None and exclusion.transport not in CONNECTABLE_TRANSPORTS
150153
]
151154
assert not unreachable, f"Arm exclusions targeting unreachable cells: {unreachable}"
152155

153156

154157
def test_every_known_failure_targets_a_reachable_cell() -> None:
155-
"""Every known failure names a connectable transport and an active spec version (or wildcards)."""
158+
"""Every known failure names a connectable transport (or wildcards).
159+
160+
spec_version is type-checked against the SpecVersion Literal and may reference a version not yet
161+
on the active SPEC_VERSIONS axis, so pre-staged exclusions for an upcoming revision are permitted.
162+
"""
156163
unreachable = [
157164
f"{req_id}: {failure}"
158165
for req_id, req in REQUIREMENTS.items()
159166
for failure in req.known_failures
160-
if (failure.transport is not None and failure.transport not in CONNECTABLE_TRANSPORTS)
161-
or (failure.spec_version is not None and failure.spec_version not in SPEC_VERSIONS)
167+
if failure.transport is not None and failure.transport not in CONNECTABLE_TRANSPORTS
162168
]
163169
assert not unreachable, f"Known failures targeting unreachable cells: {unreachable}"
164170

0 commit comments

Comments
 (0)