docs: update status with production infrastructure sprint

This commit is contained in:
2026-04-01 09:22:02 +02:00
parent 50a63a6b96
commit afaaf2c417

View File

@@ -1,5 +1,63 @@
# Status Log # Status Log
## 2026-04-01 — Production Infrastructure Sprint
### Completed
- **Error handling** — `error.rs`: Structured error types with context for all subsystems
- MeshError, TransportError, RoutingError, CryptoError, ProtocolError, StoreError, ConfigError
- ErrorContext trait for chaining errors with context
- Helper methods for common error construction
- **Configuration** — `config.rs`: Runtime config with TOML parsing
- MeshConfig, IdentityConfig, AnnounceConfig, RoutingConfig, StoreConfig
- TransportConfig (QUIC/TCP/LoRa), CryptoConfig, RateLimitConfig, LoggingConfig
- Validation with meaningful error messages
- MeshConfig::constrained() preset for low-resource devices
- **Metrics/Observability** — `metrics.rs`: Counter/Gauge/Histogram primitives
- Per-transport metrics (sent/received/errors/bytes)
- Routing metrics (table size, lookups, misses)
- Store metrics (stored/delivered/expired)
- Crypto metrics (encryptions, failures, replay detections)
- JSON-serializable MetricsSnapshot for export
- **Rate limiting** — `rate_limit.rs`: DoS protection
- TokenBucket with configurable refill rate
- Per-peer limiters for messages, announces, KeyPackage requests
- DutyCycleTracker for LoRa EU868 compliance
- BackpressureController with priority-based shedding
- **Persistence** — `persistence.rs`: Durable storage
- AppendLog with JSON entries and compaction
- PersistentRoutingTable with TTL-based expiry
- PersistentMessageStore for offline delivery
- Atomic file operations with fsync
- **Graceful shutdown** — `shutdown.rs`: Coordinated termination
- ShutdownCoordinator with phase transitions (Draining → Persisting → Cleanup → Complete)
- TaskGuard RAII for tracking active tasks
- ConnectionDrainer for clean connection teardown
- ShutdownHooks for persist/cleanup callbacks
- **Integration tests** — `tests/multi_node.rs`: 16 production scenarios
- Rate limiting per-peer isolation
- Store-and-forward, message dedup, GC
- Envelope V2 signatures, forwarding, broadcast
- Config validation, TOML roundtrip
- Shutdown coordination, concurrent access
### Test Coverage
- 189 unit tests + 16 integration tests = **205 total**
- All passing
### What's Next
1. Wire new modules into P2pNode startup
2. Add tracing spans for distributed tracing
3. Health check HTTP endpoint
4. Prometheus metrics export
---
## 2026-03-31 — FAPP: Free Appointment Propagation Protocol ## 2026-03-31 — FAPP: Free Appointment Propagation Protocol
### Completed ### Completed