31 lines
1.1 KiB
Markdown
31 lines
1.1 KiB
Markdown
# Repository Guide
|
|
|
|
## Architecture
|
|
|
|
- `src/idea194_attractorforge_verified_attractor/models.py` defines the DSL and artifact objects.
|
|
- `src/idea194_attractorforge_verified_attractor/adapters.py` contains deterministic toy dynamics for orbital and bioreactor simulations.
|
|
- `src/idea194_attractorforge_verified_attractor/compiler.py` turns specs into controllers, PlanCerts, BasinSketches, and Merkle-logged PlanDeltas.
|
|
- `src/idea194_attractorforge_verified_attractor/runtime.py` provides deterministic execution and replay verification.
|
|
- `src/idea194_attractorforge_verified_attractor/cli.py` exposes a small CLI for manual inspection.
|
|
|
|
## Tech Stack
|
|
|
|
- Python 3.11+
|
|
- Standard library only for runtime logic
|
|
- `pytest` for tests
|
|
- `setuptools` build backend via `pyproject.toml`
|
|
|
|
## Rules
|
|
|
|
- Keep controller behavior deterministic.
|
|
- Preserve bounded control outputs in the compiler and runtime.
|
|
- Prefer small, explicit data models over implicit dictionaries.
|
|
- Update tests whenever compiler or runtime behavior changes.
|
|
- Keep artifact hashes stable by using canonical JSON formatting.
|
|
|
|
## Testing
|
|
|
|
- `bash test.sh`
|
|
- `pytest`
|
|
- `python3 -m build`
|