test(gfql): viz-filter-pipeline acceptance suite + regression benchmark (L3)#1696
Merged
Conversation
…rk (L3) Curated panel pipelines (exclusion-dominates, OR-IS-NULL leaves, EXISTS both flavors, searchAny composition, paging) + graph-state prune pins + 40-seed panel-state fuzzer w/ independent pandas second oracle + unicode/case/regex trick matrix — parity-or-NIE ×4 engines (dgx 322-pass incl. GPU). Benchmark: 6 panel scenarios, zipfian generator, native-frame fairness, NIE-tolerant matrix, JSON receipts (100k×4: polars 2-5x pandas; within 350ms ref except pandas combined). Findings pinned+tracked: same-path parallel-edge dedup (vs algebra E2 multiplicity); edge-alias searchAny polars NIE. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ion, dup-eid guard, --runs validation Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… DESC pin), tolerance comment, decline docstring, bench edge-touch + upfront output path Wave-2 I1: the fixture's natural row order equaled ascending id, so every ORDER BY id in the suite (curated paging + 40 fuzzer seeds) passed even if an engine silently dropped the sort — fixture rows now deterministically shuffled (sample frac=1, random_state=7) and a descending-page pin added ([25,22,19]). S2: parallel-edge dedup tolerance comment now states the UNORDERED-pair reading the assertions actually implement. S3: categorical-decline docstring aligned to the (stricter) code: non-pandas engines may only NIE or match the oracle. Bench S1: once() touches nodes AND edges frames inside the clock. S4: --output-json path is opened upfront so a bad path fails before the sweep. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ranch docstring scope Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Reopens the L3 acceptance layer — the original #1681 was auto-closed when its base branch (#1680, now merged) was deleted; GitHub won't let a closed PR with a deleted base be reopened, so this is a fresh PR from the same branch, rebased onto master.
Pure tests + benchmark — zero production edits (rebase diff vs master = 3 files: the conformance suite, the benchmark, one CHANGELOG line).
graphistry/tests/compute/gfql/test_viz_pipeline_conformance.py— the viz-filter-pipeline acceptance suite: 9 curated full-panel cypher pipelines (each hand-pinned + an independent plain-pandas second oracle + 4-engine parity-or-NIE), graph-state prune pins, a 40-seed panel-state fuzzer, and a 17-row case/regex/unicode trick matrix — over feat(gfql/cypher): standard =~ regex + numeric fns + toLower/toUpper (#1673) #1675→feat(gfql/cypher): searchAny cross-column search predicate — inspector semantics, native on 4 engines #1680's shipped surface.benchmarks/gfql/viz_filter_pipeline.py— the regression benchmark (6 scenarios ×--scale {100k,1m,10m}× 4 engines, native-frame-per-engine fairness, NIE-tolerant, JSON receipts).Validated across 5 review waves during development; dgx 4-engine green throughout (latest: 328-pass on the searchAny/matrix/viz suites). Base = master (the searchAny stack landed). #1693 (flatten-seam refactor) stacks on top of this.
🤖 Generated with Claude Code