The delete request on the screen recordings page looked up the recording being deleted before it had committed to returning JSON. If that lookup ran into a problem, the page fell back to returning an HTML page instead - which the delete button then tried to parse as JSON and failed, so the button showed a raw parsing error instead of deleting anything.
The recording lookup is now inside the same error handling as the rest of the request, so a delete failure always comes back as a proper JSON error the button can show a clear message for. As a second layer, the button no longer shows raw server or parsing errors in the toast at all - if it ever gets back something unexpected, it shows a generic "try again" message instead.