docs: v1.2.0 changelog and operations runbook
- DOC-01: CHANGELOG.md for v1.2.0 — crash fixes, DWN sync perf, test suite, did:dht planning, DWN protocols, deploy hardening, ISO improvements - DOC-04: operations-runbook.md — 17 sections covering health checks, container management, federation, Tor, backups, updates, diagnostics, emergency recovery, and test execution Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.6
parent
85343ab481
commit
728df8780d
@@ -7,6 +7,71 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [1.2.0] - 2026-03-14
|
||||
|
||||
### Fixed
|
||||
|
||||
#### Crash Loop Resolution
|
||||
- Identified and fixed UFW blocking Podman subnet DNS resolution on .228
|
||||
- Fixed archy-nbxplorer, btcpay-server, mempool-web, immich crash loops (3500+ restarts)
|
||||
- All 32 containers stable with zero crash loops after fix
|
||||
|
||||
#### DWN Sync Performance
|
||||
- Made `dwn.sync` endpoint non-blocking (background task with polling)
|
||||
- Added 90-second overall sync timeout to prevent indefinite blocking
|
||||
- Deduplicated peer onion addresses before syncing
|
||||
- Batched message pushes (50/batch) instead of one-at-a-time over Tor
|
||||
- Fixed HTTP handler to process all messages in batch (was only first)
|
||||
|
||||
#### Backup Reliability
|
||||
- Increased backup.create rate limit from 3/600 to 10/600 for testing
|
||||
- Increased backup.restore rate limit from 2/600 to 5/600
|
||||
|
||||
#### Deploy Script
|
||||
- Added `set -eo pipefail` for pipe error detection
|
||||
- Fixed duplicate variable initialization
|
||||
- Fail on missing binary in --both path (was silently ignored)
|
||||
- Added post-deploy health check on .198
|
||||
|
||||
### Added
|
||||
|
||||
#### Cross-Node Test Suite
|
||||
- US-08: DWN sync tests — 50/50 pass (register, write, sync, query bidirectional)
|
||||
- US-10: Backup/restore tests — 80/80 pass (create, list, verify, delete × 10 × 2 nodes)
|
||||
- US-15: Boot recovery tests — .228 9/9 pass (32/32 containers survive 3 reboots)
|
||||
- `trigger_sync_and_wait()` helper for polling async DWN sync
|
||||
|
||||
#### did:dht Integration Planning
|
||||
- Architecture document: `docs/did-dht-integration.md`
|
||||
- BEP-44 mutable DHT items, DNS packet encoding, z-base-32 identifiers
|
||||
- Publication/resolution flows, `mainline` crate selection, security notes
|
||||
|
||||
#### DWN Protocol Definitions
|
||||
- 4 Archipelago DWN protocols documented in `docs/dwn-protocols.md`
|
||||
- Node Identity Announcements (public)
|
||||
- File Sharing Catalog (public)
|
||||
- Federation State (private)
|
||||
- App Deployment Requests (private)
|
||||
- Auto-registration of all 4 protocols on backend startup
|
||||
|
||||
#### Deploy Script Improvements
|
||||
- `--dry-run` flag shows what would be deployed without executing
|
||||
- Works with all other flags (--live, --both, --frontend-only)
|
||||
|
||||
#### ISO/First-Boot Improvements
|
||||
- Auto-create swap file on first boot (50% RAM, min 2GB, max 8GB)
|
||||
- Tiered container startup ordering in first-boot script
|
||||
- Tier 1: Databases, Tier 2: Core Services (5s delay), Tier 3: Applications (5s delay)
|
||||
|
||||
### Security
|
||||
|
||||
#### Backend Hardening
|
||||
- Rate limiting on federation endpoints (join 5/60s, invite 10/300s)
|
||||
- DWN message data size limit (10MB max)
|
||||
- Container security: cap-drop ALL, no-new-privileges, per-app memory limits
|
||||
- Input validation: path traversal protection on identity/DID endpoints
|
||||
- Error sanitization: internal paths stripped from error messages
|
||||
|
||||
## [1.1.0] - 2026-03-13
|
||||
|
||||
### Added
|
||||
|
||||
Reference in New Issue
Block a user