Autosave doesn't work

Hi everyone! :waving_hand:

Lately, it has been happening more and more frequently that the autosave function does not work when using the browser.

I have noticed that the issue occurs when I interact with components from linked libraries, such as detaching components, copying parts of a component to other boards, and similar operations.

WebGL render enabled.

Context:
--------------------
Timestamp: Mon, 19 Oct 2026 11:56:48 GMT
Hint:      error on validating file referential integrity
Prof ID:   0fb9115d-a827-815a-8001-d40ebdf123c9
Team ID:   0fb9115d-a827-815a-8001-d40f619c7d77
File ID:   17193a1f-939a-80b5-8008-c744d8eb79bf
Version:   2.18.4-RC3
HREF:      https://design.penpot.app/#/workspace?team-id=0fb9115d-a827-815a-8001-d40f619c7d77&file-id=17193a1f-939a-80b5-8008-c744d8eb79bf&page-id=17193a1f-939a-80b5-8008-c744d8eb79c0&board-id=83629bb8-2fb1-80ab-8008-d02948417ffe

Data:
--------------------
{:type :validation,
 :code :referential-integrity,
 :hint "error on validating file referential integrity",
 :file-id #uuid "17193a1f-939a-80b5-8008-c744d8eb79bf",
 :details
 [{:code :missing-slot,
   :hint "Shape has been swapped, should have swap slot",
   :shape
   {:id #uuid "04ec8735-719f-8098-8008-d029fca91742",
    :type :frame,
    :y -1099.9997360094972,
    :hide-fill-on-export false,
    :layout-gap-type :multiple,
    :layout-padding {#, #, #, #},
    :transform ##object[$app$common$geom$matrix$Matrix$$]{#, #, #, #, #, #},
    :rotation 0,
    :layout-wrap-type :nowrap,
    :layout :flex,
    :hide-in-viewer true,
    :name "ordineMinimo",
    :layout-align-items :start,
    :width 193.99999704545365,
    :layout-padding-type :simple,
    :touched #{:geometry-group},
    :points [# # # #],
    :fixed-scroll false,
    :r2 0,
    :shape-ref #uuid "1cc9e842-7f56-80c9-8008-9f71af3801a6",
    :show-content true,
    :layout-item-h-sizing :auto,
    :proportion-lock false,
    :layout-gap {#, #},
    :transform-inverse ##object[$app$common$geom$matrix$Matrix$$]{#, #, #, #, #, #},
    ...},
   :file-id #uuid "17193a1f-939a-80b5-8008-c744d8eb79bf",
   :page-id #uuid "17193a1f-939a-80b5-8008-c744d8eb79c0",
   :shape-id #uuid "04ec8735-719f-8098-8008-d029fca91742",
   :args {:swap-slot #uuid "8bc434c1-5057-8002-8008-ba8a03e0d65e"}}
  {:code :missing-slot,
   :hint "Shape has been swapped, should have swap slot",
   :shape
   {:id #uuid "04ec8735-719f-8098-8008-d029fca91743",
    :type :frame,
    :y -1169.9998329844275,
    :hide-fill-on-export false,
    :layout-gap-type :multiple,
    :layout-padding {#, #, #, #},
    :transform ##object[$app$common$geom$matrix$Matrix$$]{#, #, #, #, #, #},
    :rotation 0,
    :layout-wrap-type :nowrap,
    :layout :flex,
    :hide-in-viewer true,
    :name "codiceSconto",
    :layout-align-items :center,
    :width 251.00004641493103,
    :layout-padding-type :multiple,
    :touched #{:geometry-group},
    :points [# # # #],
    :fixed-scroll false,
    :r2 6,
    :shape-ref #uuid "d1724f43-b960-8024-8008-9f668e3c888e",
    :show-content true,
    :layout-item-h-sizing :auto,
    :proportion-lock false,
    :layout-gap {#, #},
    :transform-inverse ##object[$app$common$geom$matrix$Matrix$$]{#, #, #, #, #, #},
    ...},
   :file-id #uuid "17193a1f-939a-80b5-8008-c744d8eb79bf",
   :page-id #uuid "17193a1f-939a-80b5-8008-c744d8eb79c0",
   :shape-id #uuid "04ec8735-719f-8098-8008-d029fca91743",
   :args {:swap-slot #uuid "8bc434c1-5057-8002-8008-ba8a03e0d660"}}
  {:code :missing-slot,
   :hint "Shape has been swapped, should have swap slot",
   :shape
   {:id #uuid "04ec8735-719f-8098-8008-d029fca91744",
    :type :frame,
    :y -1201.9998608495755,
    :hide-fill-on-export false,
    :layout-gap-type :multiple,
    :layout-padding {#, #, #, #},
    :transform ##object[$app$common$geom$matrix$Matrix$$]{#, #, #, #, #, #},
    :rotation 0,
    :layout-wrap-type :nowrap,
    :layout :flex,
    :hide-in-viewer true,
    :name "usaCodice",
    :layout-align-items :start,
    :width 278.0001447773143,
    :layout-padding-type :simple,
    :touched #{:geometry-group},
    :points [# # # #],
    :fixed-scroll false,
    :r2 0,
    :shape-ref #uuid "1cc9e842-7f56-80c9-8008-9f71af3801a8",
    :show-content true,
    :layout-item-h-sizing :auto,
    :proportion-lock false,
    :layout-gap {#, #},
    :transform-inverse ##object[$app$common$geom$matrix$Matrix$$]{#, #, #, #, #, #},
    ...},
   :file-id #uuid "17193a1f-939a-80b5-8008-c744d8eb79bf",
   :page-id #uuid "17193a1f-939a-80b5-8008-c744d8eb79c0",
   :shape-id #uuid "04ec8735-719f-8098-8008-d029fca91744",
   :args {:swap-slot #uuid "8bc434c1-5057-8002-8008-ba8a03e0d663"}}],
 :uri "https://design.penpot.app/api/main/methods/update-file?id=17193a1f-939a-80b5-8008-c744d8eb79bf",
 :status 400}

Trace:
--------------------
Error: http error
  at new $APP.$cljs$core$ExceptionInfo$$ (https://design.penpot.app/js/shared.js?version=2.18.4-RC3-1792159139:1408:120)
  at $APP.$cljs$core$ex_info$cljs$0core$0IFn$0_invoke$0arity$03$$ (https://design.penpot.app/js/shared.js?version=2.18.4-RC3-1792159139:1409:358)
  at $APP.$cljs$core$ex_info$cljs$0core$0IFn$0_invoke$0arity$02$$ (https://design.penpot.app/js/shared.js?version=2.18.4-RC3-1792159139:1409:131)
  at $APP.$app$main$repo$handle_response$$ (https://design.penpot.app/js/shared.js?version=2.18.4-RC3-1792159139:7292:286)
  at https://design.penpot.app/js/shared.js?version=2.18.4-RC3-1792159139:3747:264
  at _ (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:16480)
  at e.f [as _nextOverride] (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:16430)
  at e.hwr [as _next] (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:1877)
  at e.next (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:1371)
  at e.next [as _nextOverride] (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:25768)
  at e.hwr [as _next] (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:1877)
  at e.next (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:1371)
  at e.next [as _nextOverride] (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:14021)
  at e.hwr [as _next] (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:1877)
  at e.next (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:1371)
  at e.next [as _nextOverride] (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:14021)
  at e.hwr [as _next] (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:1877)
  at e.next (https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:1371)
  at https://design.penpot.app/js/libs.js?version=2.18.4-RC3-1792159139:811:4481


Last events:
--------------------
2026-10-19T11:56:42+02:00  (+0ms)      :app.main.data.workspace.collapse/expand-all-parents
2026-10-19T11:56:42+02:00  (+0ms)      :app.main.data.workspace.comments/handle-interrupt
2026-10-19T11:56:42+02:00  (+1ms)      :app.main.router/navigate
2026-10-19T11:56:42+02:00  (+0ms)      :app.main.data.workspace.selection/select-shape
2026-10-19T11:56:42+02:00  (+0ms)      :app.main.data.workspace.transforms/start-move-selected
2026-10-19T11:56:42+02:00  (+19ms)     :app.main.router/navigated
2026-10-19T11:56:42+02:00  (+97ms)     :app.main.data.workspace.viewport/finish-panning
2026-10-19T11:56:42+02:00  (+0ms)      :app.main.data.workspace.zoom/finish-zooming
2026-10-19T11:56:43+02:00  (+110ms)    :app.main.data.modal/update-modal-props
2026-10-19T11:56:43+02:00  (+766ms)    :app.main.data.workspace.clipboard/paste-from-event
2026-10-19T11:56:43+02:00  (+26ms)     :app.main.data.event/event
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.undo/start-undo-transaction
2026-10-19T11:56:43+02:00  (+3ms)      :app.main.data.changes/sync-wasm-structural-changes
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.changes/apply-changes-localy
2026-10-19T11:56:43+02:00  (+1ms)      :app.main.data.changes/update-indexes
2026-10-19T11:56:43+02:00  (+0ms)      
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.changes/commit
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.undo/append-undo
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.changes/commit-changes
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.selection/select-shapes
2026-10-19T11:56:43+02:00  (+0ms)      :layout/update
2026-10-19T11:56:43+02:00  (+1ms)      :app.main.data.workspace.undo/commit-undo-transaction
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.clipboard/paste-shapes
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.clipboard/paste-transit-shapes
2026-10-19T11:56:43+02:00  (+15ms)     :app.main.data.workspace.collapse/expand-all-parents
2026-10-19T11:56:43+02:00  (+11ms)     :app.main.data.workspace.undo/start-undo-transaction
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.modifiers/clear-local-transform
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.guides/move-frame-guides
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.shapes/update-shapes
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.undo/commit-undo-transaction
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.modifiers/apply-wasm-modifiers
2026-10-19T11:56:43+02:00  (+0ms)      :app.main.data.workspace.shape-layout/update-layout-positions
2026-10-19T11:56:44+02:00  (+178ms)    :app.main.data.persistence/update-status
2026-10-19T11:56:44+02:00  (+7ms)      :app.main.data.modal/update-modal-props
2026-10-19T11:56:44+02:00  (+794ms)    :app.main.data.changes/apply-changes-localy
2026-10-19T11:56:44+02:00  (+2ms)      :app.main.data.changes/update-indexes
2026-10-19T11:56:44+02:00  (+0ms)      
2026-10-19T11:56:44+02:00  (+0ms)      :app.main.data.changes/commit
2026-10-19T11:56:44+02:00  (+0ms)      :app.main.data.changes/commit-changes
2026-10-19T11:56:45+02:00  (+204ms)    :app.main.data.persistence/update-status
2026-10-19T11:56:45+02:00  (+847ms)    :app.main.data.event/chunk-persisted
2026-10-19T11:56:47+02:00  (+1951ms)   :app.main.data.persistence/persistence-notification
2026-10-19T11:56:47+02:00  (+0ms)      :app.main.data.workspace.common/set-workspace-visited
2026-10-19T11:56:47+02:00  (+1ms)      :app.main.data.persistence/update-status
2026-10-19T11:56:47+02:00  (+10ms)     :app.main.data.persistence/persist-commit
2026-10-19T11:56:47+02:00  (+0ms)      :app.main.data.persistence/run-persistence-task
2026-10-19T11:56:47+02:00  (+0ms)      :app.main.data.persistence/append-commit
2026-10-19T11:56:48+02:00  (+288ms)    :app.main.data.persistence/error
2026-10-19T11:56:48+02:00  (+1ms)      :app.main.data.notifications/hide
2026-10-19T11:56:48+02:00  (+0ms)      :app.main.data.event/event
2026-10-19T11:56:48+02:00  (+0ms)      :app.main.data.persistence/persistence-failed
1 Like

Hi @findut!

Yes, we’re currently working on it :folded_hands:

5 Likes