- Load WELIST_PING_DELEGATION_FILE into a typed OnionDelegation - Send the certificate only with v2 pings for onion hosts - Validate the onion host, expiry and delegated key against BAL_SERVER_URL and SSL_KEY_PATH at startup; disable delegation with a warning on any mismatch - Stop sending unsigned info/base_fee/version with v1 pings so v1 remains liveness-only - Document v1/v2 metadata handling and onion delegation implications - Add contrib/make_onion_delegation.py to issue certificates offline, with Ed25519 key validation and clean CLI error handling
2.8 KiB
2.8 KiB
docs/ Knowledge Base
Quick Guide for Contributors
- I am a developer and want to understand the project → Start with
01_project_overview.md - I am a developer and need to know how the system works → Read
03_architecture_and_data_flow.md - I am a developer working on a specific module → See
04_modules_detail.md - I am a security auditor → Go straight to
08_security_audit.md - I am deploying or operating this software → Check
07_deployment_and_ops.md - I need to integrate with the API → Reference
05_api_reference.md - I need to publish the v2 WeTime public key or delegate onion ping signing → Follow
10_dnssec_key_publishing.md - I need to understand the database → Use
06_database_schema.md - I need to understand Bitcoin concepts → See
02_glossary_and_bitcoin_domain.md - I need source code references or external links → Check
09_references_and_links.md
Files Overview
| # | File | Purpose |
|---|---|---|
| 1 | 01_project_overview.md |
Vision, goals, components, and mapping to existing docs |
| 2 | 02_glossary_and_bitcoin_domain.md |
Bitcoin domain knowledge: BIP-84, locktime, P2WPKH, ZMQ, block headers |
| 3 | 03_architecture_and_data_flow.md |
High-level architecture, data flow, state machine, error handling |
| 4 | 04_modules_detail.md |
Deep dive into each Rust module and binary |
| 5 | 05_api_reference.md |
Complete API docs: HTTP, ZMQ, RPC with examples |
| 6 | 06_database_schema.md |
Full SQL schema, tables, queries, data lifecycle |
| 7 | 07_deployment_and_ops.md |
Environment variables, systemd, nginx, scripts, Tor, installation |
| 8 | 08_security_audit.md |
Threat model, vulnerability assessment, hardening recommendations |
| 9 | 09_references_and_links.md |
Source code links, Cargo dependencies, existing file mapping |
| 10 | 10_dnssec_key_publishing.md |
Publishing the v2 WeTime key via DNSSEC TXT, v3 onion identity, or delegated onion ping key |
Note: This knowledge base is maintained in parallel to the codebase. After any significant change to the code (new features, API changes, schema changes, or security fixes), update the corresponding file in this directory to keep documentation synchronized.