mirror of
https://github.com/penpot/penpot.git
synced 2026-06-27 01:32:05 +00:00
Demo profiles were created with deleted-at set to a future date, causing conflicts with db/is-row-deleted? which treats any non-nil deleted-at as deleted. This required ::db/remove-deleted false workarounds scattered across the codebase. Now demo profiles are created with deleted_at = NULL (fully active during their lifetime). A delayed :demo-purge worker task is scheduled at creation time. When it fires after the configured deletion-delay, it marks the profile with deleted_at = now() and submits the standard delete-object cascade (teams -> projects -> files -> media). - New: app.tasks.demo-purge handler (delayed worker task) - Modified: demo.clj removes :deleted-at, adds delayed task submission - Modified: profile.clj removes ::db/remove-deleted false workaround - Modified: main.clj registers demo-purge handler