Skip to content

test: pin row identity, path order, and reached label collisions - #199

Merged
lmeyerov merged 5 commits into
mainfrom
fix/alias-identity-regression
Sep 13, 2026
Merged

test: pin row identity, path order, and reached label collisions#199
lmeyerov merged 5 commits into
mainfrom
fix/alias-identity-regression

Conversation

@lmeyerov

@lmeyerov lmeyerov commented Sep 12, 2026

Copy link
Copy Markdown
Contributor

Structured GFQL must preserve entity identity, exact identifiers, physical node rows, and path order across optimized and generic execution. These regressions caught alias properties restored from the wrong entity, nullable integer IDs losing precision, reordered paths, dropped duplicate/null node rows, and HAS-label collisions filtered in the wrong order.

Add 240 regression cases across pandas, native Polars, and optional cuDF, with normal and disabled fast routes:

  • 24 alias-property cases compare structured GFQL and Cypher with independent expected values.
  • 36 nullable Int64/UInt64 cases create explicit indexes and verify exact identifiers/properties for matching and missing seeds.
  • 96 path-order cases use an independent traversal oracle across forward/reverse paths, one/two hops, node/edge permutations, and property indexes on/off.
  • 36 node-selection cases pin physical rows, duplicate/null IDs, supplied starting rows, column order, and empty edges.
  • 48 HAS-collision cases cover input order, reached/unreached duplicate IDs, explicit labels, and destination filters.

Exact merged-master conformance passed against pygraphistry 2ca98922cd9ce05a16c74acd5e119232904b4377: 4,329 passed, 86 skipped, 689 expected failures in each normal/all-nine-off mode. Logs verify the exact source and all nine disabled routes. Hosted optional-backend skips do not establish GPU execution.

All 240 added regressions passed locally with pandas, Polars, and actual cuDF enabled on the isolated integration tree 19cc89edf125172978aff79b2fe5aba249cf5079. The actual master merge has that identical tree. This is source-tree equivalence evidence; the full merged-master DGX run remains separately tracked.

The dependency pygraphistry PR2072 is now merged. Ordinary CI pinned to merged master passed: 4,243 passed, 172 skipped, 689 expected failures, plus one setup check. Merged-master product CI passed: 83 successful jobs, two PR-only jobs skipped, and zero divergences in all ten route modes. The original PR check was rerun after the product merge and now also passes against the exact merged-master revision. Earlier failure reproducers remain retained. TCK issue200 concerns separate whole-entity projection metadata and remains colleague-owned.

@github-actions

Copy link
Copy Markdown

Automated tck-gfql conformance summary for this PR.

  • Base: main
  • Head: fix/alias-identity-regression
  • Structured artifact: unified-conformance-summary
  • Direct-Cypher delta: no added, removed, or changed cases.

Unified Conformance Summary

Headline Counts

metric value
Scenarios total 3658
Supported 2964
Xfail 689
Skip 5
GFQL translated 2936
Direct-Cypher total snapshot 2921
Direct-Cypher promoted-only rows 819
Direct-Cypher promoted-only expected errors 142
Direct-Cypher non-validation debt 0

Manifest Summary

metric value
Manifest scenario entries 3658
Manifest supported 2964
Manifest xfail 689
Manifest skip 5
Manifest translated 2936
Manifest direct-Cypher only 276
Manifest not yet implemented 446
Manifest direct-Cypher debt keys 0

Direct-Cypher Delta

category count
Added passing cases 0
Added expected-error cases 0
Removed cases 0
Changed cases 0
Remaining debt 0

Debt Movement

category count
Newly broken support classifications 0
Recovered debt transitions 0
Removed debt cases 0
Remaining direct-Cypher debt 0

Direct-Cypher Added Passing Cases

None.

Direct-Cypher Added Expected-Error Cases

None.

Direct-Cypher Removed Cases

None.

Direct-Cypher Changed Cases

None.

Newly Broken Support Classifications

None.

Recovered Debt

None.

Removed Debt Cases

None.

Input Warnings

  • old artifact has no direct_cypher_cases inventory; case-level pass/error deltas are limited to fields present in the artifact.
  • new artifact has no direct_cypher_cases inventory; case-level pass/error deltas are limited to fields present in the artifact.

@lmeyerov lmeyerov changed the title Pin alias property restoration to entity identity test: pin alias and nullable identifier identity Sep 12, 2026
@lmeyerov lmeyerov changed the title test: pin alias and nullable identifier identity test: pin alias identity, nullable identifiers, and joined path order Sep 12, 2026
@lmeyerov lmeyerov changed the title test: pin alias identity, nullable identifiers, and joined path order test: pin row identity, path order, and reached label collisions Sep 12, 2026
@lmeyerov
lmeyerov marked this pull request as ready for review September 13, 2026 02:47
@lmeyerov
lmeyerov merged commit 1692137 into main Sep 13, 2026
16 of 17 checks passed
@lmeyerov
lmeyerov deleted the fix/alias-identity-regression branch September 13, 2026 03:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant