- Add root-level *.json to .gitignore to prevent wallet backup leaks - Replace wildcard CORS origins with explicit localhost URLs across all apps - Add OPTIONS method to CORS allowed methods for preflight requests - Update coordinator database to use absolute path in data/ directory to prevent duplicates - Add JWT secret validation in coordinator config (must be set via environment) - Replace deprecated get_session dependency with Session
Blockchain Node
Purpose & Scope
Minimal asset-backed blockchain node that validates compute receipts and mints AIT tokens as described in docs/bootstrap/blockchain_node.md.
Status
Scaffolded. Implementation pending per staged roadmap.
Devnet Tooling
scripts/make_genesis.py— Generate a deterministic devnet genesis file (data/devnet/genesis.json).scripts/keygen.py— Produce throwaway devnet keypairs (printed or written to disk).scripts/devnet_up.sh— Launch the blockchain node and RPC API with a freshly generated genesis file.
Quickstart
cd apps/blockchain-node
python scripts/make_genesis.py --force
bash scripts/devnet_up.sh
The script sets PYTHONPATH=src and starts the proposer loop plus the FastAPI app (via uvicorn). Press Ctrl+C to stop the devnet.