The shared apiClient unconditionally called response.json() on every response, including 204 No Content (returned by DELETE endpoints). This caused "Invalid JSON response from server" errors on all delete operations across all modules and personas. Now returns null for 204 responses without attempting JSON parse. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>