2.0 KiB
2.0 KiB
GridVerse Open Low-Code Platform for Cross-Domain Energy Optimization
Architecture outline and testing rules for the MVP
-
Scope
- Lightweight core: Objects, Morphisms, Functors (core graph-contract primitives)
- Registry: Graph-Contract Registry for versioned contracts
- Adapter Marketplace: Starter adapters, conformance tests, and a simple registry
- Minimal Delta-Sync/ADMM-lite solver plumbing (already present as DeltaSync and adapters)
-
Core primitives (already in codebase)
- Object: local problem with id, name, data
- Morphism: data-exchange channel with src, dst, optional transform
- Functor: mapping adapter with map_object and map_morphism hooks
- DeltaSync: lightweight state container for deltas and reconciliation
-
Registry and marketplace (current MVP)
- registry.py: ContractRegistry stores contract schemas (name, version, schema)
- adapters directory contains StarterDERAdapter as a minimal example adapter
-
MVP Plan (8-12 weeks)
- Phase 0: Protocol skeleton and two starter adapters; TLS transport; ADMM-lite local solver; delta-sync with reconciling logs
- Phase 1: Global constraints layer (Limits/Colimits), governance ledger scaffolding, offline simulations
- Phase 2: Adapter marketplace onboarding, minimal codegen path, simple DSL sketch for LocalProblem/SharedVariables/PlanDelta
- Phase 3: Cross-domain demo with a simulated domain; extended HIL with Gazebo/ROS in later iterations
-
Testing and conformance
- Lightweight conformance harness for adapter schemas and message shapes
- End-to-end tests for LocalProblem -> SharedVariables -> PlanDelta mappings
- Auditable logs for governance and reconciliation steps
-
Security and governance
- TLS transport, short-lived certs for adapters, secure aggregation for shared signals
- Governance ledger scaffolding and auditable reconciliation records
-
Contributing
- PRs should include tests for new contracts/adapters
- Tests should run via test.sh (pytest) and the packaging check (python -m build)