Skip to content

[POST-RERUN] #880 residual: joined row aggregation bucket #1413

Description

@lmeyerov

Summary

Post-rerun residual split from #880: joined-row aggregation bucket was workaround-backed partial.

Final status

Repro Receipt

  • Source rerun set: results/runs/local-snb-interactive-closeout-2026-05-09
  • Residual report filter: backend=gfql, status=partial, issue_ref=graphistry/pygraphistry#880
  • Bucket: joined_row_aggregation
  • Lane count: 2

Affected upstream lanes

Scope

  • Remove adapter aggregation workaround dependence on joined-row materialization for these lanes.
  • Ensure native aggregation semantics over joined rows handle these shapes.

Done when

Related

Activity

  1. added 8 commits that reference this issue on May 10, 2026
    6907215
    566e169
    aa91fee
    959a0cd
    3985292
    afd6ffe
    96ce799
    1d3e477
  2. lmeyerov commented on May 11, 2026

    @lmeyerov
    ContributorAuthor

    Reopening after #1422 because #1422 landed the IC4/new-topics half only; IC3/cross-country remains open under this issue.

  3. lmeyerov commented on May 11, 2026

    @lmeyerov
    ContributorAuthor

    Partial closeout after #1422

    PR #1422 merged on 2026-05-11 UTC:
    #1422

    Merge commit: 1520a728424fdc0c54fa507f912e3e24aa7953f7

    Scope landed:

    • IC4 / new-topics native GFQL/Cypher coverage for joined-row aggregation with searched CASE WHEN.
    • Chained comparisons inside CASE conditions are lowered before aggregation validation, including the official reference shape:
      • $startDate <= post.creationDate < $endDate
    • Added adversarial regression coverage for multiple chained CASE arms, unrelated CASE comparisons, and multiple chained CASE flags in one joined-row aggregation.
    • Added CHANGELOG.md entry.

    Validation receipt:

    Remaining scope:

    • IC3 / cross-country-messages is still not unblocked by [WIP] Fix #1413 joined-row aggregation residual #1422.
    • Post-Add GFQL row join apply (#1411) #1426 repro still hits the compiler MATCH after WITH admission gate for the collect-list + carried-row reentry shape:
      • WITH person, collect(city) AS cities MATCH ...
      • error: Cypher MATCH after WITH is only supported for alternating MATCH ...
    • This appears to need a follow-up compiler slice for carried rows, collected list values, list/entity membership such as NOT friendCity IN cities, and multiple post-reentry WITH stages.

    Status:

  4. added a commit that references this issue on May 11, 2026
    1520a72
  5. lmeyerov commented on May 14, 2026

    @lmeyerov
    ContributorAuthor

    Closeout after #1428

    PR #1428 merged on 2026-05-14 UTC:
    #1428

    Merge commit: 2f83b27da8108aab6b2d4770bf31ac0d562a4cc0

    Scope landed:

    • IC3 / cross-country-messages carried-row reentry support for the joined-row aggregation bucket.
    • Supports the previously blocked shape:
      • WITH person, collect(city) AS cities MATCH ...
      • NOT friendCity IN cities
      • multiple post-reentry WITH stages before grouped aggregation.
    • Preserves whole-row/entity carries and collected list values across MATCH reentry.
    • Adds adversarial regression coverage for negative membership, positive same-city membership, collect-distinct membership, and whole-row collected entity rendering.
    • Hardens the optional aggregate boundary assertion to structured GFQLValidationError checks.

    Validation receipt:

    • Focused local [POST-RERUN] #880 residual: joined row aggregation bucket #1413 / optional-boundary slice: 11 passed, 988 deselected.
    • Additional focused review slice: 6 passed.
    • ruff and py_compile: passed.
    • GitHub PR checks: green after rerunning one canceled infra-only test-readme job.
    • DGX Spark RAPIDS targeted matrix:
      • 25.02/gfql PASS (5 passed)
      • 26.02/gfql PASS (5 passed)

    Status:

  6. added a commit that references this issue on May 14, 2026
    2f83b27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions