4379da4986f034fbb6665964823d118d2b469c22
entity.parent_id -> entity matches every type pair in both directions, and the discovery loop kept forward whenever reverse also matched — so an array include compiled as `parent.parent_id = child.id` and every nested list read back empty. Now cardinality decides: an array lists the children (reverse), a scalar reaches the parent (forward) — a line's UI can include its invoice. A single child through this edge is declared as a one-element array, never a scalar. fixtures/composition.json pins both joins; 1288 library tests pass. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AvkGU4kQ4wsqxHFpXtZKZM
JSPG - JSON Schema Validation for PostgreSQL
Description
Languages
Rust
99.2%
Shell
0.8%