36 lines
1.8 KiB
Markdown
36 lines
1.8 KiB
Markdown
FeedTrust MVP: Production-Grade Architecture
|
||
|
||
Overview
|
||
- FeedTrust is a modular, blockchain-backed access-control and provenance layer for cross-venue market data feeds. The MVP demonstrates policy-driven data access with verifiable provenance across two venues, via adapters and a simple aggregator.
|
||
|
||
Tech Stack (Python)
|
||
- Policy DSL: policy.py – a lightweight DSL-ish syntax and compiler for access rules.
|
||
- Provenance Ledger: ledger_merkle.py – Merkle-tree based proofs of data lineage.
|
||
- Adapters: adapters/fix.py, adapters/websocket.py – toy adapters bridging two feed types to a canonical signal format.
|
||
- Aggregation: aggregation.py – cross-venue data mixing with lightweight provenance tagging.
|
||
- Core: core.py – orchestrates policy checks, ledger interactions, and end-to-end flow.
|
||
- Tests: tests/ – unit and integration tests ensuring policy enforcement, ledger proofs, and end-to-end flow.
|
||
- Packaging: pyproject.toml – production-grade packaging metadata; README and READY_TO_PUBLISH as per spec.
|
||
|
||
How to Run (locally)
|
||
- Ensure Python 3.11+ is installed.
|
||
- Install test dependencies: pytest
|
||
- Run tests: ./test.sh
|
||
- Build package: python -m build
|
||
|
||
Files and Responsibilities
|
||
- AGENTS.md: This document explains repository structure, testing commands, and contributor rules.
|
||
- README.md: Project marketing and integration description.
|
||
- test.sh: Test runner that executes pytest and builds the package.
|
||
- pyproject.toml: Packaging metadata.
|
||
- feedtrust/: Core library code and submodules.
|
||
- tests/: Test suite.
|
||
- READY_TO_PUBLISH: Empty placeholder signaling publish readiness.
|
||
|
||
Contribution Rules
|
||
- Keep changes minimal and well-scoped.
|
||
- Add tests for any new functionality.
|
||
- Do not modify published contract semantics without user consent in this repo.
|
||
|
||
This file is kept deliberately short to avoid noise. It exists to orient contributors and automation tools.
|