feat: architecture review fixes, self-update system, CI pipeline, supply chain hardening
Architecture review (all P0+P1 issues now fixed): - Add 10s timeout to 6 bare Nostr client.connect() calls - Pin all 12 crypto deps to exact versions from Cargo.lock - Pin all 15 floating container image tags to exact patch versions - Add CI pipeline (cargo fmt + clippy + tests, frontend type-check + build) Self-update system (git.tx1138.com): - scripts/self-update.sh: pull, build, install, restart with rollback - systemd timer checks daily at 3 AM - update.check RPC does git-based checks when repo is present - update.git-apply RPC triggers self-update from UI - Default update URL changed from GitHub to git.tx1138.com - Git added to ISO package list for fresh installs Documentation: - CHANGELOG v1.3.1 with all changes - README updated (version, update system section) - BETA-PROGRESS session #6 logged - architecture-review.html: 4 issues marked FIXED, 8/12 refactoring done Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
20
CHANGELOG.md
20
CHANGELOG.md
@@ -7,6 +7,26 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [1.3.1] - 2026-03-25
|
||||
|
||||
### Security
|
||||
- All crypto dependencies pinned to exact versions from Cargo.lock (supply chain hardening)
|
||||
- ed25519-dalek 2.1 → 2.2.0, sha2 → 0.10.9, hmac → 0.12.1, argon2 → 0.5.3, chacha20poly1305 → 0.10.1, zeroize → 1.8.2, hkdf → 0.12.4, aes-gcm → 0.10.3
|
||||
- All container images pinned to exact patch versions (no more floating tags)
|
||||
- postgres:15 → 15.17, redis:7 → 7.4.8, nginx:alpine → 1.29.6-alpine, uptime-kuma:1 → 1.23.17, nextcloud:29 → 29.0.16, valkey:8 → 8.1.6, mariadb:11.4 → 11.4.10, and 7 more
|
||||
- DWN server pinned by SHA256 digest (only has `:main` branch tag)
|
||||
|
||||
### Reliability
|
||||
- Nostr relay connections now have 10s timeout — prevents indefinite hangs blocking RPC calls
|
||||
- identity_manager.rs: publish_profile()
|
||||
- nostr_discovery.rs: publish_node_revocation(), verify_revocation(), discover_archipelago_nodes()
|
||||
- marketplace.rs: discover(), publish()
|
||||
|
||||
### Infrastructure
|
||||
- CI pipeline added (.github/workflows/ci.yml) — cargo fmt, clippy, tests + frontend type-check, build
|
||||
- Update system now fetches from git.tx1138.com Gitea instance (configurable via ARCHIPELAGO_UPDATE_URL)
|
||||
- Cleaned up stale git branches (app-store, overnight/2026-03-12, overnight/2026-03-13)
|
||||
|
||||
## [1.3.0] - 2026-03-19
|
||||
|
||||
### Security
|
||||
|
||||
Reference in New Issue
Block a user