Whole file

eyelevelai/groundx-python

The author described this change as fix(extract): ambiguous relationship matches are warnings, not document failures. It counts as a record because the check below fails on the code as it stood at 361fcf7bf and passes on 2a8420d3a, with nothing else changed between the two runs.

Fix saved2026-07-08
Sharing licenceMIT · LICENSE
Change size+7 0

What the code was meant to do, written into the code itself as a save note

fix(extract): ambiguous relationship matches are warnings, not document failures

The change

834834 f"relationship {rel_name} child record {child_index} "
835835 "matches more than one parent"
836836 ),
837+ # Ambiguity is a HANDLED data condition: the child is
838+ # routed to the unmatched group (rendered account-level
839+ # per the relationship algorithm), so it must not fail
840+ # the document. Live prod 2026-07-08: a real utility
841+ # bill whose meters share match-attr values failed
842+ # entirely under the default severity="error".
843+ severity="warning",
837844 relationship=rel_name,
838845 child_record_index=child_index,
839846 )

The check that tells the two apart

failpass·tests/extract/test_custom_output_reassembly.py::test_ambiguous_relationship_match_is_warning_and_routes_unmatched

Check file tests/extract/test_custom_output_reassembly.py, taken without changes from the fix and copied onto the older code, so the exact same check runs against both versions.

Origin and history

The code before it361fcf7bf79c62f582a4c9d0852754fa6095fa68
Broken version dated2026-07-08
Modulegroundx.extract.custom_outputs
Units changed_apply_relationships
Fingerprint19b08c5c4f3b6f37
Checked2026-08-18 by goldset/0.1

Every field above is generated by our program. None of it is written by hand.