Files
aitbc/apps/wallet-daemon
oib 9b9c5beb23 ```
chore: enhance .gitignore and remove obsolete documentation files

- Reorganize .gitignore with categorized sections for better maintainability
- Add comprehensive ignore patterns for Python, Node.js, databases, logs, and build artifacts
- Add project-specific ignore rules for coordinator, explorer, and deployment files
- Remove outdated documentation: BITCOIN-WALLET-SETUP.md, LOCAL_ASSETS_SUMMARY.md, README-CONTAINER-DEPLOYMENT.md, README-DOMAIN-DEPLOYMENT.md
```
2026-01-24 14:44:51 +01:00
..
```
2026-01-24 14:44:51 +01:00
```
2026-01-24 14:44:51 +01:00

Wallet Daemon

Purpose & Scope

Local FastAPI service that manages encrypted keys, signs transactions/receipts, and exposes wallet RPC endpoints. Reference docs/bootstrap/wallet_daemon.md for the implementation plan.

Development Setup

  • Create a Python virtual environment under apps/wallet-daemon/.venv or use Poetry.
  • Install dependencies via Poetry (preferred):
    poetry install
    
  • Copy/create .env and configure coordinator access:
    cp .env.example .env  # create file if missing
    
    • COORDINATOR_BASE_URL (default http://localhost:8011)
    • COORDINATOR_API_KEY (development key to verify receipts)
  • Run the service locally:
    poetry run uvicorn app.main:app --host 127.0.0.2 --port 8071 --reload
    
  • REST receipt endpoints:
    • GET /v1/receipts/{job_id} (latest receipt + signature validations)
    • GET /v1/receipts/{job_id}/history (full history + validations)
  • JSON-RPC interface (POST /rpc):
    • Method receipts.verify_latest
    • Method receipts.verify_history
  • Keystore scaffolding:
    • KeystoreService uses Argon2id + XChaCha20-Poly1305 via app/crypto/encryption.py (in-memory for now).
    • Future milestones will add persistent storage and wallet lifecycle routes.