@lingjingai/scriptctl 0.35.0 → 0.36.0

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.
Files changed (367) hide show
  1. package/README.md +21 -5
  2. package/changes/0.36.0.md +22 -0
  3. package/dist/bin.js +0 -0
  4. package/dist/cli.d.ts +2 -1
  5. package/dist/cli.js +52 -128
  6. package/dist/cli.js.map +1 -1
  7. package/dist/common.d.ts +0 -16
  8. package/dist/common.js +2 -342
  9. package/dist/common.js.map +1 -1
  10. package/dist/domain/ingest/apply-plan.d.ts +23 -0
  11. package/dist/domain/ingest/apply-plan.js +210 -0
  12. package/dist/domain/ingest/apply-plan.js.map +1 -0
  13. package/dist/domain/ingest/assembler.d.ts +57 -0
  14. package/dist/domain/ingest/assembler.js +181 -0
  15. package/dist/domain/ingest/assembler.js.map +1 -0
  16. package/dist/domain/ingest/chunker.d.ts +9 -0
  17. package/dist/domain/ingest/chunker.js +38 -0
  18. package/dist/domain/ingest/chunker.js.map +1 -0
  19. package/dist/domain/ingest/evidence.d.ts +5 -0
  20. package/dist/domain/ingest/evidence.js +66 -0
  21. package/dist/domain/ingest/evidence.js.map +1 -0
  22. package/dist/domain/ingest/govern.d.ts +3 -0
  23. package/dist/domain/ingest/govern.js +127 -0
  24. package/dist/domain/ingest/govern.js.map +1 -0
  25. package/dist/domain/ingest/jsonl-parser.d.ts +6 -0
  26. package/dist/domain/ingest/jsonl-parser.js +187 -0
  27. package/dist/domain/ingest/jsonl-parser.js.map +1 -0
  28. package/dist/domain/ingest/markdown-parser.d.ts +6 -0
  29. package/dist/domain/ingest/markdown-parser.js +186 -0
  30. package/dist/domain/ingest/markdown-parser.js.map +1 -0
  31. package/dist/domain/ingest/records.d.ts +71 -0
  32. package/dist/domain/ingest/records.js +9 -0
  33. package/dist/domain/ingest/records.js.map +1 -0
  34. package/dist/domain/ingest/renumber.d.ts +14 -0
  35. package/dist/domain/ingest/renumber.js +130 -0
  36. package/dist/domain/ingest/renumber.js.map +1 -0
  37. package/dist/domain/ingest/script-v3.d.ts +94 -0
  38. package/dist/domain/ingest/script-v3.js +7 -0
  39. package/dist/domain/ingest/script-v3.js.map +1 -0
  40. package/dist/domain/ingest/state-reconcile.d.ts +11 -0
  41. package/dist/domain/ingest/state-reconcile.js +90 -0
  42. package/dist/domain/ingest/state-reconcile.js.map +1 -0
  43. package/dist/domain/ingest/validation.d.ts +11 -0
  44. package/dist/domain/ingest/validation.js +168 -0
  45. package/dist/domain/ingest/validation.js.map +1 -0
  46. package/dist/domain/ingest/video-aggregate.d.ts +23 -0
  47. package/dist/domain/ingest/video-aggregate.js +89 -0
  48. package/dist/domain/ingest/video-aggregate.js.map +1 -0
  49. package/dist/domain/ingest/video-apply.d.ts +37 -0
  50. package/dist/domain/ingest/video-apply.js +236 -0
  51. package/dist/domain/ingest/video-apply.js.map +1 -0
  52. package/dist/domain/ingest/video-md-parser.d.ts +2 -0
  53. package/dist/domain/ingest/video-md-parser.js +233 -0
  54. package/dist/domain/ingest/video-md-parser.js.map +1 -0
  55. package/dist/domain/ingest/video-records.d.ts +56 -0
  56. package/dist/domain/ingest/video-records.js +9 -0
  57. package/dist/domain/ingest/video-records.js.map +1 -0
  58. package/dist/domain/loom/index.d.ts +2 -1
  59. package/dist/domain/loom/index.js +12 -10
  60. package/dist/domain/loom/index.js.map +1 -1
  61. package/dist/domain/loom/types.d.ts +3 -2
  62. package/dist/domain/script/lookups.d.ts +3 -2
  63. package/dist/domain/script/lookups.js +25 -8
  64. package/dist/domain/script/lookups.js.map +1 -1
  65. package/dist/domain/script/patch/apply.js +2 -2
  66. package/dist/domain/script/patch/apply.js.map +1 -1
  67. package/dist/domain/script/patch/helpers.d.ts +3 -7
  68. package/dist/domain/script/patch/helpers.js +23 -96
  69. package/dist/domain/script/patch/helpers.js.map +1 -1
  70. package/dist/domain/script/patch/ops-action.d.ts +0 -2
  71. package/dist/domain/script/patch/ops-action.js +34 -100
  72. package/dist/domain/script/patch/ops-action.js.map +1 -1
  73. package/dist/domain/script/patch/ops-asset.d.ts +1 -0
  74. package/dist/domain/script/patch/ops-asset.js +102 -155
  75. package/dist/domain/script/patch/ops-asset.js.map +1 -1
  76. package/dist/domain/script/patch/ops-dialogue.d.ts +1 -4
  77. package/dist/domain/script/patch/ops-dialogue.js +43 -220
  78. package/dist/domain/script/patch/ops-dialogue.js.map +1 -1
  79. package/dist/domain/script/patch/ops-extend.js +8 -2
  80. package/dist/domain/script/patch/ops-extend.js.map +1 -1
  81. package/dist/domain/script/patch/ops-meta.js.map +1 -1
  82. package/dist/domain/script/patch/ops-scene.js +26 -39
  83. package/dist/domain/script/patch/ops-scene.js.map +1 -1
  84. package/dist/domain/script/patch/ops-state.d.ts +3 -3
  85. package/dist/domain/script/patch/ops-state.js +33 -49
  86. package/dist/domain/script/patch/ops-state.js.map +1 -1
  87. package/dist/domain/script/patch/registry.js +9 -13
  88. package/dist/domain/script/patch/registry.js.map +1 -1
  89. package/dist/domain/script/refs.js +23 -111
  90. package/dist/domain/script/refs.js.map +1 -1
  91. package/dist/domain/script/scene-refs.d.ts +3 -0
  92. package/dist/domain/script/scene-refs.js +35 -0
  93. package/dist/domain/script/scene-refs.js.map +1 -0
  94. package/dist/domain/script/schema.js +17 -21
  95. package/dist/domain/script/schema.js.map +1 -1
  96. package/dist/domain/script/text-util.d.ts +7 -0
  97. package/dist/domain/script/text-util.js +91 -0
  98. package/dist/domain/script/text-util.js.map +1 -0
  99. package/dist/help-text.js +117 -410
  100. package/dist/help-text.js.map +1 -1
  101. package/dist/infra/converters.js +1 -1
  102. package/dist/infra/converters.js.map +1 -1
  103. package/dist/infra/episode-title.d.ts +4 -0
  104. package/dist/infra/episode-title.js +129 -0
  105. package/dist/infra/episode-title.js.map +1 -0
  106. package/dist/infra/ingest/review-renderer.d.ts +1 -0
  107. package/dist/infra/ingest/review-renderer.js +431 -0
  108. package/dist/infra/ingest/review-renderer.js.map +1 -0
  109. package/dist/infra/ingest/source-resolver.d.ts +21 -0
  110. package/dist/infra/ingest/source-resolver.js +51 -0
  111. package/dist/infra/ingest/source-resolver.js.map +1 -0
  112. package/dist/infra/ingest/text-reader.d.ts +3 -0
  113. package/dist/infra/ingest/text-reader.js +27 -0
  114. package/dist/infra/ingest/text-reader.js.map +1 -0
  115. package/dist/infra/ingest/video-discovery.d.ts +8 -0
  116. package/dist/infra/ingest/video-discovery.js +60 -0
  117. package/dist/infra/ingest/video-discovery.js.map +1 -0
  118. package/dist/infra/ingest/workspace-store.d.ts +18 -0
  119. package/dist/infra/ingest/workspace-store.js +70 -0
  120. package/dist/infra/ingest/workspace-store.js.map +1 -0
  121. package/dist/infra/llm/anthropic-model.d.ts +11 -0
  122. package/dist/infra/llm/anthropic-model.js +109 -0
  123. package/dist/infra/llm/anthropic-model.js.map +1 -0
  124. package/dist/infra/llm/gemini-upload.d.ts +9 -0
  125. package/dist/infra/llm/gemini-upload.js +94 -0
  126. package/dist/infra/llm/gemini-upload.js.map +1 -0
  127. package/dist/infra/llm/gemini-video-model.d.ts +47 -0
  128. package/dist/infra/llm/gemini-video-model.js +167 -0
  129. package/dist/infra/llm/gemini-video-model.js.map +1 -0
  130. package/dist/infra/llm/openai-compatible-model.d.ts +13 -0
  131. package/dist/infra/llm/openai-compatible-model.js +143 -0
  132. package/dist/infra/llm/openai-compatible-model.js.map +1 -0
  133. package/dist/infra/llm/proxy.d.ts +1 -0
  134. package/dist/infra/llm/proxy.js +30 -0
  135. package/dist/infra/llm/proxy.js.map +1 -0
  136. package/dist/infra/llm/retry.d.ts +5 -0
  137. package/dist/infra/llm/retry.js +20 -0
  138. package/dist/infra/llm/retry.js.map +1 -0
  139. package/dist/llm/composition.d.ts +5 -0
  140. package/dist/llm/composition.js +5 -0
  141. package/dist/llm/composition.js.map +1 -0
  142. package/dist/llm/config.d.ts +26 -0
  143. package/dist/llm/config.js +201 -0
  144. package/dist/llm/config.js.map +1 -0
  145. package/dist/llm/registry.d.ts +44 -0
  146. package/dist/llm/registry.js +48 -0
  147. package/dist/llm/registry.js.map +1 -0
  148. package/dist/llm/router.d.ts +23 -0
  149. package/dist/llm/router.js +0 -0
  150. package/dist/llm/router.js.map +1 -0
  151. package/dist/llm/tasks/ingest/asset-curate.d.ts +13 -0
  152. package/dist/llm/tasks/ingest/asset-curate.js +45 -0
  153. package/dist/llm/tasks/ingest/asset-curate.js.map +1 -0
  154. package/dist/llm/tasks/ingest/asset-extract.d.ts +12 -0
  155. package/dist/llm/tasks/ingest/asset-extract.js +51 -0
  156. package/dist/llm/tasks/ingest/asset-extract.js.map +1 -0
  157. package/dist/llm/tasks/ingest/asset-govern.d.ts +22 -0
  158. package/dist/llm/tasks/ingest/asset-govern.js +143 -0
  159. package/dist/llm/tasks/ingest/asset-govern.js.map +1 -0
  160. package/dist/llm/tasks/ingest/mention-resolve.d.ts +9 -0
  161. package/dist/llm/tasks/ingest/mention-resolve.js +39 -0
  162. package/dist/llm/tasks/ingest/mention-resolve.js.map +1 -0
  163. package/dist/llm/tasks/ingest/plot-speaker.d.ts +11 -0
  164. package/dist/llm/tasks/ingest/plot-speaker.js +72 -0
  165. package/dist/llm/tasks/ingest/plot-speaker.js.map +1 -0
  166. package/dist/llm/tasks/ingest/roster-merge.d.ts +46 -0
  167. package/dist/llm/tasks/ingest/roster-merge.js +235 -0
  168. package/dist/llm/tasks/ingest/roster-merge.js.map +1 -0
  169. package/dist/llm/tasks/ingest/state-merge.d.ts +10 -0
  170. package/dist/llm/tasks/ingest/state-merge.js +84 -0
  171. package/dist/llm/tasks/ingest/state-merge.js.map +1 -0
  172. package/dist/llm/tasks/ingest/state-reconcile.d.ts +8 -0
  173. package/dist/llm/tasks/ingest/state-reconcile.js +44 -0
  174. package/dist/llm/tasks/ingest/state-reconcile.js.map +1 -0
  175. package/dist/llm/tasks/ingest/text-normalize.d.ts +10 -0
  176. package/dist/llm/tasks/ingest/text-normalize.js +89 -0
  177. package/dist/llm/tasks/ingest/text-normalize.js.map +1 -0
  178. package/dist/llm/tasks/ingest/video-correct.d.ts +30 -0
  179. package/dist/llm/tasks/ingest/video-correct.js +144 -0
  180. package/dist/llm/tasks/ingest/video-correct.js.map +1 -0
  181. package/dist/llm/tasks/ingest/video-transcribe.d.ts +4 -0
  182. package/dist/llm/tasks/ingest/video-transcribe.js +105 -0
  183. package/dist/llm/tasks/ingest/video-transcribe.js.map +1 -0
  184. package/dist/llm/tasks/schemas.d.ts +5 -0
  185. package/dist/llm/tasks/schemas.js +107 -0
  186. package/dist/llm/tasks/schemas.js.map +1 -0
  187. package/dist/llm/types.d.ts +97 -0
  188. package/dist/llm/types.js +13 -0
  189. package/dist/llm/types.js.map +1 -0
  190. package/dist/usecases/doctor.d.ts +1 -1
  191. package/dist/usecases/doctor.js +36 -9
  192. package/dist/usecases/doctor.js.map +1 -1
  193. package/dist/usecases/ingest/command.d.ts +5 -0
  194. package/dist/usecases/ingest/command.js +57 -0
  195. package/dist/usecases/ingest/command.js.map +1 -0
  196. package/dist/usecases/ingest/fanout.d.ts +10 -0
  197. package/dist/usecases/ingest/fanout.js +23 -0
  198. package/dist/usecases/ingest/fanout.js.map +1 -0
  199. package/dist/usecases/ingest/pass4-mention-resolve.d.ts +11 -0
  200. package/dist/usecases/ingest/pass4-mention-resolve.js +52 -0
  201. package/dist/usecases/ingest/pass4-mention-resolve.js.map +1 -0
  202. package/dist/usecases/ingest/pass5-extract.d.ts +7 -0
  203. package/dist/usecases/ingest/pass5-extract.js +50 -0
  204. package/dist/usecases/ingest/pass5-extract.js.map +1 -0
  205. package/dist/usecases/ingest/pass5-govern.d.ts +13 -0
  206. package/dist/usecases/ingest/pass5-govern.js +155 -0
  207. package/dist/usecases/ingest/pass5-govern.js.map +1 -0
  208. package/dist/usecases/ingest/pipeline.d.ts +28 -0
  209. package/dist/usecases/ingest/pipeline.js +144 -0
  210. package/dist/usecases/ingest/pipeline.js.map +1 -0
  211. package/dist/usecases/ingest/publish-command.d.ts +4 -0
  212. package/dist/usecases/ingest/publish-command.js +77 -0
  213. package/dist/usecases/ingest/publish-command.js.map +1 -0
  214. package/dist/usecases/ingest/status.d.ts +39 -0
  215. package/dist/usecases/ingest/status.js +155 -0
  216. package/dist/usecases/ingest/status.js.map +1 -0
  217. package/dist/usecases/ingest/video-pass3.d.ts +26 -0
  218. package/dist/usecases/ingest/video-pass3.js +0 -0
  219. package/dist/usecases/ingest/video-pass3.js.map +1 -0
  220. package/dist/usecases/ingest/video-pipeline.d.ts +32 -0
  221. package/dist/usecases/ingest/video-pipeline.js +202 -0
  222. package/dist/usecases/ingest/video-pipeline.js.map +1 -0
  223. package/dist/usecases/ingest/view-command.d.ts +4 -0
  224. package/dist/usecases/ingest/view-command.js +51 -0
  225. package/dist/usecases/ingest/view-command.js.map +1 -0
  226. package/dist/usecases/script/actions.js +2 -2
  227. package/dist/usecases/script/actions.js.map +1 -1
  228. package/dist/usecases/script/actor.js.map +1 -1
  229. package/dist/usecases/script/actors.js.map +1 -1
  230. package/dist/usecases/script/add-actor.js.map +1 -1
  231. package/dist/usecases/script/add-episode.js.map +1 -1
  232. package/dist/usecases/script/add-location.js.map +1 -1
  233. package/dist/usecases/script/add-prop.js.map +1 -1
  234. package/dist/usecases/script/alias.js.map +1 -1
  235. package/dist/usecases/script/assets.js.map +1 -1
  236. package/dist/usecases/script/context.js.map +1 -1
  237. package/dist/usecases/script/create.js +3 -6
  238. package/dist/usecases/script/create.js.map +1 -1
  239. package/dist/usecases/script/delete.js.map +1 -1
  240. package/dist/usecases/script/describe.js.map +1 -1
  241. package/dist/usecases/script/dialogue.js +6 -13
  242. package/dist/usecases/script/dialogue.js.map +1 -1
  243. package/dist/usecases/script/do.js +1 -1
  244. package/dist/usecases/script/do.js.map +1 -1
  245. package/dist/usecases/script/episodes.js.map +1 -1
  246. package/dist/usecases/script/{add-speaker.d.ts → importance.d.ts} +1 -1
  247. package/dist/usecases/script/importance.js +17 -0
  248. package/dist/usecases/script/importance.js.map +1 -0
  249. package/dist/usecases/script/insert.js.map +1 -1
  250. package/dist/usecases/script/issues.js.map +1 -1
  251. package/dist/usecases/script/lib.d.ts +8 -6
  252. package/dist/usecases/script/lib.js +81 -97
  253. package/dist/usecases/script/lib.js.map +1 -1
  254. package/dist/usecases/script/locations.js.map +1 -1
  255. package/dist/usecases/script/merge.js.map +1 -1
  256. package/dist/usecases/script/move.js.map +1 -1
  257. package/dist/usecases/script/props.js.map +1 -1
  258. package/dist/usecases/script/refs.js.map +1 -1
  259. package/dist/usecases/script/rename.js.map +1 -1
  260. package/dist/usecases/script/replace.js.map +1 -1
  261. package/dist/usecases/script/role.js.map +1 -1
  262. package/dist/usecases/script/scenes.js +8 -15
  263. package/dist/usecases/script/scenes.js.map +1 -1
  264. package/dist/usecases/script/script-patch.js +1 -1
  265. package/dist/usecases/script/script-patch.js.map +1 -1
  266. package/dist/usecases/script/script-validate.js +1 -1
  267. package/dist/usecases/script/script-validate.js.map +1 -1
  268. package/dist/usecases/script/session.d.ts +4 -4
  269. package/dist/usecases/script/session.js +57 -78
  270. package/dist/usecases/script/session.js.map +1 -1
  271. package/dist/usecases/script/split.js.map +1 -1
  272. package/dist/usecases/script/state-add.js.map +1 -1
  273. package/dist/usecases/script/state-delete.js.map +1 -1
  274. package/dist/usecases/script/state-rename.js.map +1 -1
  275. package/dist/usecases/script/summary.js.map +1 -1
  276. package/dist/usecases/script/synopsis-generate.d.ts +4 -5
  277. package/dist/usecases/script/synopsis-generate.js +30 -46
  278. package/dist/usecases/script/synopsis-generate.js.map +1 -1
  279. package/dist/usecases/script/transition.js.map +1 -1
  280. package/dist/usecases/script/type.js.map +1 -1
  281. package/dist/usecases/script/worldview.js.map +1 -1
  282. package/package.json +22 -17
  283. package/skills/scriptctl/SKILL.md +140 -120
  284. package/skills/scriptctl/references/atomic-write-workflow.md +12 -9
  285. package/skills/scriptctl/references/ingest-workflow.md +85 -0
  286. package/skills/scriptctl/references/state-reference-repair.md +26 -39
  287. package/dist/domain/direct/runner.d.ts +0 -25
  288. package/dist/domain/direct/runner.js +0 -88
  289. package/dist/domain/direct/runner.js.map +0 -1
  290. package/dist/domain/direct/stage.d.ts +0 -108
  291. package/dist/domain/direct/stage.js +0 -134
  292. package/dist/domain/direct/stage.js.map +0 -1
  293. package/dist/domain/direct/stages/asset-curation.d.ts +0 -2
  294. package/dist/domain/direct/stages/asset-curation.js +0 -10
  295. package/dist/domain/direct/stages/asset-curation.js.map +0 -1
  296. package/dist/domain/direct/stages/batch-extract.d.ts +0 -2
  297. package/dist/domain/direct/stages/batch-extract.js +0 -12
  298. package/dist/domain/direct/stages/batch-extract.js.map +0 -1
  299. package/dist/domain/direct/stages/batch-plan.d.ts +0 -2
  300. package/dist/domain/direct/stages/batch-plan.js +0 -9
  301. package/dist/domain/direct/stages/batch-plan.js.map +0 -1
  302. package/dist/domain/direct/stages/episode-merge.d.ts +0 -2
  303. package/dist/domain/direct/stages/episode-merge.js +0 -11
  304. package/dist/domain/direct/stages/episode-merge.js.map +0 -1
  305. package/dist/domain/direct/stages/episode-plan.d.ts +0 -2
  306. package/dist/domain/direct/stages/episode-plan.js +0 -9
  307. package/dist/domain/direct/stages/episode-plan.js.map +0 -1
  308. package/dist/domain/direct/stages/episode-synopsis.d.ts +0 -2
  309. package/dist/domain/direct/stages/episode-synopsis.js +0 -12
  310. package/dist/domain/direct/stages/episode-synopsis.js.map +0 -1
  311. package/dist/domain/direct/stages/episode-titles.d.ts +0 -2
  312. package/dist/domain/direct/stages/episode-titles.js +0 -12
  313. package/dist/domain/direct/stages/episode-titles.js.map +0 -1
  314. package/dist/domain/direct/stages/index.d.ts +0 -19
  315. package/dist/domain/direct/stages/index.js +0 -41
  316. package/dist/domain/direct/stages/index.js.map +0 -1
  317. package/dist/domain/direct/stages/metadata.d.ts +0 -2
  318. package/dist/domain/direct/stages/metadata.js +0 -11
  319. package/dist/domain/direct/stages/metadata.js.map +0 -1
  320. package/dist/domain/direct/stages/script-merge.d.ts +0 -2
  321. package/dist/domain/direct/stages/script-merge.js +0 -15
  322. package/dist/domain/direct/stages/script-merge.js.map +0 -1
  323. package/dist/domain/direct/stages/script-synopsis.d.ts +0 -2
  324. package/dist/domain/direct/stages/script-synopsis.js +0 -12
  325. package/dist/domain/direct/stages/script-synopsis.js.map +0 -1
  326. package/dist/domain/direct/stages/source-prepare.d.ts +0 -2
  327. package/dist/domain/direct/stages/source-prepare.js +0 -9
  328. package/dist/domain/direct/stages/source-prepare.js.map +0 -1
  329. package/dist/domain/direct/stages/state-binding.d.ts +0 -2
  330. package/dist/domain/direct/stages/state-binding.js +0 -9
  331. package/dist/domain/direct/stages/state-binding.js.map +0 -1
  332. package/dist/domain/direct/stages/state-curation.d.ts +0 -2
  333. package/dist/domain/direct/stages/state-curation.js +0 -10
  334. package/dist/domain/direct/stages/state-curation.js.map +0 -1
  335. package/dist/domain/direct/stages/validate.d.ts +0 -2
  336. package/dist/domain/direct/stages/validate.js +0 -10
  337. package/dist/domain/direct/stages/validate.js.map +0 -1
  338. package/dist/domain/direct-core.d.ts +0 -313
  339. package/dist/domain/direct-core.js +0 -8514
  340. package/dist/domain/direct-core.js.map +0 -1
  341. package/dist/domain/script/validate.d.ts +0 -22
  342. package/dist/domain/script/validate.js +0 -997
  343. package/dist/domain/script/validate.js.map +0 -1
  344. package/dist/infra/providers.d.ts +0 -97
  345. package/dist/infra/providers.js +0 -1396
  346. package/dist/infra/providers.js.map +0 -1
  347. package/dist/usecases/direct.d.ts +0 -27
  348. package/dist/usecases/direct.js +0 -4172
  349. package/dist/usecases/direct.js.map +0 -1
  350. package/dist/usecases/parse.d.ts +0 -15
  351. package/dist/usecases/parse.js +0 -429
  352. package/dist/usecases/parse.js.map +0 -1
  353. package/dist/usecases/script/add-speaker.js +0 -22
  354. package/dist/usecases/script/add-speaker.js.map +0 -1
  355. package/dist/usecases/script/export.d.ts +0 -3
  356. package/dist/usecases/script/export.js +0 -111
  357. package/dist/usecases/script/export.js.map +0 -1
  358. package/dist/usecases/script/overlap.d.ts +0 -3
  359. package/dist/usecases/script/overlap.js +0 -21
  360. package/dist/usecases/script/overlap.js.map +0 -1
  361. package/dist/usecases/script/speakers.d.ts +0 -3
  362. package/dist/usecases/script/speakers.js +0 -28
  363. package/dist/usecases/script/speakers.js.map +0 -1
  364. package/dist/usecases/script/state-change.d.ts +0 -3
  365. package/dist/usecases/script/state-change.js +0 -24
  366. package/dist/usecases/script/state-change.js.map +0 -1
  367. package/skills/scriptctl/references/direct-workflow.md +0 -72
