Files
UHD_Media_Tool/scripts/mp-sync
rootandClaude Opus 5.5 04cffcd1f1 feat(sites): on-demand site detail page content (INT-2)
- SiteReleaseDetail.page: description, MediaInfo/BDInfo, screenshots,
  IMDb / Douban / TMDB ids, file list, tags, uploader, plus a parse probe
  (labels found) for layout-change diagnosis. Generic NexusPHP rules
  (field label -> next sibling) starting from the MovieClaw detail
  selectors; site overrides under umt.detail.page (HHClub: div labels).
  M-Team builds the same structure from descr BBCode + mediainfo.
- Fetched only on demand (drawer open without cache, "复核详情",
  release.inspect); content in kv_cache region site.detail for the
  site detail cache period (>= 24 h); within the window the site is not
  requested again. External ids persist in source_release.raw._detail,
  which list snapshots do not overwrite.
- Screenshots only as proxy paths /api/v1/img/site-detail/{rid}/{i}:
  public-address check on every hop, no site credentials, magic-byte
  image check, 8 MB cap. Poster proxy shares the same helper.
- Identity: site ids count as explicit-id evidence; when TMDB is
  queried, a TMDB id goes straight to details and an IMDb id to
  /find (no title search on a hit). Douban only for local recall.
- Release drawer "站点详情页" section; fixtures and tests for HHClub div
  layout, rowhead layout, BBCode, cache/proxy/identity end to end.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-09-29 16:21:17 +08:00
..

scripts/mp-sync

跟随上游移植工具(说明与对照总表:docs/porting/mp-sync-ledger.md)。用 deno run -A 运行(yaml 经根 deno.json import map 解析),不依赖 deno.json 任务。

脚本 作用
check.mjs [--mp <MP 仓库>] [--to <提交>] [--json] [--ledger <文件>] 比较 ledger.json 与 MP 目标提交:已变更 / 已删除 / spider/、parser/ 新增文件,输出 git diff 命令;有变化退出码 1
build-ledger.mjs [--mp <MP 仓库>] [--commit <提交>] 扫描源码 @mp-source <路径> @ <提交> 标签 + ledger.manual.json,生成 ledger.json(含上游文件 sha256)并刷新文档表格
movieclaw-import.mjs [--repo <MC 仓库>] [--ref v0.27.0] [--check] MovieClaw v0.27.0(MIT)站点 YAML → packages/adapters/src/sites/definitions/*.json + manifest.generated.ts;覆盖层 movieclaw-overrides/<id>.json;--check 只比较
deno run -A scripts/mp-sync/check.mjs --to <新提交>
deno run -A scripts/mp-sync/build-ledger.mjs --commit <新提交>
deno run -A scripts/mp-sync/movieclaw-import.mjs --check

MovieClaw v0.27.0 之后为附条件许可:movieclaw-import.mjs 校验 ref→提交与 LICENSE=MIT,其他 ref 需 --allow-ref 并另行核对许可。