1.3 KiB
1.3 KiB
Architecture
- Core: mltrail_verifiable_provenance_ledger_for
- Ledger: ledger.py provides an append-only hash-chain ledger with a genesis block. add_record appends blocks with a single contract payload for simplicity.
- Contracts: mltrail_verifiable_provenance_ledger_for/contracts.py defines data contracts (Experiment, Run, Dataset, Model, Environment, EvaluationMetric, Policy).
- Registry: mltrail_verifiable_provenance_ledger_for/registry.py offers a minimal contract registry with versioning and schemas.
- Adapters: mltrail_verifiable_provenance_ledger_for/adapters.py provides starter adapters (MLFlow-like, WandB-like).
- Governance: mltrail_verifiable_provenance_ledger_for/governance.py includes a minimal DID-like identity and governance log entry model.
- Helpers: mltrail_verifiable_provenance_ledger_for/util.py offers environment hashing.
Tech Stack
- Language: Python 3.9+
- Core libs: json, time, hashlib, hmac (stdlib)
- Testing: pytest (tests/ directory)
Testing Commands
- Run tests: pytest -q
- Build package: python3 -m build
- Delta-sync sanity: run small scripts that exercise delta_sync in mltrail_verifiable_provenance_ledger_for/ledger.py
Rules
- Do not modify external directories unless required by features.
- Add tests for new features and ensure all tests pass before closing tasks.
- Keep changes minimal and well-scoped.