- volume-aware deletion: read-only volumes remove DB only, writable volumes soft-delete to trash with configurable grace period - trash page with restore, worker purge sweep (TRASH_RETENTION_DAYS) - album delete endpoint + sidebar trash icon - asset delete from timeline selection toolbar - all listing queries exclude trashed assets (deleted_at IS NULL) - timeline ordered by EXIF capture date, date-summary endpoint - README rewritten with features, setup, full env var table
4 lines
217 B
SQL
4 lines
217 B
SQL
ALTER TABLE assets ADD COLUMN deleted_at TIMESTAMPTZ NULL;
|
|
ALTER TABLE assets ADD COLUMN deleted_by UUID NULL REFERENCES users(id);
|
|
CREATE INDEX idx_assets_deleted ON assets (deleted_at) WHERE deleted_at IS NOT NULL;
|