38 lines
1.4 KiB
Markdown
38 lines
1.4 KiB
Markdown
Architecture and contribution guide for SpaceSafeML MVP
|
|
|
|
Overview
|
|
- Language: Python
|
|
- Core layout (src/spacesafeml_certification_benchmark_and_):
|
|
- __init__.py
|
|
- dsl.py (# DSL data models for safety contracts)
|
|
- verification.py (# Verification engine and certificate generation)
|
|
- simulation/ (# Simulation templates and HIL scaffolding)
|
|
- governance/ledger.py (# Tamper-evident ledger for test attestations)
|
|
- adapters/ (# Starter adapters for planner and perception modules)
|
|
|
|
Workflow
|
|
- Tests: pytest-based tests run via test.sh in repo root
|
|
- Build: python -m build and packaging metadata validated by test.sh
|
|
- Docs: README and AGENTS.md describe architecture and contribution rules
|
|
|
|
Tech stack
|
|
- Python 3.8+
|
|
- Lightweight verification (model-checker heuristic) and property-based testing scaffold
|
|
- Simple deterministic simulation scaffolds for fleet scenarios
|
|
- Tamper-evident ledger using hash chaining
|
|
|
|
Testing commands
|
|
- Run tests: bash test.sh
|
|
- Run Python build: python3 -m build
|
|
- Run unit tests only: pytest -q
|
|
|
|
Coding guidelines
|
|
- Keep modules small and well-scoped
|
|
- Prefer minimal, well-documented interfaces
|
|
- Add tests with each feature, ensure green before publishing
|
|
- Do not alter license or packaging metadata without explicit approval
|
|
|
|
Contribution rules
|
|
- Open PRs should include updated tests and a brief changelog-like summary
|
|
- All code must pass tests locally
|