32 lines
1.5 KiB
Markdown
32 lines
1.5 KiB
Markdown
# NovaPlan SWARM Architecture
|
|
|
|
This repository contains a minimal, testable MVP for the NovaPlan concept:
|
|
- Decentralized, offline-friendly multi-agent planning with privacy-preserving considerations.
|
|
- Local problem solving with federated aggregation (ADMM-like) and secure data contracts.
|
|
- A lightweight mission ledger anchored when ground links are available.
|
|
- Adapters for common hardware (rovers, habitat modules) and simulation-ready interfaces.
|
|
|
|
Guiding rules
|
|
- Keep changes small and well-scoped. Favor minimal viable features that demonstrate core ideas.
|
|
- Tests and packaging must pass before publishing. See test.sh and README for workflow.
|
|
- All components are Python-based for this MVP unless the user explicitly requests another language.
|
|
|
|
Architecture overview
|
|
- planner.py: Local problem and a tiny ADMM-style solver interface.
|
|
- contracts.py: Data contracts (PlanDelta, SharedSchedule, ResourceUsage, PrivacyBudget, AuditLog).
|
|
- ledger.py: Simple, auditable decision ledger with optional anchoring to external ground links.
|
|
- adapters/: Lightweight stubs for rover and habitat module adapters.
|
|
- tests/: Unit tests validating the core workflow and contract encoding/decoding.
|
|
|
|
Development workflow
|
|
- Implement features as independent modules with small, focused tests.
|
|
- Run test.sh to verify end-to-end viability, including packaging build check.
|
|
- Update README.md with usage notes and API surface.
|
|
|
|
Testing commands
|
|
- Run tests: ./test.sh
|
|
- Build package: python -m build
|
|
|
|
Contribution
|
|
- Open a PR with a focused feature, include tests, and ensure all tests pass.
|