Skip to content

feat(gfql-ir): stabilize schema catalog contract surface (#1296)#1298

Merged
lmeyerov merged 1 commit intomasterfrom
issue-1296
May 5, 2026
Merged

feat(gfql-ir): stabilize schema catalog contract surface (#1296)#1298
lmeyerov merged 1 commit intomasterfrom
issue-1296

Conversation

@lmeyerov
Copy link
Copy Markdown
Contributor

@lmeyerov lmeyerov commented May 5, 2026

Summary

  • stabilize the IR schema-catalog T1 contract in graphistry/compute/gfql/ir/compilation.py while preserving GFQLSchema is GraphSchemaCatalog
  • add GraphSchemaCatalog.from_schema_parts(...) for normalized construction from iterable schema parts with metadata copy semantics
  • add canonical accessors (node_id, edge_source, edge_destination) and column-membership helpers (has_node_column, has_edge_column)
  • add focused contract tests in graphistry/tests/compute/gfql/test_ir_compilation.py
  • add changelog entry for GFQL type-system T1: schema contract + canonical naming alignment #1296

Closes #1296.

Validation

  • python -m pytest -q graphistry/tests/compute/gfql/test_ir_compilation.py graphistry/tests/compute/gfql/test_ir_m0b_conformance.py
  • uv run ruff check graphistry/compute/gfql/ir/compilation.py graphistry/tests/compute/gfql/test_ir_compilation.py

Plan + review artifacts

  • plans/issue-1296/plan.md
  • plans/issue-1296/research/context.md
  • plans/issue-1296/research/policies.md
  • plans/issue-1296/research/credentials.md
  • plans/issue-1296/waves/wave-1/wave-report.md
  • plans/issue-1296/waves/wave-2/wave-report.md

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 type-system T1: schema contract + canonical naming alignment

1 participant