feat: add workspace and claude messages support
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
-- Admin-authored announcements for normal users.
|
||||
|
||||
CREATE TABLE IF NOT EXISTS user_announcements (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
||||
title TEXT NOT NULL,
|
||||
content TEXT NOT NULL,
|
||||
level TEXT NOT NULL DEFAULT 'info',
|
||||
status TEXT NOT NULL DEFAULT 'published',
|
||||
audience TEXT NOT NULL DEFAULT 'all',
|
||||
starts_at TEXT,
|
||||
ends_at TEXT,
|
||||
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
published_at TEXT
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS user_announcements_status_created_at_idx
|
||||
ON user_announcements (status, created_at);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS user_announcements_active_window_idx
|
||||
ON user_announcements (starts_at, ends_at);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS user_announcement_reads (
|
||||
announcement_id INTEGER NOT NULL,
|
||||
user_id INTEGER NOT NULL,
|
||||
read_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
PRIMARY KEY (announcement_id, user_id),
|
||||
FOREIGN KEY (announcement_id) REFERENCES user_announcements(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS user_announcement_reads_user_id_idx
|
||||
ON user_announcement_reads (user_id);
|
||||
@@ -0,0 +1,34 @@
|
||||
-- Workspace assets: local archive for creative outputs from Picture Agent,
|
||||
-- ComfyUI Agent, Video Agent and ComfyUI workspaces.
|
||||
|
||||
CREATE TABLE IF NOT EXISTS workspace_assets (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
public_id TEXT NOT NULL UNIQUE,
|
||||
user_id INTEGER,
|
||||
source TEXT NOT NULL,
|
||||
kind TEXT NOT NULL,
|
||||
title TEXT,
|
||||
prompt TEXT,
|
||||
model TEXT,
|
||||
status TEXT NOT NULL DEFAULT 'completed',
|
||||
mime_type TEXT,
|
||||
file_name TEXT,
|
||||
file_path TEXT,
|
||||
remote_url TEXT,
|
||||
thumbnail_path TEXT,
|
||||
size_bytes INTEGER NOT NULL DEFAULT 0,
|
||||
metadata TEXT NOT NULL DEFAULT '{}',
|
||||
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
deleted_at TEXT,
|
||||
FOREIGN KEY(user_id) REFERENCES users(id) ON DELETE SET NULL
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_workspace_assets_user_created
|
||||
ON workspace_assets(user_id, created_at DESC);
|
||||
CREATE INDEX IF NOT EXISTS idx_workspace_assets_source_created
|
||||
ON workspace_assets(source, created_at DESC);
|
||||
CREATE INDEX IF NOT EXISTS idx_workspace_assets_kind_created
|
||||
ON workspace_assets(kind, created_at DESC);
|
||||
CREATE INDEX IF NOT EXISTS idx_workspace_assets_deleted
|
||||
ON workspace_assets(deleted_at);
|
||||
Reference in New Issue
Block a user