@lingjingai/scriptctl 0.63.7 → 0.63.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,5 @@
1
+ # 0.63.8
2
+
3
+ - 视频 ingest 整合保留逐集提取的 Action 正文,修复人物别名「头」「妈」「洛」「哥」及地点、道具别名误替换普通词的问题。
4
+ - 名称归一化仅作用于完整的结构化资产引用;人物跨集更名、历史 aliases、稳定 ID 和道具去重继续生效。
5
+ - 沿用视频 pipeline 19 和原分集 checkpoint,修复无需重新调用模型;已经人工审核或修改的成稿应单独核对恢复。
package/dist/bin.js CHANGED
@@ -16487,29 +16487,8 @@ function checkLifecycle2(store, previous, episodes, force) {
16487
16487
  }
16488
16488
  }
16489
16489
  function renameDocs(docs, alias) {
16490
- const terms = /* @__PURE__ */ new Map();
16491
- for (const [surface, canonical] of alias) {
16492
- terms.set(canonical, canonical);
16493
- terms.set(surface, canonical);
16494
- }
16495
- const orderedTerms = [...terms].sort(([left], [right]) => right.length - left.length);
16496
- const renameActionContent = (content) => {
16497
- let result = "";
16498
- let offset = 0;
16499
- while (offset < content.length) {
16500
- const match = orderedTerms.find(([surface]) => content.startsWith(surface, offset));
16501
- if (match) {
16502
- result += match[1];
16503
- offset += match[0].length;
16504
- } else {
16505
- result += content[offset];
16506
- offset += 1;
16507
- }
16508
- }
16509
- return result;
16510
- };
16511
16490
  return docs.map((d) => {
16512
- const c = JSON.parse(JSON.stringify(d));
16491
+ const c = structuredClone(d);
16513
16492
  for (const a of c.actors) a.name = applyRename(a.name, alias) ?? a.name;
16514
16493
  for (const sc of c.scenes) {
16515
16494
  for (const ch of sc.characters) ch.name = applyRename(ch.name, alias) ?? ch.name;
@@ -16527,7 +16506,6 @@ function renameDocs(docs, alias) {
16527
16506
  sc.props = renamedProps;
16528
16507
  for (const an of sc.anchors) {
16529
16508
  an.speaker = applyRename(an.speaker, alias);
16530
- if (an.kind === "act") an.content = renameActionContent(an.content);
16531
16509
  }
16532
16510
  }
16533
16511
  return c;