feat: add a separate watch thumbnail gallery and logical device
Community checks / verify (push) Skipped
Verify Frame Flow / verify (push) Failing after 6m12s

This commit is contained in:
渡口浪人
2026-10-23 15:00:29 +08:00
parent 7178235022
commit 081d8b6ee0
12 changed files with 552 additions and 21 deletions
+20 -1
View File
@@ -601,7 +601,8 @@ def create_app(settings=None, start_worker=True):
return [
assets.info(r["id"])
for r in db.all(
"SELECT assets.id FROM assets LEFT JOIN asset_metadata ON asset_metadata.asset_id=assets.id WHERE kind!='cache' AND "
"SELECT assets.id FROM assets LEFT JOIN asset_metadata ON asset_metadata.asset_id=assets.id WHERE kind!='cache' "
"AND NOT EXISTS (SELECT 1 FROM asset_sources s WHERE s.asset_id=assets.id AND json_extract(s.payload,'$.type')='thumbnail') AND "
"(?='all' OR (?='uploaded' AND kind='images') OR (?='generated' AND kind='generated')) "
"AND (?='all' OR COALESCE(origin,'unknown')=?) AND (? IS NULL OR job_id=?) "
"ORDER BY created_at DESC LIMIT ? OFFSET ?",
@@ -642,6 +643,16 @@ def create_app(settings=None, start_worker=True):
db.execute("DELETE FROM asset_metadata WHERE asset_id=?", (asset_id,))
db.execute("DELETE FROM asset_sources WHERE asset_id=?", (asset_id,))
db.execute("DELETE FROM assets WHERE id=?", (asset_id,))
for row in db.all(
"SELECT key,payload FROM app_config WHERE key LIKE 'wrist-thumbnail:%'"
):
import json
if json.loads(row["payload"]).get("asset_id") == asset_id:
db.execute(
"DELETE FROM app_config WHERE key=? AND payload=?",
(row["key"], row["payload"]),
)
return Response(status_code=204)
@app.put(
@@ -1095,6 +1106,14 @@ def create_app(settings=None, start_worker=True):
or bool(settings.api_key)
or any(registry.keys),
),
GalleryDestination(
id="watch",
adapter="watch-thumbnails",
name="Watch",
storage="local",
connected=True,
supports_upload=True,
),
GalleryDestination(
id="local",
adapter="local-assets",