aboutsummaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/src
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-09-24 02:20:18 +0200
committerChristophe Besson <cbesson@gmail.com>2026-09-24 16:45:37 +0200
commit5e58b64668537603a0f40daf9e64f1ac8b4d89b6 (patch)
treefc29337528abc18e0f7602cb60a13eb7651e4b1f /packages/meshbay-hub/src
parent1ba95852f4365d166411f8e6db175db84ec06ec1 (diff)
downloadmeshbay-5e58b64668537603a0f40daf9e64f1ac8b4d89b6.tar.gz
refactor(node): move the Videos catalogue handlers out of webrtc_server
VideoMetaMixin in transport/webrtc/apps/video_meta.py: media and season meta, TMDB search and its per-member bound, posters, and the operator's TMDB ops. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'packages/meshbay-hub/src')
-rw-r--r--packages/meshbay-hub/src/meshbay_hub/static/transport.js10
1 files changed, 5 insertions, 5 deletions
diff --git a/packages/meshbay-hub/src/meshbay_hub/static/transport.js b/packages/meshbay-hub/src/meshbay_hub/static/transport.js
index fb698e8..817f182 100644
--- a/packages/meshbay-hub/src/meshbay_hub/static/transport.js
+++ b/packages/meshbay-hub/src/meshbay_hub/static/transport.js
@@ -1457,7 +1457,7 @@ class MeshBayTransport {
* path names the *folder* a file is in (indexer.py's `_virtual_dir`), so
* two files sharing a folder (any multi-episode season) would resolve to
* whichever entry the node's index happened to return first (found live
- * via the Music app's identical bug, 2026-08-25 — see webrtc_server.py's
+ * via the Music app's identical bug, 2026-08-25 — see apps/video_meta.py's
* `_do_media_meta_request`).
* `confidence: 0` (no tmdb_id, no fields) means no confident match —
* the caller falls back to a thumbnail-only card (§4.1), not an error.
@@ -1522,8 +1522,8 @@ class MeshBayTransport {
* node-wide (media_cache is shared, not per-viewer) — an unsigned
* override would let any member vandalize another show's metadata.
* Applies to every file sharing the representative one's display_title,
- * not just the file the operator happened to be looking at (webrtc_
- * server.py's _admin_exec_tmdb_override). Keyed by `fileId`, not a path
+ * not just the file the operator happened to be looking at (apps/
+ * video_meta.py's _admin_exec_tmdb_override). Keyed by `fileId`, not a path
* — same reasoning as fetchMediaMeta above.
*/
async overrideTmdbMatch(fileId, tmdbId, mediaType, signFn) {
@@ -1573,7 +1573,7 @@ class MeshBayTransport {
});
if (msg.type === 'error') throw new Error(msg.detail);
if (msg.type === 'admin_challenge') {
- // Must match the node's subject byte-for-byte (webrtc_server.py
+ // Must match the node's subject byte-for-byte (apps/video_meta.py
// _do_tmdb_config) — the token itself is never part of the subject
// (it would end up in the audit log in plaintext), only whether one
// was supplied. The language is not a secret, so it appears as-is.
@@ -1596,7 +1596,7 @@ class MeshBayTransport {
});
if (msg.type === 'error') throw new Error(msg.detail);
if (msg.type === 'admin_challenge') {
- // Must match the node's subject byte-for-byte (webrtc_server.py
+ // Must match the node's subject byte-for-byte (apps/video_meta.py
// _do_tmdb_enabled): Python's f"{bool}" is "True"/"False", not JS's
// lowercase.
const subject = enabled ? 'True' : 'False';