CREATE TABLE derivatives ( derivative_id UUID PRIMARY KEY, parent_asset_id UUID NOT NULL REFERENCES assets(asset_id), profile_type TEXT NOT NULL, storage_path TEXT NOT NULL, mime_type TEXT NOT NULL DEFAULT '', file_size BIGINT NOT NULL DEFAULT 0, width INTEGER NOT NULL DEFAULT 0, height INTEGER NOT NULL DEFAULT 0, generation_status TEXT NOT NULL DEFAULT 'pending' ); CREATE INDEX idx_derivatives_parent ON derivatives(parent_asset_id); CREATE INDEX idx_derivatives_parent_profile ON derivatives(parent_asset_id, profile_type);