2.1 KiB
2.1 KiB
CATOPT-GRAPH AGENTS
Overview
- This repository contains a minimal, working MVP of CatOpt-Graph: a graph-calculus-inspired orchestration layer for compositional optimization across edge devices.
- The MVP focuses on a simple asynchronous-like ADMM-lite solver, contract primitives (Objects, Morphisms, Functors), and two starter adapters (rover and habitat) that map to canonical representations.
Architecture (high-level)
- core: Objects, Morphisms, Functors, and a tiny contract registry skeleton.
- admm_lite: a lightweight, fault-tolerant, delta-sync solver for two agents solving a simple distributed objective with a shared constraint.
- adapters/: two starter adapters (rover and habitat) provide readState/exposeLocalProblemData/applyCommand interfaces.
- transport: placeholder TLS/REST-like transport surface (mocked in MVP).
- governance: lightweight auditing placeholder.
- tests: unit tests for the ADMM-lite core.
How to run tests
- Ensure Python 3.10+ is installed.
- Run: bash test.sh
Development workflow
- Use the provided DAG of modules to extend adapters and add new ones.
- All changes should be backed by tests.
Note
- This is a minimal, opinionated MVP to bootstrap cross-domain interoperability. It is not a full production system.
What we're adding now (MVP roadmap refinements):
- Core ontology extension: versioned ContractRegistry (contracts per name/version) for interop with adapters.
- Bridge layer: a lightweight to_canonical / from_canonical mapping to connect domain LocalProblem data to the CatOpt canonical form.
- Adapters: two starter adapters (rover, habitat) already present; bridge will enable canonical data exchange.
- ADMM-lite core: keep the existing two-agent toy solver as a testbed; extend with delta-sync semantics conceptually in code comments and tests.
- Governance / contracts: hook up a minimal conformance story via the contract registry + bridge; add a test to verify registry behavior.
- MVP testing: unit tests for contract registry, end-to-end tests for bridge mapping (stubbed inputs/outputs) and existing admm_lite tests for solver stability.
- Documentation: update README to reflect the MVP extension and how to run tests.