Archive/unarchive routes were returning the row-update boolean rather than the actual archived flag, so a no-op unarchive replied with `archived: true`. Re-read the row and report its current state instead. Also adds tests for archive (terminal-only), unarchive event emission, and listAll filtering. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>