|
|
||
|---|---|---|
| catopt_query | ||
| tests | ||
| .gitignore | ||
| AGENTS.md | ||
| README.md | ||
| pyproject.toml | ||
| test.sh | ||
README.md
CatOpt-Query: Category-Theoretic Compositional Optimizer for Distributed Database Query Planning
Overview
- Lightweight Python prototype for expressing distributed query planning problems using category-theoretic abstractions: Objects (LocalProblem), Morphisms (SharedVariables, PlanDelta), and Functors (Adapters).
- Provides a canonical representation and a minimal solver to stitch per-shard plans into a global plan with delta-sync semantics.
Project structure
-
catopt_query/protocol.py: protocol models (LocalProblem, SharedVariables, PlanDelta, CanonicalPlan)
-
catopt_query/canonical.py: canonical plan representation
-
catopt_query/adapters.py: adapter scaffolding (vendor -> canonical)
-
catopt_query/solver.py: tiny ADMM-lite style cross-shard planner
-
tests/: pytest-based tests for protocol, adapters, and solver
-
DSL Primitives (new):
-
PrivacyBudget, AuditLog, PolicyBlock, GraphOfContracts and extended governance hooks you can use to describe cross-shard contracts and privacy constraints.
How to run
- Run tests: pytest -q
- Build: python -m build
This repository follows the MVP goals and aims for a production-ready extension, with a focus on clear interfaces and testability.