true matchmaking

This commit is contained in:
Devin Zuczek
2026-07-01 15:16:37 -04:00
parent 70aa33a27a
commit f48d78bd5f
15 changed files with 938 additions and 50 deletions
+16
View File
@@ -0,0 +1,16 @@
-- Image metadata stored as a JSON blob with generated (virtual) columns for
-- querying. Written by the `api` worker on upload (/api/images/v4/uploadsaved)
-- and read back via /api/images/v6. Generated from src/images-db.ts (SCHEMA_DDL)
-- — keep in sync.
CREATE TABLE IF NOT EXISTS image (
data TEXT NOT NULL,
id INTEGER GENERATED ALWAYS AS (json_extract(data, '$.Id')) VIRTUAL,
image_name TEXT GENERATED ALWAYS AS (json_extract(data, '$.ImageName')) VIRTUAL,
player_id INTEGER GENERATED ALWAYS AS (json_extract(data, '$.PlayerId')) VIRTUAL,
room_id INTEGER GENERATED ALWAYS AS (json_extract(data, '$.RoomId')) VIRTUAL
);
CREATE UNIQUE INDEX IF NOT EXISTS idx_image_id ON image (id);
CREATE INDEX IF NOT EXISTS idx_image_image_name ON image (image_name);
CREATE INDEX IF NOT EXISTS idx_image_player_id ON image (player_id);
CREATE INDEX IF NOT EXISTS idx_image_room_id ON image (room_id);