Semantic Equivalent Catalogue¶
Spec requirement: Part I SS7 para 2 — "Language bindings MUST maintain version-tracked lists of semantic equivalents for each pattern rule, extending detection coverage as new evasion variants are identified."
Catalogue version: 1.0.1 Inventory snapshot: 2026-04-15 v1.0 recertification refresh
This directory is the version-tracked catalogue for the live Python scanner surface.
For conformance, Part I §7 and WL-FIT-SCAN-009 apply strictly to the pattern-rule subset of the scanner surface. This directory also publishes adjacent structural-rule catalogues for assessor continuity, but those structural files are not what makes the binding satisfy the pattern-catalogue requirement. Binding-only supplementary and contradiction rules are tracked elsewhere and are intentionally outside this catalogue requirement.
Each catalogue file documents: - All known syntactic patterns that produce the same semantic effect as the detected pattern - Detection status (DETECTED / NOT DETECTED / PARTIALLY DETECTED) - Priority for future detection work (HIGH / MEDIUM / LOW) - Agent production likelihood (how likely an AI agent is to produce this pattern)
Live Inventory¶
Pattern Rules In Scope for WL-FIT-SCAN-009¶
| Rule | Framework Rule | File |
|---|---|---|
| PY-WL-001 | WL-001 (dict access) | py-wl-001.md |
| PY-WL-002 | WL-001 (attribute access) | py-wl-002.md |
| PY-WL-003 | WL-002 | py-wl-003.md |
| PY-WL-004 | WL-003 | py-wl-004.md |
| PY-WL-005 | WL-004 | py-wl-005.md |
| PY-WL-006 | WL-005 | py-wl-006.md |
| PY-WL-007 | WL-006 | py-wl-007.md |
Structural Verification Adjunct Catalogues¶
These files are published as live scanner-catalogue disclosures for the currently claimed Python surface, but they sit outside the strict Part I §7 pattern-rule subset.
| Rule | Framework Rule | File | Scope note |
|---|---|---|---|
| PY-WL-008 | WL-007 | py-wl-008.md | |
| PY-WL-009 | WL-008 | py-wl-009.md | |
| PY-WL-010 | WL-009 | py-wl-010.md | Structural restoration-symmetry variants and bounded-scope evasions |
Implemented Rules Explicitly Outside This Catalogue Requirement¶
These rules are part of the live scanner inventory, but they are not Part I §7 pattern rules and are not represented as semantic-equivalent markdown files. Their honesty requirement is explicit exclusion, not fake catalogue coverage.
| Rule | Kind | Where tracked | Why excluded from this catalogue |
|---|---|---|---|
| SCN-021 | Binding-only contradictory-combination rule | docs/spec/wardline-02-A-python-binding.md §A.4.2, scanner rule audits, compliance ledger | Contradictory decorator combinations are not pattern-rule semantic equivalents |
| SCN-022 | Binding-only required-fields rule | scanner rule audits, compliance ledger | Structural/binding contract rule, not a Part I §7 pattern catalogue |
| SUP-001 | Binding-only supplementary rule | docs/spec/wardline-02-A-python-binding.md §A.4.2, scanner rule audits, compliance ledger | Supplementary contract rule outside the framework pattern subset |
Corpus Support¶
Current corpus support for the catalogued rules is honest but not one-to-one:
corpus/specimens/PY-WL-001throughcorpus/specimens/PY-WL-010each currently include at least one non-standardspecimen category alongside their standard measurement surface.- Non-standard categories currently present across the published catalogue surface are
adversarial_false_positive,adversarial_false_negative,suppression_interaction, andtaint_flow. - The corpus does not attempt one specimen per catalogue entry. Many listed semantic equivalents remain documented frontier items until dedicated specimens are added.
Maintenance¶
When the implemented scanner surface changes or new evasion variants are identified:
- Update the relevant catalogue file and this README together.
- Keep the pattern/structural/binding-only category split honest against
src/wardline/scanner/rules/__init__.py. - Add or update corpus specimens when a documented equivalent gains measured support; otherwise leave it documented-only explicitly.
- Bump the catalogue version in this README whenever files or category boundaries change.
- Keep catalogue changes visible in the verification audits and fingerprint baseline.