|
|
||
|---|---|---|
| adapters | ||
| nova_plan | ||
| tests | ||
| .gitignore | ||
| AGENTS.md | ||
| README.md | ||
| pyproject.toml | ||
| test.sh | ||
README.md
NovaPlan MVP
Overview: a minimal, privacy-preserving, offline-first multi-agent mission planner for deep-space robotic constellations.
Note: This repository documents a small, well-scoped MVP that demonstrates core NovaPlan ideas and provides a foundation for future expansion (CatOpt bridge, adapters, ledger, etc.).
New scaffold: CatOpt Bridge (scaffold)
- A lightweight scaffold to map NovaPlan primitives to a CatOpt-like representation.
- Provides small building blocks: Object (local problem), Morphism (shared signals), and Functor (adapter interfaces).
- The bridge is intentionally minimal to enable quick experimentation and cross-domain interoperability in MVP milestones.
- Practical notes: the bridge includes helpers to convert a LocalProblem into a canonical Object and to package a delta into a Morphism, enabling plug-and-play adapters across rover/habitat/satellite domains. It also exposes a small bridge_example utility to bootstrap experiments and verify interop in CI.
A minimal, open-source MVP for decentralized, privacy-preserving multi-agent mission planning in deep-space robotic constellations.
- Offline-first, privacy-aware coordination across heterogeneous fleets (rovers, drones, habitat bots).
- Local problem solving with a tiny ADMM-like core and federation of agents.
- A lightweight mission ledger that can anchor decisions when ground links are available.
- Lightweight adapters for common hardware and simulation-ready interfaces.
- A clear test and packaging path to verify end-to-end viability.
This repository focuses on a small, well-scoped subset of the NovaPlan ecosystem to demonstrate core ideas and enable further expansion.
How to run tests
- Run:
./test.sh - This will execute unit tests and verify packaging with
python -m build.
MVP extensions (planned, small scope)
- Add a minimal DSL (nova_plan.dsl) and a delta-synchronization helper (delta_sync) to scaffold federated optimization flows.
- Introduce a lightweight ContractRegistry to enable versioning and interoperability of data contracts.
- Provide a tiny DSL-to-LocalProblem translator to bootstrap CatOpt-style integration with adapters.
- Expand ledger anchoring with a deterministic reconciliation log for outages.
Directory layout
- nova_plan/ Core MVP implementation (planner, contracts, ledger, adapters)
- tests/ Unit tests for core workflow and contracts
- adapters/ Stubs for rover and habitat modules
- README.md, AGENTS.md Documentation and governance for the project
- pyproject.toml Build metadata for packaging
- AGENTS.md Architecture and contribution guidelines
- READY_TO_PUBLISH (created after the repo is ready for publishing)
Note: This is a minimal MVP intended for demonstration and testing; it is not a production-ready system.
NovaPlan
Interoperability and CatOpt Bridge
- NovaPlan includes a lightweight CatOpt bridge scaffold to map planning primitives into a canonical representation for interoperability with other runtimes (Open-EnergyMesh, GridVerse, etc.).
- The bridge provides small building blocks: Object (LocalProblem summary), Morphism (signals/deltas), and a minimal bridge_example helper to bootstrap experiments.
- This MVP scaffold enables adapters to plug in rovers, habitat modules, or orbital domains without locking in specific vendor representations.
- See nova_plan/catopt_bridge.py for core bridge logic and nova_plan/interop_catopt.py for a lightweight interoperability facade.
- The bridge exposes minimal primitives: Object (LocalProblem summary) and Morphism (delta signals).
- Convenience helpers are available to generate a pair in a single call, for use by adapters.
- See nova_plan/catopt_bridge.py for the core bridge logic and nova_plan/interop_catopt.py for a small, import-friendly interoperability facade.
MVP notes
- LocalProblem -> Object_i
- SharedVariables/DualVariables -> Morphisms carrying summarized signals
- PlanDelta / PrivacyBudget / AuditLog -> per-message metadata
- Graph-of-Contracts registry with versioned schemas (ContractRegistry)
This repository already includes: LocalProblem DSL, adapters stubs, and a test-aware bridge.