pygraphistry icon indicating copy to clipboard operation
pygraphistry copied to clipboard

Expose GFQL algorithm categories and restriction metadata

Open lmeyerov opened this issue 2 months ago • 0 comments

Problem

Graphistry server currently mirrors GFQL algorithm metadata in two places so it can enforce tier-based policy rules:

  • apps/forge/etl-server-python/server/client/graph/gfql/policy/algorithm_categories.py
  • apps/forge/etl-server-python/server/client/graph/gfql/policy/algorithm_restrictions.py

Those files define the buckets (linear, iterative GPU, special-case, etc.), the sets of algorithms that fall into each bucket, and a few helper lists such as "heavy community" or "centrality" operations. Because the policy engine lives in the server repo today, we had to duplicate that information rather than rely on PyGraphistry’s canonical view of the operations.

Request

Expose the GFQL algorithm metadata from PyGraphistry so downstream clients can import it instead of re-encoding the lists. A minimal set of exports would be:

  1. A mapping of operation name -> category (linear, iterative GPU, special-case, ...)
  2. Named sets for the curated groups we use in policy (e.g., heavy community clusterers, heavy centrality metrics, premium/GPU-only operations)

Once that’s available, the server can replace the local constants with shared imports and stay in sync as PyGraphistry adds new algorithms or reclassifies existing ones.

Happy to share more context or align on naming if helpful. Thanks!

lmeyerov avatar Oct 21 '25 22:10 lmeyerov