Summary
Several flat/unit comparison edge-cases aren’t parsed/handled, leading to unexpected non-matches and occasional pipeline failures.
Issues / examples
-
BASEMENT vs FLAT A vs FLAT 1
- Comparisons unsupported.
- Examples:
BASEMENT ↔ FLAT A, BASEMENT ↔ FLAT 1, FLAT A ↔ FLAT 1
-
Floor ordinals not parsed
- Can’t parse:
FIRST AND SECOND FLOORS. Should ideally result in an array or equivalent.
-
Range handling
- Example:
FLAT 2 92 ↔ FLAT 2 92-92A (range) doesn’t behave as expected. We parse the letter in the range as a flat identifier, when it's clearly Flat 2 in house numbers 92 to 92A.
-
Duplicate numeric token count ignored
- Example:
3, 3 LOVE LANE ↔ 3 LOVE LANE (extra numeric token not accounted for)