Skip to content

GFQL: close #1226 residuals and harden #1219 pushdown guardrails#1242

Merged
lmeyerov merged 2 commits intomasterfrom
fix/1226-1219-residual-cleanup
Apr 30, 2026
Merged

GFQL: close #1226 residuals and harden #1219 pushdown guardrails#1242
lmeyerov merged 2 commits intomasterfrom
fix/1226-1219-residual-cleanup

Conversation

@lmeyerov
Copy link
Copy Markdown
Contributor

Summary

  • retire graphistry/compute/gfql/expr_split.py and migrate top-level AND splitting into predicate_pushdown.py (split_top_level_and_conjuncts)
  • fix parser literal fallback atom text to Cypher keyword casing (true / false / null)
  • tighten optional-arm pushdown null-safety by treating OR-compound predicates as conservatively null-rejecting
  • update/extend tests for literal fallback atoms, splitter behavior through pushdown path, and optional-arm OR guardrails
  • remove obsolete test_expr_split.py and add changelog entry

Issues

Validation

  • PYTHONPATH=. pytest -q graphistry/tests/compute/gfql/cypher/test_boolean_expr.py graphistry/tests/compute/gfql/cypher/test_where_bool_conformance.py graphistry/tests/compute/gfql/test_predicate_pushdown_pass.py graphistry/tests/compute/gfql/cypher/test_binder_expr_tree.py graphistry/tests/compute/gfql/cypher/test_where_clause_expr_tree_invariant.py
  • uv run ruff check graphistry/compute/gfql/cypher/parser.py graphistry/compute/gfql/cypher/_boolean_expr_text.py graphistry/compute/gfql/passes/predicate_pushdown.py graphistry/compute/gfql/ir/pushdown_safety.py graphistry/tests/compute/gfql/cypher/test_boolean_expr.py graphistry/tests/compute/gfql/cypher/test_where_bool_conformance.py graphistry/tests/compute/gfql/test_predicate_pushdown_pass.py
  • UV_CACHE_DIR=/tmp/uv-cache uv run mypy graphistry/compute/gfql/cypher/parser.py graphistry/compute/gfql/cypher/_boolean_expr_text.py graphistry/compute/gfql/passes/predicate_pushdown.py graphistry/compute/gfql/ir/pushdown_safety.py
  • PYTHONPATH=. pytest -q graphistry/tests/compute/gfql/cypher/test_lowering.py -k "issue_1219_row_boolean_audit"

@lmeyerov lmeyerov merged commit 58b48dc into master Apr 30, 2026
197 of 198 checks passed
@lmeyerov lmeyerov deleted the fix/1226-1219-residual-cleanup branch April 30, 2026 05:58
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.

gfql/cypher: post-#1200 follow-ups (literal-atom fidelity, expr_split.py retirement)

1 participant