mirror of
https://github.com/penpot/penpot.git
synced 2026-10-29 14:00:37 +00:00
The backend answers a :conflict refusal (:file-modified, :file-locked) with HTTP 409 since the previous commit. On the frontend that type had no ptk/handle-error method, so the version-restore flow would have fallen to the generic toast instead of the error page the old 500 reached. errors.cljs now maps :conflict to the same exceptional-state handler. The technical guide's audit paragraph said rename, archive and delete report nothing; they report a duration and an outcome. The merge step list now records the re-validation after the repair and its refusal, and the update section names the same refusal. AI-assisted-by: mimo-v2.6-pro, claude-opus-5-5