nebulaforge-offline-resilie.../AGENTS.md

1.7 KiB

NebulaForge Architecture and Contribution Guide

Overview

  • NebulaForge is an offline-resilient, federated foundation-model platform designed for space robotics with intermittent connectivity. This repository contains a production-ready MVP scaffold including a device runtime, secure aggregation, data contracts, governance ledger, and a simulator stub.

Architecture Overview

  • Runtime (nebulaforge.runtime): lightweight on-device inference and planning primitives tailored for ARM/RISC-V platforms.
  • Federated (nebulaforge.federated): secure aggregation with optional differential privacy budgets.
  • Contracts (nebulaforge.contracts): per-message data contracts such as LocalProblem, SharedVariables, PlanDelta, PrivacyBudget, AuditLog.
  • Governance (nebulaforge.governance): crypto-signed decisions and tamper-evident provenance ledger.
  • Simulator (nebulaforge.simulator): stubbed integration points for Gazebo/ROS-based HIL validation.

Getting Started

  • Install Python dependencies via test.sh which runs packaging checks and tests.
  • Run unit tests with pytest.

Contribution Rules

  • Follow PEP 8 where applicable; keep modules small and focused.
  • Add tests for new functionality; ensure all tests pass before proposing changes.
  • Update AGENTS.md if you introduce new major components or interfaces.

Testing and Validation

  • The test.sh script in the repo automates: building the package (python3 -m build) and running tests (pytest).
  • Use pytest to validate behavior of runtime, federated aggregation, and contracts.

Release Process (high level)

  • Bump version in nebulaforge/init.py or pyproject.toml when features are merged.
  • Run test.sh to ensure green tests and packaging integrity.
  • Create READY_TO_PUBLISH file to signal completion for publishing workflow.