2 months ago
87d14d5Close remaining #175 P0/P1 protocol gaps: - Manifest carries operation_id; accepted-commit requires operation match plus durable candidate digest/size (never claim CAS after coalesce clear) - CAS-boundary ops (frozen/uploaded candidate) reconcile alone — not coalesced - Import resolves working copy only from prepared.library_id - bind_song_ids_mark_pending_and_dirty_tx rejects library_id mismatch - Coalesce skips rate-limited RetryWait; preserves max next_attempt_at_ms - Per-library commit lock covers pre-mutation refresh + prepare + mutate + project
Parent4f88cf1