feat: add postgres migrations and repository adapters for vertical slice

This commit is contained in:
2026-05-31 05:43:21 +02:00
parent 4e2fc99065
commit 8c1a0e4519
15 changed files with 1324 additions and 39 deletions

View File

@@ -0,0 +1,23 @@
CREATE TABLE assets (
asset_id UUID PRIMARY KEY,
volume_id UUID NOT NULL REFERENCES storage_volumes(volume_id),
relative_path TEXT NOT NULL,
checksum TEXT NOT NULL,
asset_type TEXT NOT NULL,
mime_type TEXT NOT NULL,
file_size BIGINT NOT NULL,
is_processed BOOLEAN NOT NULL DEFAULT false,
owner_user_id UUID NOT NULL REFERENCES users(id),
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
);
CREATE INDEX idx_assets_checksum ON assets(checksum);
CREATE INDEX idx_assets_owner ON assets(owner_user_id);
CREATE TABLE asset_metadata (
asset_id UUID NOT NULL REFERENCES assets(asset_id) ON DELETE CASCADE,
metadata_source TEXT NOT NULL,
data JSONB NOT NULL DEFAULT '{}',
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
PRIMARY KEY (asset_id, metadata_source)
);