New /sync/* endpoints for peer-to-peer replication: - POST /sync/hashes - list all asset digests for reconciliation - POST /sync/pull - pull full assets (metadata + content) by hash - POST /sync/push - push asset with explicit timestamp for deterministic hashing - POST /sync/meta - update metadata (tags, description, trash state) All endpoints use protobuf encoding (prost) and require X-Sync-Key header matching config.sync_api_key. Sync API is disabled when no key is configured. Also adds db::get_all_assets() for sync reconciliation (includes trashed). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Description
No description provided
Languages
Rust
95.3%
PowerShell
2.9%
Shell
1.8%