@@ -1,233 +1,56 @@
1
- import { SCRIPT_TARGET_KINDS, SPEAKER_SOURCE_KINDS, } from "../../../common.js";
2
- import { asList, isDict, isList, opErr, strOf } from "../shared.js";
3
- import { ensureRefId, findAction, } from "../lookups.js";
4
- import { parseActionRef, } from "../address.js";
5
- import { collectAssetRefs } from "../refs.js";
6
- import { ensureSpeakerId, nextSpeakerId, speakerSourceActorId, } from "./helpers.js";
7
- export function op_speaker_add(__ctx) {
8
- const { script, op, sourceText, applied, kind } = __ctx;
9
- const sourceKind = strOf(op["kind"] || op["source_kind"]).trim();
10
- if (!SPEAKER_SOURCE_KINDS.has(sourceKind)) {
11
- throw opErr("SCRIPT OP BLOCKED: Speaker kind invalid", "Speaker kind invalid.", { required: ["kind: actor/location/prop/system/broadcast/group/other"], received: [sourceKind || "<empty>"], nextSteps: ["Use a supported speaker kind."], op: kind, errorCode: "SPEAKER_KIND_INVALID" });
12
- }
13
- const name = strOf(op["name"] || op["display_name"]).trim();
14
- if (!name) {
15
- throw opErr("SCRIPT OP BLOCKED: Speaker name empty", "Speaker name empty.", { required: ["name"], received: [JSON.stringify(op)], nextSteps: ["Provide display name."], op: kind, errorCode: "SPEAKER_NAME_EMPTY" });
16
- }
17
- const sourceId = strOf(op["source_id"]).trim() || null;
18
- if (SCRIPT_TARGET_KINDS.has(sourceKind)) {
19
- if (!sourceId) {
20
- throw opErr("SCRIPT OP BLOCKED: Speaker source missing", "Speaker source missing.", { required: ["source_id for actor/location/prop speakers"], received: ["<empty>"], nextSteps: ["Pass --source-id."], op: kind, errorCode: "SPEAKER_SOURCE_MISSING" });
21
- }
22
- ensureRefId(script, sourceKind, sourceId);
23
- }
24
- const speakerId = strOf(op["speaker_id"]).trim() || nextSpeakerId(script, sourceKind, sourceId);
25
- if (asList(script["speakers"]).some((s) => strOf(s["speaker_id"]) === speakerId)) {
26
- throw opErr("SCRIPT OP BLOCKED: Speaker id exists", "Speaker id exists.", { required: ["unused speaker_id"], received: [speakerId], nextSteps: ["Use another speaker_id."], op: kind, errorCode: "SPEAKER_ID_EXISTS" });
27
- }
28
- if (!isList(script["speakers"]))
29
- script["speakers"] = [];
30
- script["speakers"].push({
31
- speaker_id: speakerId,
32
- display_name: name,
33
- source_kind: sourceKind,
34
- source_id: sourceId,
35
- voice_desc: strOf(op["voice_desc"]).trim(),
36
- });
37
- applied.push(kind);
38
- }
39
- export function op_dialogue_speakers(__ctx) {
40
- const { script, op, sourceText, applied, kind } = __ctx;
1
+ import { opErr, strOf } from "../shared.js";
2
+ import { ensureRefId, findAction } from "../lookups.js";
3
+ import { parseActionRef } from "../address.js";
4
+ // v3 dialogue speaker: a single inline speaker per line. Either an actor
5
+ // (speaker = {actor_id}) or a non-actor source (speaker = {kind, label?}).
6
+ const NON_ACTOR_SPEAKER_KINDS = new Set(["system", "broadcast", "offscreen", "group"]);
7
+ export function op_dialogue_speaker_set(__ctx) {
8
+ const { script, op, applied, kind } = __ctx;
41
9
  const [epId, sceneId, actionIndex] = parseActionRef(op["at"]);
42
- const delivery = strOf(op["delivery"] || "simultaneous").trim();
43
- if (delivery !== "single" && delivery !== "simultaneous" && delivery !== "group") {
44
- throw opErr("SCRIPT OP BLOCKED: Delivery invalid", "Delivery invalid.", { required: ["delivery: single, simultaneous, or group"], received: [delivery], nextSteps: ["Use a supported delivery."], op: kind, errorCode: "DELIVERY_INVALID" });
45
- }
46
- let rawSpeakers = op["speakers"] ?? op["speaker"] ?? [];
47
- if (typeof rawSpeakers === "string")
48
- rawSpeakers = [rawSpeakers];
49
- if (!isList(rawSpeakers) || rawSpeakers.length === 0) {
50
- throw opErr("SCRIPT OP BLOCKED: Speakers empty", "Speakers empty.", { required: ["speaker list"], received: [JSON.stringify(op)], nextSteps: ["Pass at least one --speaker."], op: kind, errorCode: "SPEAKERS_EMPTY" });
10
+ const actorId = strOf(op["actor_id"]).trim();
11
+ const speakerKind = strOf(op["kind"]).trim();
12
+ if (actorId && speakerKind) {
13
+ throw opErr("SCRIPT OP BLOCKED: Speaker ambiguous", "Pass actor_id OR kind, not both.", {
14
+ required: ["exactly one of: actor_id (an actor) or kind (a non-actor source)"],
15
+ received: [`actor_id=${actorId}, kind=${speakerKind}`],
16
+ nextSteps: ["Set actor_id for an actor line, or kind (system|broadcast|offscreen|group) for a non-actor line."],
17
+ op: kind, errorCode: "SPEAKER_AMBIGUOUS",
18
+ });
51
19
  }
52
- const speakerIds = rawSpeakers.map((sid) => ensureSpeakerId(script, strOf(sid)));
53
- const action = findAction(script, epId, sceneId, actionIndex);
54
- action["type"] = "dialogue";
55
- action["delivery"] = delivery;
56
- action["speakers"] = speakerIds.map((sid) => ({ speaker_id: sid }));
57
- delete action["lines"];
58
- const actorId = speakerIds.length === 1 ? speakerSourceActorId(script, speakerIds[0]) : null;
20
+ let speaker;
59
21
  if (actorId) {
60
- action["actor_id"] = actorId;
61
- action["speaker_id"] = speakerIds[0];
22
+ ensureRefId(script, "actor", actorId);
23
+ speaker = { actor_id: actorId };
24
+ }
25
+ else if (speakerKind) {
26
+ if (!NON_ACTOR_SPEAKER_KINDS.has(speakerKind)) {
27
+ throw opErr("SCRIPT OP BLOCKED: Speaker kind invalid", "Speaker kind invalid.", {
28
+ required: ["kind: system, broadcast, offscreen, or group"],
29
+ received: [speakerKind],
30
+ nextSteps: ["Use a supported non-actor speaker kind, or pass actor_id for an actor."],
31
+ op: kind, errorCode: "SPEAKER_KIND_INVALID",
32
+ });
33
+ }
34
+ const label = strOf(op["label"]).trim();
35
+ speaker = label ? { kind: speakerKind, label } : { kind: speakerKind };
62
36
  }
63
37
  else {
64
- delete action["actor_id"];
65
- delete action["speaker_id"];
66
- }
67
- applied.push(kind);
68
- }
69
- export function op_dialogue_overlap(__ctx) {
70
- const { script, op, sourceText, applied, kind } = __ctx;
71
- const [epId, sceneId, actionIndex] = parseActionRef(op["at"]);
72
- let rawLines = op["lines"] ?? op["line"] ?? [];
73
- if (typeof rawLines === "string")
74
- rawLines = [rawLines];
75
- if (!isList(rawLines) || rawLines.length === 0) {
76
- throw opErr("SCRIPT OP BLOCKED: Lines empty", "Lines empty.", { required: ["line list"], received: [JSON.stringify(op)], nextSteps: ["Pass at least one --line speaker_id:content."], op: kind, errorCode: "LINES_EMPTY" });
77
- }
78
- const lines = [];
79
- for (const line of rawLines) {
80
- let speakerId;
81
- let content;
82
- if (isDict(line)) {
83
- speakerId = ensureSpeakerId(script, strOf(line["speaker_id"]));
84
- content = strOf(line["content"]).trim();
85
- }
86
- else {
87
- const rawLine = strOf(line);
88
- if (!rawLine.includes(":") && !rawLine.includes(":")) {
89
- throw opErr("SCRIPT OP BLOCKED: Line invalid", "Line invalid.", { required: ["speaker_id:content"], received: [rawLine], nextSteps: ["Use --line spk_xxx:对白."], op: kind, errorCode: "LINE_INVALID" });
90
- }
91
- const m = /^([^::]+)[::](.*)$/.exec(rawLine);
92
- if (!m) {
93
- throw opErr("SCRIPT OP BLOCKED: Line invalid", "Line invalid.", { required: ["speaker_id:content"], received: [rawLine], nextSteps: ["Use --line spk_xxx:对白."], op: kind, errorCode: "LINE_INVALID" });
94
- }
95
- speakerId = ensureSpeakerId(script, m[1]);
96
- content = m[2].trim();
97
- }
98
- if (!content) {
99
- throw opErr("SCRIPT OP BLOCKED: Line content empty", "Line content empty.", { required: ["non-empty line content"], received: [JSON.stringify(line)], nextSteps: ["Provide line content."], op: kind, errorCode: "LINE_CONTENT_EMPTY" });
100
- }
101
- lines.push({ speaker_id: speakerId, content });
38
+ throw opErr("SCRIPT OP BLOCKED: Speaker missing", "Speaker missing.", {
39
+ required: ["actor_id or kind"],
40
+ received: [JSON.stringify(op)],
41
+ nextSteps: ["Pass actor_id for an actor line, or kind for a non-actor line."],
42
+ op: kind, errorCode: "SPEAKER_MISSING",
43
+ });
102
44
  }
103
45
  const action = findAction(script, epId, sceneId, actionIndex);
104
46
  action["type"] = "dialogue";
105
- action["delivery"] = "overlap";
106
- action["lines"] = lines;
107
- action["content"] = lines.map((l) => l["content"]).join(" / ");
47
+ action["speaker"] = speaker;
48
+ // strip any legacy speaker-identity fields
108
49
  delete action["speakers"];
109
- delete action["actor_id"];
50
+ delete action["lines"];
110
51
  delete action["speaker_id"];
111
- applied.push(kind);
112
- }
113
- export function op_speaker_delete(__ctx) {
114
- const { script, op, sourceText, applied, kind } = __ctx;
115
- // Mirror of asset.delete for speakers: refs scrub or replace via
116
- // --strategy. Speaker refs live in action.speaker_id /
117
- // action.speakers[] / action.lines[].speaker_id only — no scene
118
- // context entries to handle.
119
- const speakerId = strOf(op["target"] ?? op["speaker_id"]).trim();
120
- if (!speakerId) {
121
- throw opErr("SCRIPT OP BLOCKED: Speaker id missing", "Speaker id missing.", {
122
- required: ["target speaker id"],
123
- received: [JSON.stringify(op)],
124
- nextSteps: ["Pass a spk_id."],
125
- op: kind,
126
- errorCode: "SPEAKER_ID_MISSING",
127
- });
128
- }
129
- const refs = collectAssetRefs(script, "speaker", speakerId);
130
- const strategy = strOf(op["strategy"]).trim();
131
- if (refs.length > 0 && !strategy) {
132
- throw opErr("SCRIPT OP BLOCKED: Speaker has refs", `Speaker is referenced ${refs.length} time(s).`, {
133
- required: ["--strategy replace|remove"],
134
- received: [`refs=${refs.length}`],
135
- nextSteps: ["Use --strategy replace --replacement <spk_id> to remap, or --strategy remove to scrub refs."],
136
- op: kind,
137
- errorCode: "SPEAKER_HAS_REFS",
138
- });
139
- }
140
- const replacement = strOf(op["replacement"]).trim();
141
- if (strategy === "replace") {
142
- if (!replacement) {
143
- throw opErr("SCRIPT OP BLOCKED: Replacement missing", "Replacement missing.", {
144
- required: ["replacement speaker id"],
145
- received: ["<empty>"],
146
- nextSteps: ["Pass --replacement <spk_id>."],
147
- op: kind,
148
- errorCode: "REPLACEMENT_MISSING",
149
- });
150
- }
151
- // Verify replacement exists.
152
- if (!asList(script["speakers"]).some((s) => strOf(s["speaker_id"]) === replacement)) {
153
- throw opErr("SCRIPT OP BLOCKED: Replacement speaker not found", "Replacement speaker not found.", {
154
- required: ["existing speaker id"],
155
- received: [replacement],
156
- nextSteps: ["Add the speaker first or use a different replacement."],
157
- op: kind,
158
- errorCode: "SPEAKER_NOT_FOUND",
159
- });
160
- }
161
- for (const ep of asList(script["episodes"])) {
162
- for (const scene of asList(ep["scenes"])) {
163
- for (const action of asList(scene["actions"])) {
164
- if (strOf(action["speaker_id"]) === speakerId)
165
- action["speaker_id"] = replacement;
166
- const speakers = asList(action["speakers"]);
167
- for (const sp of speakers) {
168
- if (strOf(sp["speaker_id"]) === speakerId)
169
- sp["speaker_id"] = replacement;
170
- }
171
- // Dedupe action.speakers[] in case the action already referenced
172
- // the replacement: an unconditional rewrite + no dedupe would
173
- // leave [spk_replacement, spk_replacement], breaking overlap/
174
- // simultaneous delivery counts downstream.
175
- if (action["speakers"] !== undefined) {
176
- const seen = new Set();
177
- action["speakers"] = speakers.filter((s) => {
178
- const id = strOf(s["speaker_id"]);
179
- if (seen.has(id))
180
- return false;
181
- seen.add(id);
182
- return true;
183
- });
184
- }
185
- const lines = asList(action["lines"]);
186
- for (const line of lines) {
187
- if (strOf(line["speaker_id"]) === speakerId)
188
- line["speaker_id"] = replacement;
189
- }
190
- // lines[] semantically represents distinct overlapping lines
191
- // (a speaker can legitimately overlap with themselves), so we do
192
- // NOT dedupe lines — preserve overlap-with-self if it existed.
193
- }
194
- }
195
- }
196
- }
197
- else if (strategy === "remove" || refs.length === 0) {
198
- for (const ep of asList(script["episodes"])) {
199
- for (const scene of asList(ep["scenes"])) {
200
- for (const action of asList(scene["actions"])) {
201
- if (strOf(action["speaker_id"]) === speakerId)
202
- delete action["speaker_id"];
203
- const speakers = asList(action["speakers"]).filter((s) => strOf(s["speaker_id"]) !== speakerId);
204
- if (action["speakers"] !== undefined) {
205
- if (speakers.length > 0)
206
- action["speakers"] = speakers;
207
- else
208
- delete action["speakers"];
209
- }
210
- const lines = asList(action["lines"]).filter((l) => strOf(l["speaker_id"]) !== speakerId);
211
- if (action["lines"] !== undefined) {
212
- if (lines.length > 0)
213
- action["lines"] = lines;
214
- else
215
- delete action["lines"];
216
- }
217
- }
218
- }
219
- }
220
- }
221
- else {
222
- throw opErr("SCRIPT OP BLOCKED: Strategy invalid", "Strategy invalid.", {
223
- required: ["strategy: replace or remove"],
224
- received: [strategy],
225
- nextSteps: ["Use replace (with --replacement) or remove."],
226
- op: kind,
227
- errorCode: "DELETE_STRATEGY_INVALID",
228
- });
229
- }
230
- script["speakers"] = asList(script["speakers"]).filter((s) => strOf(s["speaker_id"]) !== speakerId);
52
+ delete action["actor_id"];
53
+ delete action["delivery"];
231
54
  applied.push(kind);
232
55
  }
233
56
  //# sourceMappingURL=ops-dialogue.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ops-dialogue.js","sourceRoot":"","sources":["../../../../src/domain/script/patch/ops-dialogue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ops-dialogue.js","sourceRoot":"","sources":["../../../../src/domain/script/patch/ops-dialogue.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@
7
7
  import { isDict, opErr, strOf } from "../shared.js";
8
8
  import { parseAnyAddress } from "../address.js";
9
9
  import { findAction, findEpisode, findScene } from "../lookups.js";
10
- import { findSpeaker, resolveAssetByTarget, resolveState } from "./helpers.js";
10
+ import { resolveAssetByTarget, resolveState } from "./helpers.js";
11
11
  const EXTEND_KEY_RE = /^[A-Za-z_][A-Za-z0-9_.-]*$/;
12
12
  const EXTEND_KEY_MAX = 128;
13
13
  // Resolve any address kind to the live node dict that owns the extend{}. global
@@ -21,7 +21,13 @@ export function resolveExtendHost(script, addr) {
21
21
  case "action": return findAction(script, addr.episodeId, addr.sceneId, addr.actionIndex);
22
22
  case "asset": return resolveAssetByTarget(script, addr.assetKind, addr.assetId);
23
23
  case "state": return resolveState(script, addr.assetKind, addr.assetId, addr.stateId);
24
- case "speaker": return findSpeaker(script, addr.speakerId);
24
+ case "speaker":
25
+ // v3 has no speaker roster; dialogue speakers are inline on each action.
26
+ throw opErr("SCRIPT OP BLOCKED: speaker addresses removed", "v3 has no speaker roster.", {
27
+ required: ["a global/episode/scene/action/asset/state address"], received: [addr.speakerId],
28
+ nextSteps: ["Edit a dialogue line's speaker with dialogue.speaker.set."],
29
+ op: "extend", errorCode: "SPEAKER_ADDR_REMOVED",
30
+ });
25
31
  }
26
32
  }
27
33
  function validateExtendKey(raw, opKind) {
@@ -1 +1 @@
1
- {"version":3,"file":"ops-extend.js","sourceRoot":"","sources":["../../../../src/domain/script/patch/ops-extend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ops-extend.js","sourceRoot":"","sources":["../../../../src/domain/script/patch/ops-extend.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ops-meta.js","sourceRoot":"","sources":["../../../../src/domain/script/patch/ops-meta.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ops-meta.js","sourceRoot":"","sources":["../../../../src/domain/script/patch/ops-meta.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,13 @@
1
- import { sceneContext, setSceneContext, } from "../../direct-core.js";
2
1
  import { asList, isDict, isList, opErr, strOf } from "../shared.js";
3
- import { ensureRefId, findEpisode, nextSceneId, sceneIdExists, } from "../lookups.js";
4
- import { parseSceneRef, } from "../address.js";
2
+ import { ensureRefId, findEpisode, nextSceneId, sceneIdExists } from "../lookups.js";
3
+ import { parseSceneRef } from "../address.js";
4
+ import { sceneRefs, setSceneRefs } from "../scene-refs.js";
5
5
  import { mergeExtendInto } from "./ops-extend.js";
6
6
  export function op_scene_insert(__ctx) {
7
- const { script, op, sourceText, applied, kind } = __ctx;
7
+ const { script, op, applied, kind } = __ctx;
8
8
  // Insert a new empty scene into an episode. Position resolved from
9
9
  // --at <idx> | --before <ep/scn> | --after <ep/scn> | default-append.
10
- // Requires --location to anchor the scene's locations[] context (matches
11
- // direct-init's assumption that every scene names at least one location).
10
+ // Requires --location to anchor the scene (v3 scene.location, single-valued).
12
11
  const epId = strOf(op["at"] ?? op["episode_id"]);
13
12
  const ep = findEpisode(script, epId);
14
13
  const scenes = asList(ep["scenes"]);
@@ -100,12 +99,7 @@ export function op_scene_insert(__ctx) {
100
99
  const newScene = {
101
100
  scene_id: newSceneId,
102
101
  environment: { time, space },
103
- context: {
104
- locations: [{ location_id: locationId, state_id: null }],
105
- actors: [],
106
- props: [],
107
- },
108
- locations: [{ location_id: locationId, state_id: null }],
102
+ location: { location_id: locationId },
109
103
  actors: [],
110
104
  props: [],
111
105
  actions: [],
@@ -115,7 +109,7 @@ export function op_scene_insert(__ctx) {
115
109
  applied.push(kind);
116
110
  }
117
111
  export function op_scene_split(__ctx) {
118
- const { script, op, sourceText, applied, kind } = __ctx;
112
+ const { script, op, applied, kind } = __ctx;
119
113
  const [epId, sceneId] = parseSceneRef(op["at"]);
120
114
  const splitAt = op["at_index"] ?? op["action_index"];
121
115
  if (typeof splitAt !== "number" || !Number.isInteger(splitAt)) {
@@ -160,14 +154,15 @@ export function op_scene_split(__ctx) {
160
154
  errorCode: "NEW_SCENE_ID_EXISTS",
161
155
  });
162
156
  }
163
- const ctx = sceneContext(scene);
157
+ // The split-off scene inherits the same cast/props/location (v3 shape).
158
+ const bag = sceneRefs(scene);
159
+ const loc = asList(bag["locations"])[0];
164
160
  const newScene = {
165
161
  scene_id: newSceneId,
166
162
  environment: { ...(isDict(scene["environment"]) ? scene["environment"] : {}) },
167
- context: ctx,
168
- locations: [...asList(ctx["locations"])],
169
- actors: [...asList(ctx["actors"])],
170
- props: [...asList(ctx["props"])],
163
+ location: loc ? { ...loc } : null,
164
+ actors: asList(bag["actors"]).map((r) => ({ ...r })),
165
+ props: asList(bag["props"]).map((r) => ({ ...r })),
171
166
  actions: actions.slice(splitAt),
172
167
  };
173
168
  scene["actions"] = actions.slice(0, splitAt);
@@ -175,19 +170,15 @@ export function op_scene_split(__ctx) {
175
170
  applied.push(kind);
176
171
  }
177
172
  export function op_scene_merge(__ctx) {
178
- const { script, op, sourceText, applied, kind } = __ctx;
179
- // 0.6.0 uses {from, into} (source disappears, into keeps). The legacy op
180
- // used {keep_scene_id, remove_scene_id}; payload still accepted for back-
181
- // compat during transition.
173
+ const { script, op, applied, kind } = __ctx;
174
+ // {from, into}: source disappears, into keeps.
182
175
  const fromRaw = op["from"] ?? op["remove_scene_id"];
183
176
  const intoRaw = op["into"] ?? op["keep_scene_id"];
184
- // from can be either ep/scn or just scn (legacy). Normalize.
185
177
  let fromEp, fromScn, intoEp, intoScn;
186
178
  if (typeof fromRaw === "string" && fromRaw.includes("/")) {
187
179
  [fromEp, fromScn] = parseSceneRef(fromRaw);
188
180
  }
189
181
  else {
190
- // Legacy: needs episode_id from op.
191
182
  fromEp = strOf(op["episode_id"]);
192
183
  fromScn = strOf(fromRaw);
193
184
  }
@@ -207,8 +198,6 @@ export function op_scene_merge(__ctx) {
207
198
  errorCode: "MERGE_CROSS_EPISODE",
208
199
  });
209
200
  }
210
- // Self-merge would push a scene's actions onto itself and then filter the
211
- // (only) scene object out — silently deleting it. Refuse before any mutation.
212
201
  if (fromScn === intoScn) {
213
202
  throw opErr("SCRIPT OP BLOCKED: Merge self", "Cannot merge a scene into itself.", {
214
203
  required: ["distinct from / into scenes"],
@@ -232,28 +221,28 @@ export function op_scene_merge(__ctx) {
232
221
  });
233
222
  }
234
223
  intoScene["actions"].push(...asList(fromScene["actions"]));
235
- const intoCtx = sceneContext(intoScene);
236
- const fromCtx = sceneContext(fromScene);
224
+ const intoBag = sceneRefs(intoScene);
225
+ const fromBag = sceneRefs(fromScene);
226
+ // Union cast/props/location by id; into wins (its location stays first).
237
227
  for (const [field, idKey] of [["actors", "actor_id"], ["locations", "location_id"], ["props", "prop_id"]]) {
238
228
  const existingIds = new Set();
239
- for (const ref of asList(intoCtx[field]))
229
+ for (const ref of asList(intoBag[field]))
240
230
  existingIds.add(ref[idKey]);
241
- for (const ref of asList(fromCtx[field])) {
231
+ for (const ref of asList(fromBag[field])) {
242
232
  if (!existingIds.has(ref[idKey])) {
243
- if (!isList(intoCtx[field]))
244
- intoCtx[field] = [];
245
- intoCtx[field].push(ref);
233
+ if (!isList(intoBag[field]))
234
+ intoBag[field] = [];
235
+ intoBag[field].push(ref);
246
236
  }
247
237
  }
248
238
  }
249
- setSceneContext(intoScene, intoCtx);
250
- // Carry the dropped scene's extend{} keys into the survivor (into wins).
239
+ setSceneRefs(intoScene, intoBag);
251
240
  mergeExtendInto(fromScene, intoScene);
252
241
  ep["scenes"] = scenes.filter((s) => s !== fromScene);
253
242
  applied.push(kind);
254
243
  }
255
244
  export function op_scene_delete(__ctx) {
256
- const { script, op, sourceText, applied, kind } = __ctx;
245
+ const { script, op, applied, kind } = __ctx;
257
246
  const [epId, sceneId] = parseSceneRef(op["at"]);
258
247
  const ep = findEpisode(script, epId);
259
248
  const scenes = asList(ep["scenes"]);
@@ -282,11 +271,9 @@ export function op_scene_delete(__ctx) {
282
271
  applied.push(kind);
283
272
  }
284
273
  export function op_scene_move(__ctx) {
285
- const { script, op, sourceText, applied, kind } = __ctx;
274
+ const { script, op, applied, kind } = __ctx;
286
275
  const [fromEp, fromScn] = parseSceneRef(op["at"] ?? op["from"]);
287
276
  const toEpRaw = strOf(op["to"]);
288
- // `to` accepts either bare `ep_NNN` (append) or `ep_NNN/scn_NNN` (insert before that scene).
289
- // `--at <idx>` overrides positioning.
290
277
  let toEp;
291
278
  let toAnchorScn = null;
292
279
  if (toEpRaw.includes("/")) {
@@ -1 +1 @@
1
- {"version":3,"file":"ops-scene.js","sourceRoot":"","sources":["../../../../src/domain/script/patch/ops-scene.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ops-scene.js","sourceRoot":"","sources":["../../../../src/domain/script/patch/ops-scene.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,6 @@ export declare function op_state_add(__ctx: OpCtx): void;
3
3
  export declare function op_state_rename(__ctx: OpCtx): void;
4
4
  export declare function op_state_describe(__ctx: OpCtx): void;
5
5
  export declare function op_state_delete(__ctx: OpCtx): void;
6
- export declare function op_context_set(__ctx: OpCtx): void;
7
- export declare function op_context_clear(__ctx: OpCtx): void;
8
- export declare function op_context_ref_remove(__ctx: OpCtx): void;
6
+ export declare function op_scene_ref_set(__ctx: OpCtx): void;
7
+ export declare function op_scene_ref_clear(__ctx: OpCtx): void;
8
+ export declare function op_scene_ref_remove(__ctx: OpCtx): void;