@lingjingai/scriptctl 0.63.14 → 0.63.15

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 (777) hide show
  1. package/README.md +7 -1
  2. package/changes/0.63.15.md +15 -0
  3. package/dist/bin.js +1 -20844
  4. package/dist/chunk-3LPIMYYI.js +823 -0
  5. package/dist/cli.d.ts +214 -5
  6. package/dist/cli.js +1 -187
  7. package/dist/review-agent.js +56 -3593
  8. package/package.json +12 -5
  9. package/dist/bin.d.ts +0 -2
  10. package/dist/bin.js.map +0 -7
  11. package/dist/cli/register-authoring.d.ts +0 -4
  12. package/dist/cli/register-authoring.js +0 -35
  13. package/dist/cli/register-authoring.js.map +0 -1
  14. package/dist/cli/register-review.d.ts +0 -3
  15. package/dist/cli/register-review.js +0 -20
  16. package/dist/cli/register-review.js.map +0 -1
  17. package/dist/cli/register-script.d.ts +0 -3
  18. package/dist/cli/register-script.js +0 -297
  19. package/dist/cli/register-script.js.map +0 -1
  20. package/dist/cli/register-tools.d.ts +0 -3
  21. package/dist/cli/register-tools.js +0 -23
  22. package/dist/cli/register-tools.js.map +0 -1
  23. package/dist/cli/register-workflows.d.ts +0 -4
  24. package/dist/cli/register-workflows.js +0 -108
  25. package/dist/cli/register-workflows.js.map +0 -1
  26. package/dist/cli/registry.d.ts +0 -14
  27. package/dist/cli/registry.js +0 -65
  28. package/dist/cli/registry.js.map +0 -1
  29. package/dist/cli.js.map +0 -1
  30. package/dist/common.d.ts +0 -93
  31. package/dist/common.js +0 -240
  32. package/dist/common.js.map +0 -1
  33. package/dist/domain/authoring/apply.d.ts +0 -1
  34. package/dist/domain/authoring/apply.js +0 -2
  35. package/dist/domain/authoring/apply.js.map +0 -1
  36. package/dist/domain/authoring/export.d.ts +0 -1
  37. package/dist/domain/authoring/export.js +0 -2
  38. package/dist/domain/authoring/export.js.map +0 -1
  39. package/dist/domain/authoring/parser.d.ts +0 -2
  40. package/dist/domain/authoring/parser.js +0 -3
  41. package/dist/domain/authoring/parser.js.map +0 -1
  42. package/dist/domain/authoring/serializer.d.ts +0 -1
  43. package/dist/domain/authoring/serializer.js +0 -2
  44. package/dist/domain/authoring/serializer.js.map +0 -1
  45. package/dist/domain/authoring/shared/bracket.d.ts +0 -4
  46. package/dist/domain/authoring/shared/bracket.js +0 -95
  47. package/dist/domain/authoring/shared/bracket.js.map +0 -1
  48. package/dist/domain/authoring/shared/types.d.ts +0 -12
  49. package/dist/domain/authoring/shared/types.js +0 -2
  50. package/dist/domain/authoring/shared/types.js.map +0 -1
  51. package/dist/domain/authoring/types.d.ts +0 -2
  52. package/dist/domain/authoring/types.js +0 -3
  53. package/dist/domain/authoring/types.js.map +0 -1
  54. package/dist/domain/authoring/v3/apply.d.ts +0 -33
  55. package/dist/domain/authoring/v3/apply.js +0 -784
  56. package/dist/domain/authoring/v3/apply.js.map +0 -1
  57. package/dist/domain/authoring/v3/export.d.ts +0 -7
  58. package/dist/domain/authoring/v3/export.js +0 -85
  59. package/dist/domain/authoring/v3/export.js.map +0 -1
  60. package/dist/domain/authoring/v3/parser.d.ts +0 -3
  61. package/dist/domain/authoring/v3/parser.js +0 -823
  62. package/dist/domain/authoring/v3/parser.js.map +0 -1
  63. package/dist/domain/authoring/v3/serializer.d.ts +0 -2
  64. package/dist/domain/authoring/v3/serializer.js +0 -244
  65. package/dist/domain/authoring/v3/serializer.js.map +0 -1
  66. package/dist/domain/authoring/v3/types.d.ts +0 -76
  67. package/dist/domain/authoring/v3/types.js +0 -2
  68. package/dist/domain/authoring/v3/types.js.map +0 -1
  69. package/dist/domain/authoring/v4/apply.d.ts +0 -40
  70. package/dist/domain/authoring/v4/apply.js +0 -451
  71. package/dist/domain/authoring/v4/apply.js.map +0 -1
  72. package/dist/domain/authoring/v4/parser.d.ts +0 -2
  73. package/dist/domain/authoring/v4/parser.js +0 -729
  74. package/dist/domain/authoring/v4/parser.js.map +0 -1
  75. package/dist/domain/authoring/v4/serializer.d.ts +0 -6
  76. package/dist/domain/authoring/v4/serializer.js +0 -280
  77. package/dist/domain/authoring/v4/serializer.js.map +0 -1
  78. package/dist/domain/authoring/v4/types.d.ts +0 -50
  79. package/dist/domain/authoring/v4/types.js +0 -2
  80. package/dist/domain/authoring/v4/types.js.map +0 -1
  81. package/dist/domain/creative-draft/compose.d.ts +0 -18
  82. package/dist/domain/creative-draft/compose.js +0 -448
  83. package/dist/domain/creative-draft/compose.js.map +0 -1
  84. package/dist/domain/ingest/apply-plan.d.ts +0 -23
  85. package/dist/domain/ingest/apply-plan.js +0 -210
  86. package/dist/domain/ingest/apply-plan.js.map +0 -1
  87. package/dist/domain/ingest/assembler.d.ts +0 -65
  88. package/dist/domain/ingest/assembler.js +0 -263
  89. package/dist/domain/ingest/assembler.js.map +0 -1
  90. package/dist/domain/ingest/asset-audit.d.ts +0 -50
  91. package/dist/domain/ingest/asset-audit.js +0 -196
  92. package/dist/domain/ingest/asset-audit.js.map +0 -1
  93. package/dist/domain/ingest/chunker.d.ts +0 -9
  94. package/dist/domain/ingest/chunker.js +0 -49
  95. package/dist/domain/ingest/chunker.js.map +0 -1
  96. package/dist/domain/ingest/environment.d.ts +0 -3
  97. package/dist/domain/ingest/environment.js +0 -32
  98. package/dist/domain/ingest/environment.js.map +0 -1
  99. package/dist/domain/ingest/evidence.d.ts +0 -5
  100. package/dist/domain/ingest/evidence.js +0 -66
  101. package/dist/domain/ingest/evidence.js.map +0 -1
  102. package/dist/domain/ingest/govern.d.ts +0 -3
  103. package/dist/domain/ingest/govern.js +0 -157
  104. package/dist/domain/ingest/govern.js.map +0 -1
  105. package/dist/domain/ingest/jsonl-parser.d.ts +0 -6
  106. package/dist/domain/ingest/jsonl-parser.js +0 -204
  107. package/dist/domain/ingest/jsonl-parser.js.map +0 -1
  108. package/dist/domain/ingest/markdown-parser.d.ts +0 -6
  109. package/dist/domain/ingest/markdown-parser.js +0 -187
  110. package/dist/domain/ingest/markdown-parser.js.map +0 -1
  111. package/dist/domain/ingest/production-validation.d.ts +0 -8
  112. package/dist/domain/ingest/production-validation.js +0 -37
  113. package/dist/domain/ingest/production-validation.js.map +0 -1
  114. package/dist/domain/ingest/records.d.ts +0 -72
  115. package/dist/domain/ingest/records.js +0 -10
  116. package/dist/domain/ingest/records.js.map +0 -1
  117. package/dist/domain/ingest/renumber.d.ts +0 -14
  118. package/dist/domain/ingest/renumber.js +0 -130
  119. package/dist/domain/ingest/renumber.js.map +0 -1
  120. package/dist/domain/ingest/serial-context.d.ts +0 -93
  121. package/dist/domain/ingest/serial-context.js +0 -355
  122. package/dist/domain/ingest/serial-context.js.map +0 -1
  123. package/dist/domain/ingest/state-identity.d.ts +0 -2
  124. package/dist/domain/ingest/state-identity.js +0 -3
  125. package/dist/domain/ingest/state-identity.js.map +0 -1
  126. package/dist/domain/ingest/state-reconcile.d.ts +0 -12
  127. package/dist/domain/ingest/state-reconcile.js +0 -92
  128. package/dist/domain/ingest/state-reconcile.js.map +0 -1
  129. package/dist/domain/ingest/validation.d.ts +0 -1
  130. package/dist/domain/ingest/validation.js +0 -2
  131. package/dist/domain/ingest/validation.js.map +0 -1
  132. package/dist/domain/ingest/video-apply.d.ts +0 -4
  133. package/dist/domain/ingest/video-apply.js +0 -128
  134. package/dist/domain/ingest/video-apply.js.map +0 -1
  135. package/dist/domain/ingest/video-context.d.ts +0 -64
  136. package/dist/domain/ingest/video-context.js +0 -480
  137. package/dist/domain/ingest/video-context.js.map +0 -1
  138. package/dist/domain/ingest/video-records.d.ts +0 -57
  139. package/dist/domain/ingest/video-records.js +0 -9
  140. package/dist/domain/ingest/video-records.js.map +0 -1
  141. package/dist/domain/ingest/video-serial-md.d.ts +0 -81
  142. package/dist/domain/ingest/video-serial-md.js +0 -297
  143. package/dist/domain/ingest/video-serial-md.js.map +0 -1
  144. package/dist/domain/ingest/video-source-evolution.d.ts +0 -25
  145. package/dist/domain/ingest/video-source-evolution.js +0 -40
  146. package/dist/domain/ingest/video-source-evolution.js.map +0 -1
  147. package/dist/domain/ingest/video-state-evidence.d.ts +0 -66
  148. package/dist/domain/ingest/video-state-evidence.js +0 -385
  149. package/dist/domain/ingest/video-state-evidence.js.map +0 -1
  150. package/dist/domain/ingest/video-timestamp.d.ts +0 -8
  151. package/dist/domain/ingest/video-timestamp.js +0 -26
  152. package/dist/domain/ingest/video-timestamp.js.map +0 -1
  153. package/dist/domain/loom/checkpointer.d.ts +0 -3
  154. package/dist/domain/loom/checkpointer.js +0 -30
  155. package/dist/domain/loom/checkpointer.js.map +0 -1
  156. package/dist/domain/loom/index.d.ts +0 -45
  157. package/dist/domain/loom/index.js +0 -277
  158. package/dist/domain/loom/index.js.map +0 -1
  159. package/dist/domain/loom/types.d.ts +0 -101
  160. package/dist/domain/loom/types.js +0 -2
  161. package/dist/domain/loom/types.js.map +0 -1
  162. package/dist/domain/script/address.d.ts +0 -1
  163. package/dist/domain/script/address.js +0 -2
  164. package/dist/domain/script/address.js.map +0 -1
  165. package/dist/domain/script/dispatch.d.ts +0 -18
  166. package/dist/domain/script/dispatch.js +0 -55
  167. package/dist/domain/script/dispatch.js.map +0 -1
  168. package/dist/domain/script/lookups.d.ts +0 -1
  169. package/dist/domain/script/lookups.js +0 -2
  170. package/dist/domain/script/lookups.js.map +0 -1
  171. package/dist/domain/script/migrations/registry.d.ts +0 -4
  172. package/dist/domain/script/migrations/registry.js +0 -76
  173. package/dist/domain/script/migrations/registry.js.map +0 -1
  174. package/dist/domain/script/migrations/types.d.ts +0 -17
  175. package/dist/domain/script/migrations/types.js +0 -2
  176. package/dist/domain/script/migrations/types.js.map +0 -1
  177. package/dist/domain/script/migrations/v3-to-v4.d.ts +0 -3
  178. package/dist/domain/script/migrations/v3-to-v4.js +0 -57
  179. package/dist/domain/script/migrations/v3-to-v4.js.map +0 -1
  180. package/dist/domain/script/names.d.ts +0 -1
  181. package/dist/domain/script/names.js +0 -2
  182. package/dist/domain/script/names.js.map +0 -1
  183. package/dist/domain/script/parse.d.ts +0 -1
  184. package/dist/domain/script/parse.js +0 -2
  185. package/dist/domain/script/parse.js.map +0 -1
  186. package/dist/domain/script/patch/apply.d.ts +0 -1
  187. package/dist/domain/script/patch/apply.js +0 -2
  188. package/dist/domain/script/patch/apply.js.map +0 -1
  189. package/dist/domain/script/patch/helpers.d.ts +0 -1
  190. package/dist/domain/script/patch/helpers.js +0 -2
  191. package/dist/domain/script/patch/helpers.js.map +0 -1
  192. package/dist/domain/script/patch/inline-speaker.d.ts +0 -1
  193. package/dist/domain/script/patch/inline-speaker.js +0 -2
  194. package/dist/domain/script/patch/inline-speaker.js.map +0 -1
  195. package/dist/domain/script/patch/ops-action.d.ts +0 -1
  196. package/dist/domain/script/patch/ops-action.js +0 -2
  197. package/dist/domain/script/patch/ops-action.js.map +0 -1
  198. package/dist/domain/script/patch/ops-asset.d.ts +0 -1
  199. package/dist/domain/script/patch/ops-asset.js +0 -2
  200. package/dist/domain/script/patch/ops-asset.js.map +0 -1
  201. package/dist/domain/script/patch/ops-dialogue.d.ts +0 -1
  202. package/dist/domain/script/patch/ops-dialogue.js +0 -2
  203. package/dist/domain/script/patch/ops-dialogue.js.map +0 -1
  204. package/dist/domain/script/patch/ops-extend.d.ts +0 -1
  205. package/dist/domain/script/patch/ops-extend.js +0 -2
  206. package/dist/domain/script/patch/ops-extend.js.map +0 -1
  207. package/dist/domain/script/patch/ops-meta.d.ts +0 -1
  208. package/dist/domain/script/patch/ops-meta.js +0 -2
  209. package/dist/domain/script/patch/ops-meta.js.map +0 -1
  210. package/dist/domain/script/patch/ops-scene.d.ts +0 -1
  211. package/dist/domain/script/patch/ops-scene.js +0 -2
  212. package/dist/domain/script/patch/ops-scene.js.map +0 -1
  213. package/dist/domain/script/patch/ops-state.d.ts +0 -1
  214. package/dist/domain/script/patch/ops-state.js +0 -2
  215. package/dist/domain/script/patch/ops-state.js.map +0 -1
  216. package/dist/domain/script/patch/registry.d.ts +0 -1
  217. package/dist/domain/script/patch/registry.js +0 -2
  218. package/dist/domain/script/patch/registry.js.map +0 -1
  219. package/dist/domain/script/patch/types.d.ts +0 -1
  220. package/dist/domain/script/patch/types.js +0 -2
  221. package/dist/domain/script/patch/types.js.map +0 -1
  222. package/dist/domain/script/refs.d.ts +0 -1
  223. package/dist/domain/script/refs.js +0 -2
  224. package/dist/domain/script/refs.js.map +0 -1
  225. package/dist/domain/script/scene-refs.d.ts +0 -1
  226. package/dist/domain/script/scene-refs.js +0 -2
  227. package/dist/domain/script/scene-refs.js.map +0 -1
  228. package/dist/domain/script/schema.d.ts +0 -1
  229. package/dist/domain/script/schema.js +0 -2
  230. package/dist/domain/script/schema.js.map +0 -1
  231. package/dist/domain/script/selector.d.ts +0 -1
  232. package/dist/domain/script/selector.js +0 -2
  233. package/dist/domain/script/selector.js.map +0 -1
  234. package/dist/domain/script/shared/regex.d.ts +0 -2
  235. package/dist/domain/script/shared/regex.js +0 -7
  236. package/dist/domain/script/shared/regex.js.map +0 -1
  237. package/dist/domain/script/shared/types.d.ts +0 -1
  238. package/dist/domain/script/shared/types.js +0 -5
  239. package/dist/domain/script/shared/types.js.map +0 -1
  240. package/dist/domain/script/shared/validation.d.ts +0 -1
  241. package/dist/domain/script/shared/validation.js +0 -3
  242. package/dist/domain/script/shared/validation.js.map +0 -1
  243. package/dist/domain/script/shared.d.ts +0 -15
  244. package/dist/domain/script/shared.js +0 -35
  245. package/dist/domain/script/shared.js.map +0 -1
  246. package/dist/domain/script/text-util.d.ts +0 -7
  247. package/dist/domain/script/text-util.js +0 -95
  248. package/dist/domain/script/text-util.js.map +0 -1
  249. package/dist/domain/script/timestamp.d.ts +0 -1
  250. package/dist/domain/script/timestamp.js +0 -3
  251. package/dist/domain/script/timestamp.js.map +0 -1
  252. package/dist/domain/script/types.d.ts +0 -1
  253. package/dist/domain/script/types.js +0 -2
  254. package/dist/domain/script/types.js.map +0 -1
  255. package/dist/domain/script/v3/address.d.ts +0 -32
  256. package/dist/domain/script/v3/address.js +0 -136
  257. package/dist/domain/script/v3/address.js.map +0 -1
  258. package/dist/domain/script/v3/lookups.d.ts +0 -33
  259. package/dist/domain/script/v3/lookups.js +0 -316
  260. package/dist/domain/script/v3/lookups.js.map +0 -1
  261. package/dist/domain/script/v3/ordinal.d.ts +0 -8
  262. package/dist/domain/script/v3/ordinal.js +0 -91
  263. package/dist/domain/script/v3/ordinal.js.map +0 -1
  264. package/dist/domain/script/v3/parse.d.ts +0 -3
  265. package/dist/domain/script/v3/parse.js +0 -164
  266. package/dist/domain/script/v3/parse.js.map +0 -1
  267. package/dist/domain/script/v3/patch/apply.d.ts +0 -2
  268. package/dist/domain/script/v3/patch/apply.js +0 -31
  269. package/dist/domain/script/v3/patch/apply.js.map +0 -1
  270. package/dist/domain/script/v3/patch/helpers.d.ts +0 -15
  271. package/dist/domain/script/v3/patch/helpers.js +0 -155
  272. package/dist/domain/script/v3/patch/helpers.js.map +0 -1
  273. package/dist/domain/script/v3/patch/inline-speaker.d.ts +0 -2
  274. package/dist/domain/script/v3/patch/inline-speaker.js +0 -50
  275. package/dist/domain/script/v3/patch/inline-speaker.js.map +0 -1
  276. package/dist/domain/script/v3/patch/ops-action.d.ts +0 -12
  277. package/dist/domain/script/v3/patch/ops-action.js +0 -355
  278. package/dist/domain/script/v3/patch/ops-action.js.map +0 -1
  279. package/dist/domain/script/v3/patch/ops-asset.d.ts +0 -14
  280. package/dist/domain/script/v3/patch/ops-asset.js +0 -347
  281. package/dist/domain/script/v3/patch/ops-asset.js.map +0 -1
  282. package/dist/domain/script/v3/patch/ops-dialogue.d.ts +0 -2
  283. package/dist/domain/script/v3/patch/ops-dialogue.js +0 -21
  284. package/dist/domain/script/v3/patch/ops-dialogue.js.map +0 -1
  285. package/dist/domain/script/v3/patch/ops-extend.d.ts +0 -8
  286. package/dist/domain/script/v3/patch/ops-extend.js +0 -122
  287. package/dist/domain/script/v3/patch/ops-extend.js.map +0 -1
  288. package/dist/domain/script/v3/patch/ops-meta.d.ts +0 -5
  289. package/dist/domain/script/v3/patch/ops-meta.js +0 -82
  290. package/dist/domain/script/v3/patch/ops-meta.js.map +0 -1
  291. package/dist/domain/script/v3/patch/ops-scene.d.ts +0 -6
  292. package/dist/domain/script/v3/patch/ops-scene.js +0 -351
  293. package/dist/domain/script/v3/patch/ops-scene.js.map +0 -1
  294. package/dist/domain/script/v3/patch/ops-state.d.ts +0 -8
  295. package/dist/domain/script/v3/patch/ops-state.js +0 -155
  296. package/dist/domain/script/v3/patch/ops-state.js.map +0 -1
  297. package/dist/domain/script/v3/patch/ops-timestamp.d.ts +0 -6
  298. package/dist/domain/script/v3/patch/ops-timestamp.js +0 -47
  299. package/dist/domain/script/v3/patch/ops-timestamp.js.map +0 -1
  300. package/dist/domain/script/v3/patch/registry.d.ts +0 -2
  301. package/dist/domain/script/v3/patch/registry.js +0 -56
  302. package/dist/domain/script/v3/patch/registry.js.map +0 -1
  303. package/dist/domain/script/v3/patch/types.d.ts +0 -10
  304. package/dist/domain/script/v3/patch/types.js +0 -2
  305. package/dist/domain/script/v3/patch/types.js.map +0 -1
  306. package/dist/domain/script/v3/refs.d.ts +0 -4
  307. package/dist/domain/script/v3/refs.js +0 -64
  308. package/dist/domain/script/v3/refs.js.map +0 -1
  309. package/dist/domain/script/v3/scene-refs.d.ts +0 -3
  310. package/dist/domain/script/v3/scene-refs.js +0 -35
  311. package/dist/domain/script/v3/scene-refs.js.map +0 -1
  312. package/dist/domain/script/v3/schema.d.ts +0 -6
  313. package/dist/domain/script/v3/schema.js +0 -58
  314. package/dist/domain/script/v3/schema.js.map +0 -1
  315. package/dist/domain/script/v3/selector.d.ts +0 -44
  316. package/dist/domain/script/v3/selector.js +0 -178
  317. package/dist/domain/script/v3/selector.js.map +0 -1
  318. package/dist/domain/script/v3/types.d.ts +0 -106
  319. package/dist/domain/script/v3/types.js +0 -2
  320. package/dist/domain/script/v3/types.js.map +0 -1
  321. package/dist/domain/script/v3/validation.d.ts +0 -2
  322. package/dist/domain/script/v3/validation.js +0 -2
  323. package/dist/domain/script/v3/validation.js.map +0 -1
  324. package/dist/domain/script/v4/address.d.ts +0 -61
  325. package/dist/domain/script/v4/address.js +0 -99
  326. package/dist/domain/script/v4/address.js.map +0 -1
  327. package/dist/domain/script/v4/factory.d.ts +0 -2
  328. package/dist/domain/script/v4/factory.js +0 -13
  329. package/dist/domain/script/v4/factory.js.map +0 -1
  330. package/dist/domain/script/v4/from-v3.d.ts +0 -29
  331. package/dist/domain/script/v4/from-v3.js +0 -307
  332. package/dist/domain/script/v4/from-v3.js.map +0 -1
  333. package/dist/domain/script/v4/ids.d.ts +0 -5
  334. package/dist/domain/script/v4/ids.js +0 -41
  335. package/dist/domain/script/v4/ids.js.map +0 -1
  336. package/dist/domain/script/v4/ordinal.d.ts +0 -3
  337. package/dist/domain/script/v4/ordinal.js +0 -66
  338. package/dist/domain/script/v4/ordinal.js.map +0 -1
  339. package/dist/domain/script/v4/parse.d.ts +0 -5
  340. package/dist/domain/script/v4/parse.js +0 -196
  341. package/dist/domain/script/v4/parse.js.map +0 -1
  342. package/dist/domain/script/v4/patch/apply.d.ts +0 -3
  343. package/dist/domain/script/v4/patch/apply.js +0 -24
  344. package/dist/domain/script/v4/patch/apply.js.map +0 -1
  345. package/dist/domain/script/v4/patch/helpers.d.ts +0 -32
  346. package/dist/domain/script/v4/patch/helpers.js +0 -138
  347. package/dist/domain/script/v4/patch/helpers.js.map +0 -1
  348. package/dist/domain/script/v4/patch/ops-action.d.ts +0 -13
  349. package/dist/domain/script/v4/patch/ops-action.js +0 -351
  350. package/dist/domain/script/v4/patch/ops-action.js.map +0 -1
  351. package/dist/domain/script/v4/patch/ops-asset.d.ts +0 -17
  352. package/dist/domain/script/v4/patch/ops-asset.js +0 -556
  353. package/dist/domain/script/v4/patch/ops-asset.js.map +0 -1
  354. package/dist/domain/script/v4/patch/ops-extend.d.ts +0 -11
  355. package/dist/domain/script/v4/patch/ops-extend.js +0 -103
  356. package/dist/domain/script/v4/patch/ops-extend.js.map +0 -1
  357. package/dist/domain/script/v4/patch/ops-meta.d.ts +0 -5
  358. package/dist/domain/script/v4/patch/ops-meta.js +0 -49
  359. package/dist/domain/script/v4/patch/ops-meta.js.map +0 -1
  360. package/dist/domain/script/v4/patch/ops-scene-ref.d.ts +0 -3
  361. package/dist/domain/script/v4/patch/ops-scene-ref.js +0 -74
  362. package/dist/domain/script/v4/patch/ops-scene-ref.js.map +0 -1
  363. package/dist/domain/script/v4/patch/ops-structure.d.ts +0 -6
  364. package/dist/domain/script/v4/patch/ops-structure.js +0 -236
  365. package/dist/domain/script/v4/patch/ops-structure.js.map +0 -1
  366. package/dist/domain/script/v4/patch/ops-timestamp.d.ts +0 -6
  367. package/dist/domain/script/v4/patch/ops-timestamp.js +0 -40
  368. package/dist/domain/script/v4/patch/ops-timestamp.js.map +0 -1
  369. package/dist/domain/script/v4/patch/registry.d.ts +0 -2
  370. package/dist/domain/script/v4/patch/registry.js +0 -53
  371. package/dist/domain/script/v4/patch/registry.js.map +0 -1
  372. package/dist/domain/script/v4/patch/schema.d.ts +0 -7
  373. package/dist/domain/script/v4/patch/schema.js +0 -77
  374. package/dist/domain/script/v4/patch/schema.js.map +0 -1
  375. package/dist/domain/script/v4/patch/types.d.ts +0 -10
  376. package/dist/domain/script/v4/patch/types.js +0 -2
  377. package/dist/domain/script/v4/patch/types.js.map +0 -1
  378. package/dist/domain/script/v4/selector.d.ts +0 -11
  379. package/dist/domain/script/v4/selector.js +0 -124
  380. package/dist/domain/script/v4/selector.js.map +0 -1
  381. package/dist/domain/script/v4/types.d.ts +0 -120
  382. package/dist/domain/script/v4/types.js +0 -2
  383. package/dist/domain/script/v4/types.js.map +0 -1
  384. package/dist/domain/script/v4/validation.d.ts +0 -2
  385. package/dist/domain/script/v4/validation.js +0 -2
  386. package/dist/domain/script/v4/validation.js.map +0 -1
  387. package/dist/failures.d.ts +0 -58
  388. package/dist/failures.js +0 -96
  389. package/dist/failures.js.map +0 -1
  390. package/dist/infra/converters.d.ts +0 -9
  391. package/dist/infra/converters.js +0 -689
  392. package/dist/infra/converters.js.map +0 -1
  393. package/dist/infra/env.d.ts +0 -2
  394. package/dist/infra/env.js +0 -81
  395. package/dist/infra/env.js.map +0 -1
  396. package/dist/infra/episode-title.d.ts +0 -4
  397. package/dist/infra/episode-title.js +0 -129
  398. package/dist/infra/episode-title.js.map +0 -1
  399. package/dist/infra/ingest/review-renderer.d.ts +0 -1
  400. package/dist/infra/ingest/review-renderer.js +0 -440
  401. package/dist/infra/ingest/review-renderer.js.map +0 -1
  402. package/dist/infra/ingest/source-resolver.d.ts +0 -21
  403. package/dist/infra/ingest/source-resolver.js +0 -51
  404. package/dist/infra/ingest/source-resolver.js.map +0 -1
  405. package/dist/infra/ingest/text-reader.d.ts +0 -3
  406. package/dist/infra/ingest/text-reader.js +0 -27
  407. package/dist/infra/ingest/text-reader.js.map +0 -1
  408. package/dist/infra/ingest/video-discovery.d.ts +0 -8
  409. package/dist/infra/ingest/video-discovery.js +0 -69
  410. package/dist/infra/ingest/video-discovery.js.map +0 -1
  411. package/dist/infra/ingest/video-source-snapshot.d.ts +0 -4
  412. package/dist/infra/ingest/video-source-snapshot.js +0 -47
  413. package/dist/infra/ingest/video-source-snapshot.js.map +0 -1
  414. package/dist/infra/ingest/video-state-evidence.d.ts +0 -14
  415. package/dist/infra/ingest/video-state-evidence.js +0 -140
  416. package/dist/infra/ingest/video-state-evidence.js.map +0 -1
  417. package/dist/infra/ingest/video-transcode.d.ts +0 -7
  418. package/dist/infra/ingest/video-transcode.js +0 -98
  419. package/dist/infra/ingest/video-transcode.js.map +0 -1
  420. package/dist/infra/ingest/workspace-lock.d.ts +0 -1
  421. package/dist/infra/ingest/workspace-lock.js +0 -32
  422. package/dist/infra/ingest/workspace-lock.js.map +0 -1
  423. package/dist/infra/ingest/workspace-store.d.ts +0 -18
  424. package/dist/infra/ingest/workspace-store.js +0 -70
  425. package/dist/infra/ingest/workspace-store.js.map +0 -1
  426. package/dist/infra/llm/anthropic-model.d.ts +0 -11
  427. package/dist/infra/llm/anthropic-model.js +0 -130
  428. package/dist/infra/llm/anthropic-model.js.map +0 -1
  429. package/dist/infra/llm/doubao-model.d.ts +0 -60
  430. package/dist/infra/llm/doubao-model.js +0 -249
  431. package/dist/infra/llm/doubao-model.js.map +0 -1
  432. package/dist/infra/llm/failure-mapping.d.ts +0 -6
  433. package/dist/infra/llm/failure-mapping.js +0 -146
  434. package/dist/infra/llm/failure-mapping.js.map +0 -1
  435. package/dist/infra/llm/gemini-upload.d.ts +0 -13
  436. package/dist/infra/llm/gemini-upload.js +0 -138
  437. package/dist/infra/llm/gemini-upload.js.map +0 -1
  438. package/dist/infra/llm/gemini-video-model.d.ts +0 -50
  439. package/dist/infra/llm/gemini-video-model.js +0 -371
  440. package/dist/infra/llm/gemini-video-model.js.map +0 -1
  441. package/dist/infra/llm/openai-compatible-model.d.ts +0 -14
  442. package/dist/infra/llm/openai-compatible-model.js +0 -207
  443. package/dist/infra/llm/openai-compatible-model.js.map +0 -1
  444. package/dist/infra/llm/retry.d.ts +0 -8
  445. package/dist/infra/llm/retry.js +0 -41
  446. package/dist/infra/llm/retry.js.map +0 -1
  447. package/dist/infra/local-script-output-store.d.ts +0 -43
  448. package/dist/infra/local-script-output-store.js +0 -168
  449. package/dist/infra/local-script-output-store.js.map +0 -1
  450. package/dist/infra/script-output-api.d.ts +0 -50
  451. package/dist/infra/script-output-api.js +0 -251
  452. package/dist/infra/script-output-api.js.map +0 -1
  453. package/dist/infra/script-output-store.d.ts +0 -152
  454. package/dist/infra/script-output-store.js +0 -114
  455. package/dist/infra/script-output-store.js.map +0 -1
  456. package/dist/infra/script-working-copy.d.ts +0 -23
  457. package/dist/infra/script-working-copy.js +0 -157
  458. package/dist/infra/script-working-copy.js.map +0 -1
  459. package/dist/infra/storage.d.ts +0 -35
  460. package/dist/infra/storage.js +0 -91
  461. package/dist/infra/storage.js.map +0 -1
  462. package/dist/llm/composition.d.ts +0 -5
  463. package/dist/llm/composition.js +0 -5
  464. package/dist/llm/composition.js.map +0 -1
  465. package/dist/llm/config.d.ts +0 -28
  466. package/dist/llm/config.js +0 -231
  467. package/dist/llm/config.js.map +0 -1
  468. package/dist/llm/registry.d.ts +0 -43
  469. package/dist/llm/registry.js +0 -69
  470. package/dist/llm/registry.js.map +0 -1
  471. package/dist/llm/router.d.ts +0 -46
  472. package/dist/llm/router.js +0 -512
  473. package/dist/llm/router.js.map +0 -1
  474. package/dist/llm/tasks/ingest/arc-summary.d.ts +0 -8
  475. package/dist/llm/tasks/ingest/arc-summary.js +0 -26
  476. package/dist/llm/tasks/ingest/arc-summary.js.map +0 -1
  477. package/dist/llm/tasks/ingest/asset-audit.d.ts +0 -6
  478. package/dist/llm/tasks/ingest/asset-audit.js +0 -158
  479. package/dist/llm/tasks/ingest/asset-audit.js.map +0 -1
  480. package/dist/llm/tasks/ingest/asset-curate.d.ts +0 -13
  481. package/dist/llm/tasks/ingest/asset-curate.js +0 -45
  482. package/dist/llm/tasks/ingest/asset-curate.js.map +0 -1
  483. package/dist/llm/tasks/ingest/asset-extract.d.ts +0 -12
  484. package/dist/llm/tasks/ingest/asset-extract.js +0 -51
  485. package/dist/llm/tasks/ingest/asset-extract.js.map +0 -1
  486. package/dist/llm/tasks/ingest/asset-govern.d.ts +0 -22
  487. package/dist/llm/tasks/ingest/asset-govern.js +0 -143
  488. package/dist/llm/tasks/ingest/asset-govern.js.map +0 -1
  489. package/dist/llm/tasks/ingest/body-start.d.ts +0 -10
  490. package/dist/llm/tasks/ingest/body-start.js +0 -41
  491. package/dist/llm/tasks/ingest/body-start.js.map +0 -1
  492. package/dist/llm/tasks/ingest/episode-assets.d.ts +0 -29
  493. package/dist/llm/tasks/ingest/episode-assets.js +0 -282
  494. package/dist/llm/tasks/ingest/episode-assets.js.map +0 -1
  495. package/dist/llm/tasks/ingest/mention-resolve.d.ts +0 -9
  496. package/dist/llm/tasks/ingest/mention-resolve.js +0 -39
  497. package/dist/llm/tasks/ingest/mention-resolve.js.map +0 -1
  498. package/dist/llm/tasks/ingest/name-fix.d.ts +0 -9
  499. package/dist/llm/tasks/ingest/name-fix.js +0 -56
  500. package/dist/llm/tasks/ingest/name-fix.js.map +0 -1
  501. package/dist/llm/tasks/ingest/state-reconcile.d.ts +0 -8
  502. package/dist/llm/tasks/ingest/state-reconcile.js +0 -44
  503. package/dist/llm/tasks/ingest/state-reconcile.js.map +0 -1
  504. package/dist/llm/tasks/ingest/text-normalize.d.ts +0 -10
  505. package/dist/llm/tasks/ingest/text-normalize.js +0 -122
  506. package/dist/llm/tasks/ingest/text-normalize.js.map +0 -1
  507. package/dist/llm/tasks/ingest/video-serial.d.ts +0 -24
  508. package/dist/llm/tasks/ingest/video-serial.js +0 -416
  509. package/dist/llm/tasks/ingest/video-serial.js.map +0 -1
  510. package/dist/llm/tasks/schemas.d.ts +0 -9
  511. package/dist/llm/tasks/schemas.js +0 -466
  512. package/dist/llm/tasks/schemas.js.map +0 -1
  513. package/dist/llm/types.d.ts +0 -178
  514. package/dist/llm/types.js +0 -44
  515. package/dist/llm/types.js.map +0 -1
  516. package/dist/output.d.ts +0 -3
  517. package/dist/output.js +0 -94
  518. package/dist/output.js.map +0 -1
  519. package/dist/package-root.d.ts +0 -2
  520. package/dist/package-root.js +0 -38
  521. package/dist/package-root.js.map +0 -1
  522. package/dist/review-agent.js.map +0 -7
  523. package/dist/usecases/changelog.d.ts +0 -9
  524. package/dist/usecases/changelog.js +0 -134
  525. package/dist/usecases/changelog.js.map +0 -1
  526. package/dist/usecases/doctor.d.ts +0 -2
  527. package/dist/usecases/doctor.js +0 -231
  528. package/dist/usecases/doctor.js.map +0 -1
  529. package/dist/usecases/ingest/body-start.d.ts +0 -8
  530. package/dist/usecases/ingest/body-start.js +0 -36
  531. package/dist/usecases/ingest/body-start.js.map +0 -1
  532. package/dist/usecases/ingest/command.d.ts +0 -5
  533. package/dist/usecases/ingest/command.js +0 -183
  534. package/dist/usecases/ingest/command.js.map +0 -1
  535. package/dist/usecases/ingest/failure.d.ts +0 -26
  536. package/dist/usecases/ingest/failure.js +0 -153
  537. package/dist/usecases/ingest/failure.js.map +0 -1
  538. package/dist/usecases/ingest/fanout.d.ts +0 -10
  539. package/dist/usecases/ingest/fanout.js +0 -23
  540. package/dist/usecases/ingest/fanout.js.map +0 -1
  541. package/dist/usecases/ingest/final-asset-audit.d.ts +0 -39
  542. package/dist/usecases/ingest/final-asset-audit.js +0 -88
  543. package/dist/usecases/ingest/final-asset-audit.js.map +0 -1
  544. package/dist/usecases/ingest/generate-video-state-evidence.d.ts +0 -23
  545. package/dist/usecases/ingest/generate-video-state-evidence.js +0 -124
  546. package/dist/usecases/ingest/generate-video-state-evidence.js.map +0 -1
  547. package/dist/usecases/ingest/pass4-mention-resolve.d.ts +0 -11
  548. package/dist/usecases/ingest/pass4-mention-resolve.js +0 -52
  549. package/dist/usecases/ingest/pass4-mention-resolve.js.map +0 -1
  550. package/dist/usecases/ingest/pass5-extract.d.ts +0 -7
  551. package/dist/usecases/ingest/pass5-extract.js +0 -51
  552. package/dist/usecases/ingest/pass5-extract.js.map +0 -1
  553. package/dist/usecases/ingest/pass5-govern.d.ts +0 -13
  554. package/dist/usecases/ingest/pass5-govern.js +0 -157
  555. package/dist/usecases/ingest/pass5-govern.js.map +0 -1
  556. package/dist/usecases/ingest/pipeline.d.ts +0 -28
  557. package/dist/usecases/ingest/pipeline.js +0 -335
  558. package/dist/usecases/ingest/pipeline.js.map +0 -1
  559. package/dist/usecases/ingest/publish-command.d.ts +0 -1
  560. package/dist/usecases/ingest/publish-command.js +0 -4
  561. package/dist/usecases/ingest/publish-command.js.map +0 -1
  562. package/dist/usecases/ingest/serial-govern.d.ts +0 -40
  563. package/dist/usecases/ingest/serial-govern.js +0 -488
  564. package/dist/usecases/ingest/serial-govern.js.map +0 -1
  565. package/dist/usecases/ingest/skip-video-episode.d.ts +0 -4
  566. package/dist/usecases/ingest/skip-video-episode.js +0 -120
  567. package/dist/usecases/ingest/skip-video-episode.js.map +0 -1
  568. package/dist/usecases/ingest/status.d.ts +0 -61
  569. package/dist/usecases/ingest/status.js +0 -347
  570. package/dist/usecases/ingest/status.js.map +0 -1
  571. package/dist/usecases/ingest/timings.d.ts +0 -51
  572. package/dist/usecases/ingest/timings.js +0 -68
  573. package/dist/usecases/ingest/timings.js.map +0 -1
  574. package/dist/usecases/ingest/usage-report.d.ts +0 -125
  575. package/dist/usecases/ingest/usage-report.js +0 -248
  576. package/dist/usecases/ingest/usage-report.js.map +0 -1
  577. package/dist/usecases/ingest/video-pipeline.d.ts +0 -81
  578. package/dist/usecases/ingest/video-pipeline.js +0 -548
  579. package/dist/usecases/ingest/video-pipeline.js.map +0 -1
  580. package/dist/usecases/ingest/video-skip-state.d.ts +0 -29
  581. package/dist/usecases/ingest/video-skip-state.js +0 -148
  582. package/dist/usecases/ingest/video-skip-state.js.map +0 -1
  583. package/dist/usecases/ingest/view-command.d.ts +0 -4
  584. package/dist/usecases/ingest/view-command.js +0 -67
  585. package/dist/usecases/ingest/view-command.js.map +0 -1
  586. package/dist/usecases/ingest/view-server.d.ts +0 -29
  587. package/dist/usecases/ingest/view-server.js +0 -364
  588. package/dist/usecases/ingest/view-server.js.map +0 -1
  589. package/dist/usecases/script/action-span.d.ts +0 -10
  590. package/dist/usecases/script/action-span.js +0 -42
  591. package/dist/usecases/script/action-span.js.map +0 -1
  592. package/dist/usecases/script/actions.d.ts +0 -3
  593. package/dist/usecases/script/actions.js +0 -184
  594. package/dist/usecases/script/actions.js.map +0 -1
  595. package/dist/usecases/script/actor.d.ts +0 -3
  596. package/dist/usecases/script/actor.js +0 -26
  597. package/dist/usecases/script/actor.js.map +0 -1
  598. package/dist/usecases/script/actors.d.ts +0 -3
  599. package/dist/usecases/script/actors.js +0 -25
  600. package/dist/usecases/script/actors.js.map +0 -1
  601. package/dist/usecases/script/add-actor.d.ts +0 -3
  602. package/dist/usecases/script/add-actor.js +0 -13
  603. package/dist/usecases/script/add-actor.js.map +0 -1
  604. package/dist/usecases/script/add-episode.d.ts +0 -3
  605. package/dist/usecases/script/add-episode.js +0 -9
  606. package/dist/usecases/script/add-episode.js.map +0 -1
  607. package/dist/usecases/script/add-location.d.ts +0 -3
  608. package/dist/usecases/script/add-location.js +0 -11
  609. package/dist/usecases/script/add-location.js.map +0 -1
  610. package/dist/usecases/script/add-prop.d.ts +0 -3
  611. package/dist/usecases/script/add-prop.js +0 -11
  612. package/dist/usecases/script/add-prop.js.map +0 -1
  613. package/dist/usecases/script/alias.d.ts +0 -3
  614. package/dist/usecases/script/alias.js +0 -39
  615. package/dist/usecases/script/alias.js.map +0 -1
  616. package/dist/usecases/script/assets.d.ts +0 -3
  617. package/dist/usecases/script/assets.js +0 -46
  618. package/dist/usecases/script/assets.js.map +0 -1
  619. package/dist/usecases/script/audit-assets.d.ts +0 -4
  620. package/dist/usecases/script/audit-assets.js +0 -37
  621. package/dist/usecases/script/audit-assets.js.map +0 -1
  622. package/dist/usecases/script/command-constraints.d.ts +0 -38
  623. package/dist/usecases/script/command-constraints.js +0 -143
  624. package/dist/usecases/script/command-constraints.js.map +0 -1
  625. package/dist/usecases/script/compose-creative-draft.d.ts +0 -3
  626. package/dist/usecases/script/compose-creative-draft.js +0 -106
  627. package/dist/usecases/script/compose-creative-draft.js.map +0 -1
  628. package/dist/usecases/script/context.d.ts +0 -3
  629. package/dist/usecases/script/context.js +0 -52
  630. package/dist/usecases/script/context.js.map +0 -1
  631. package/dist/usecases/script/create.d.ts +0 -3
  632. package/dist/usecases/script/create.js +0 -27
  633. package/dist/usecases/script/create.js.map +0 -1
  634. package/dist/usecases/script/delete.d.ts +0 -3
  635. package/dist/usecases/script/delete.js +0 -88
  636. package/dist/usecases/script/delete.js.map +0 -1
  637. package/dist/usecases/script/describe.d.ts +0 -3
  638. package/dist/usecases/script/describe.js +0 -32
  639. package/dist/usecases/script/describe.js.map +0 -1
  640. package/dist/usecases/script/dialogue.d.ts +0 -3
  641. package/dist/usecases/script/dialogue.js +0 -30
  642. package/dist/usecases/script/dialogue.js.map +0 -1
  643. package/dist/usecases/script/dispatch.d.ts +0 -3
  644. package/dist/usecases/script/dispatch.js +0 -10
  645. package/dist/usecases/script/dispatch.js.map +0 -1
  646. package/dist/usecases/script/do.d.ts +0 -3
  647. package/dist/usecases/script/do.js +0 -186
  648. package/dist/usecases/script/do.js.map +0 -1
  649. package/dist/usecases/script/emotion.d.ts +0 -3
  650. package/dist/usecases/script/emotion.js +0 -24
  651. package/dist/usecases/script/emotion.js.map +0 -1
  652. package/dist/usecases/script/episodes.d.ts +0 -3
  653. package/dist/usecases/script/episodes.js +0 -62
  654. package/dist/usecases/script/episodes.js.map +0 -1
  655. package/dist/usecases/script/export-authoring.d.ts +0 -4
  656. package/dist/usecases/script/export-authoring.js +0 -326
  657. package/dist/usecases/script/export-authoring.js.map +0 -1
  658. package/dist/usecases/script/extend.d.ts +0 -3
  659. package/dist/usecases/script/extend.js +0 -94
  660. package/dist/usecases/script/extend.js.map +0 -1
  661. package/dist/usecases/script/ids.d.ts +0 -3
  662. package/dist/usecases/script/ids.js +0 -148
  663. package/dist/usecases/script/ids.js.map +0 -1
  664. package/dist/usecases/script/importance.d.ts +0 -3
  665. package/dist/usecases/script/importance.js +0 -16
  666. package/dist/usecases/script/importance.js.map +0 -1
  667. package/dist/usecases/script/insert.d.ts +0 -3
  668. package/dist/usecases/script/insert.js +0 -127
  669. package/dist/usecases/script/insert.js.map +0 -1
  670. package/dist/usecases/script/issues.d.ts +0 -3
  671. package/dist/usecases/script/issues.js +0 -35
  672. package/dist/usecases/script/issues.js.map +0 -1
  673. package/dist/usecases/script/lib.d.ts +0 -152
  674. package/dist/usecases/script/lib.js +0 -1654
  675. package/dist/usecases/script/lib.js.map +0 -1
  676. package/dist/usecases/script/locations.d.ts +0 -3
  677. package/dist/usecases/script/locations.js +0 -25
  678. package/dist/usecases/script/locations.js.map +0 -1
  679. package/dist/usecases/script/merge.d.ts +0 -3
  680. package/dist/usecases/script/merge.js +0 -43
  681. package/dist/usecases/script/merge.js.map +0 -1
  682. package/dist/usecases/script/migrate.d.ts +0 -3
  683. package/dist/usecases/script/migrate.js +0 -210
  684. package/dist/usecases/script/migrate.js.map +0 -1
  685. package/dist/usecases/script/move.d.ts +0 -3
  686. package/dist/usecases/script/move.js +0 -50
  687. package/dist/usecases/script/move.js.map +0 -1
  688. package/dist/usecases/script/parenthetical.d.ts +0 -3
  689. package/dist/usecases/script/parenthetical.js +0 -52
  690. package/dist/usecases/script/parenthetical.js.map +0 -1
  691. package/dist/usecases/script/props.d.ts +0 -3
  692. package/dist/usecases/script/props.js +0 -25
  693. package/dist/usecases/script/props.js.map +0 -1
  694. package/dist/usecases/script/refs.d.ts +0 -3
  695. package/dist/usecases/script/refs.js +0 -111
  696. package/dist/usecases/script/refs.js.map +0 -1
  697. package/dist/usecases/script/rename.d.ts +0 -3
  698. package/dist/usecases/script/rename.js +0 -35
  699. package/dist/usecases/script/rename.js.map +0 -1
  700. package/dist/usecases/script/replace.d.ts +0 -3
  701. package/dist/usecases/script/replace.js +0 -33
  702. package/dist/usecases/script/replace.js.map +0 -1
  703. package/dist/usecases/script/review.d.ts +0 -3
  704. package/dist/usecases/script/review.js +0 -187
  705. package/dist/usecases/script/review.js.map +0 -1
  706. package/dist/usecases/script/role.d.ts +0 -3
  707. package/dist/usecases/script/role.js +0 -16
  708. package/dist/usecases/script/role.js.map +0 -1
  709. package/dist/usecases/script/scenes.d.ts +0 -3
  710. package/dist/usecases/script/scenes.js +0 -66
  711. package/dist/usecases/script/scenes.js.map +0 -1
  712. package/dist/usecases/script/script-patch.d.ts +0 -3
  713. package/dist/usecases/script/script-patch.js +0 -321
  714. package/dist/usecases/script/script-patch.js.map +0 -1
  715. package/dist/usecases/script/script-validate.d.ts +0 -3
  716. package/dist/usecases/script/script-validate.js +0 -27
  717. package/dist/usecases/script/script-validate.js.map +0 -1
  718. package/dist/usecases/script/session.d.ts +0 -62
  719. package/dist/usecases/script/session.js +0 -567
  720. package/dist/usecases/script/session.js.map +0 -1
  721. package/dist/usecases/script/split.d.ts +0 -3
  722. package/dist/usecases/script/split.js +0 -41
  723. package/dist/usecases/script/split.js.map +0 -1
  724. package/dist/usecases/script/state-add.d.ts +0 -3
  725. package/dist/usecases/script/state-add.js +0 -22
  726. package/dist/usecases/script/state-add.js.map +0 -1
  727. package/dist/usecases/script/state-delete.d.ts +0 -3
  728. package/dist/usecases/script/state-delete.js +0 -22
  729. package/dist/usecases/script/state-delete.js.map +0 -1
  730. package/dist/usecases/script/state-rename.d.ts +0 -3
  731. package/dist/usecases/script/state-rename.js +0 -16
  732. package/dist/usecases/script/state-rename.js.map +0 -1
  733. package/dist/usecases/script/states.d.ts +0 -3
  734. package/dist/usecases/script/states.js +0 -197
  735. package/dist/usecases/script/states.js.map +0 -1
  736. package/dist/usecases/script/summary.d.ts +0 -3
  737. package/dist/usecases/script/summary.js +0 -72
  738. package/dist/usecases/script/summary.js.map +0 -1
  739. package/dist/usecases/script/synopsis-generate.d.ts +0 -115
  740. package/dist/usecases/script/synopsis-generate.js +0 -776
  741. package/dist/usecases/script/synopsis-generate.js.map +0 -1
  742. package/dist/usecases/script/synopsis.d.ts +0 -3
  743. package/dist/usecases/script/synopsis.js +0 -45
  744. package/dist/usecases/script/synopsis.js.map +0 -1
  745. package/dist/usecases/script/timestamp-filter.d.ts +0 -4
  746. package/dist/usecases/script/timestamp-filter.js +0 -55
  747. package/dist/usecases/script/timestamp-filter.js.map +0 -1
  748. package/dist/usecases/script/timestamp.d.ts +0 -3
  749. package/dist/usecases/script/timestamp.js +0 -11
  750. package/dist/usecases/script/timestamp.js.map +0 -1
  751. package/dist/usecases/script/transition.d.ts +0 -3
  752. package/dist/usecases/script/transition.js +0 -23
  753. package/dist/usecases/script/transition.js.map +0 -1
  754. package/dist/usecases/script/type.d.ts +0 -3
  755. package/dist/usecases/script/type.js +0 -23
  756. package/dist/usecases/script/type.js.map +0 -1
  757. package/dist/usecases/script/v3/mutations.d.ts +0 -2
  758. package/dist/usecases/script/v3/mutations.js +0 -5
  759. package/dist/usecases/script/v3/mutations.js.map +0 -1
  760. package/dist/usecases/script/v4/mutations.d.ts +0 -2
  761. package/dist/usecases/script/v4/mutations.js +0 -6
  762. package/dist/usecases/script/v4/mutations.js.map +0 -1
  763. package/dist/usecases/script/v4/queries.d.ts +0 -15
  764. package/dist/usecases/script/v4/queries.js +0 -196
  765. package/dist/usecases/script/v4/queries.js.map +0 -1
  766. package/dist/usecases/script/working-copy.d.ts +0 -5
  767. package/dist/usecases/script/working-copy.js +0 -399
  768. package/dist/usecases/script/working-copy.js.map +0 -1
  769. package/dist/usecases/script/worldview.d.ts +0 -3
  770. package/dist/usecases/script/worldview.js +0 -17
  771. package/dist/usecases/script/worldview.js.map +0 -1
  772. package/dist/usecases/script/write-authoring.d.ts +0 -3
  773. package/dist/usecases/script/write-authoring.js +0 -263
  774. package/dist/usecases/script/write-authoring.js.map +0 -1
  775. package/dist/usecases/update.d.ts +0 -13
  776. package/dist/usecases/update.js +0 -128
  777. package/dist/usecases/update.js.map +0 -1
@@ -1,204 +0,0 @@
1
- // Strict JSONL → typed record parser (§7). Rejects unknown fields, malformed
2
- // records, missing/invalid source spans, and inline-tag syntax errors. Never
3
- // repairs or downgrades: a bad line fails the batch (§12.3).
4
- import { NON_ACTOR_SPEAKER_KINDS, RECORD_KINDS, } from "./records.js";
5
- import { normalizeSceneTime } from "./environment.js";
6
- export class JsonlParseError extends Error {
7
- line;
8
- constructor(message, line) {
9
- super(`line ${line}: ${message}`);
10
- this.line = line;
11
- }
12
- }
13
- function isObj(v) {
14
- return typeof v === "object" && v !== null && !Array.isArray(v);
15
- }
16
- function requireKeys(obj, allowed, line) {
17
- for (const key of Object.keys(obj)) {
18
- if (!allowed.includes(key))
19
- throw new JsonlParseError(`unknown field '${key}'`, line);
20
- }
21
- }
22
- function parseSource(v, line) {
23
- if (!isObj(v))
24
- throw new JsonlParseError("missing source", line);
25
- requireKeys(v, ["chunk", "line_start", "line_end"], line);
26
- const { chunk, line_start, line_end } = v;
27
- if (![chunk, line_start, line_end].every((n) => typeof n === "number" && Number.isInteger(n) && n >= 0)) {
28
- throw new JsonlParseError("source needs integer chunk/line_start/line_end", line);
29
- }
30
- if (line_start >= line_end)
31
- throw new JsonlParseError("source line_start must be < line_end", line);
32
- return { chunk: chunk, line_start: line_start, line_end: line_end };
33
- }
34
- function str(obj, key, line) {
35
- const v = obj[key];
36
- if (typeof v !== "string" || v === "")
37
- throw new JsonlParseError(`'${key}' must be a non-empty string`, line);
38
- return v;
39
- }
40
- function optStr(obj, key, line) {
41
- if (!(key in obj) || obj[key] === undefined)
42
- return undefined;
43
- const v = obj[key];
44
- if (typeof v !== "string" || v === "")
45
- throw new JsonlParseError(`'${key}' must be a non-empty string`, line);
46
- return v;
47
- }
48
- function parseEntityRefs(v, key, line) {
49
- if (!Array.isArray(v))
50
- throw new JsonlParseError(`'${key}' must be an array`, line);
51
- return v.map((item) => {
52
- if (!isObj(item))
53
- throw new JsonlParseError(`'${key}' entries must be objects`, line);
54
- requireKeys(item, ["name", "state"], line);
55
- const ref = { name: str(item, "name", line) };
56
- const state = optStr(item, "state", line);
57
- if (state !== undefined)
58
- ref.state = state;
59
- return ref;
60
- });
61
- }
62
- function parseSpeaker(v, line) {
63
- if (!isObj(v))
64
- throw new JsonlParseError("dialogue/inner_thought needs a speaker", line);
65
- if ("kind" in v) {
66
- requireKeys(v, ["kind", "label"], line);
67
- const kind = v.kind;
68
- if (typeof kind !== "string" || !NON_ACTOR_SPEAKER_KINDS.includes(kind)) {
69
- throw new JsonlParseError(`speaker.kind must be one of ${NON_ACTOR_SPEAKER_KINDS.join("|")}`, line);
70
- }
71
- const ref = { kind: kind };
72
- const label = optStr(v, "label", line);
73
- if (label !== undefined)
74
- ref.label = label;
75
- return ref;
76
- }
77
- requireKeys(v, ["name", "state"], line);
78
- const name = str(v, "name", line);
79
- if (!/[\p{L}\p{N}]/u.test(name)) {
80
- throw new JsonlParseError("speaker.name must contain a letter or number", line);
81
- }
82
- const ref = { name };
83
- const state = optStr(v, "state", line);
84
- if (state !== undefined)
85
- ref.state = state;
86
- return ref;
87
- }
88
- function parseRecord(obj, line) {
89
- const kind = obj.kind;
90
- if (typeof kind !== "string" || !RECORD_KINDS.includes(kind)) {
91
- throw new JsonlParseError(`unknown or missing kind '${String(kind)}'`, line);
92
- }
93
- const source = parseSource(obj.source, line);
94
- switch (kind) {
95
- case "episode": {
96
- requireKeys(obj, ["kind", "episode", "title", "source"], line);
97
- const episode = obj.episode;
98
- if (typeof episode !== "number" || !Number.isInteger(episode))
99
- throw new JsonlParseError("episode must be an integer", line);
100
- const rec = { kind, episode, source };
101
- const title = optStr(obj, "title", line);
102
- if (title !== undefined)
103
- rec.title = title;
104
- return rec;
105
- }
106
- case "scene": {
107
- requireKeys(obj, ["kind", "scene", "environment", "location", "actors", "props", "source"], line);
108
- const rec = { kind, source };
109
- if ("scene" in obj && obj.scene !== undefined) {
110
- if (typeof obj.scene !== "number" || !Number.isInteger(obj.scene))
111
- throw new JsonlParseError("scene must be an integer", line);
112
- rec.scene = obj.scene;
113
- }
114
- if ("environment" in obj && obj.environment !== undefined) {
115
- if (!isObj(obj.environment))
116
- throw new JsonlParseError("environment must be an object", line);
117
- requireKeys(obj.environment, ["space", "time"], line);
118
- const environment = {};
119
- const space = optStr(obj.environment, "space", line);
120
- if (space !== undefined)
121
- environment.space = space;
122
- const rawTime = optStr(obj.environment, "time", line);
123
- if (rawTime !== undefined) {
124
- const time = normalizeSceneTime(rawTime);
125
- if (!time) {
126
- throw new JsonlParseError("environment.time must be day|night|dawn|dusk or a recognized Chinese equivalent", line);
127
- }
128
- environment.time = time;
129
- }
130
- rec.environment = environment;
131
- }
132
- if ("location" in obj && obj.location !== undefined) {
133
- if (!isObj(obj.location))
134
- throw new JsonlParseError("location must be an object", line);
135
- requireKeys(obj.location, ["name", "state"], line);
136
- const loc = { name: str(obj.location, "name", line) };
137
- const st = optStr(obj.location, "state", line);
138
- if (st !== undefined)
139
- loc.state = st;
140
- rec.location = loc;
141
- }
142
- if ("actors" in obj && obj.actors !== undefined)
143
- rec.actors = parseEntityRefs(obj.actors, "actors", line);
144
- if ("props" in obj && obj.props !== undefined)
145
- rec.props = parseEntityRefs(obj.props, "props", line);
146
- return rec;
147
- }
148
- case "action":
149
- case "transition": {
150
- requireKeys(obj, ["kind", "content", "source"], line);
151
- const content = str(obj, "content", line);
152
- return { kind, content, source };
153
- }
154
- case "dialogue":
155
- case "inner_thought": {
156
- requireKeys(obj, ["kind", "speaker", "content", "emotion", "source"], line);
157
- const content = str(obj, "content", line);
158
- const speaker = parseSpeaker(obj.speaker, line);
159
- const rec = { kind, speaker, content, source };
160
- const emotion = optStr(obj, "emotion", line);
161
- if (emotion !== undefined)
162
- rec.emotion = emotion;
163
- return rec;
164
- }
165
- case "note": {
166
- requireKeys(obj, ["kind", "content", "category", "source"], line);
167
- const content = str(obj, "content", line);
168
- const rec = { kind, content, source };
169
- if ("category" in obj && obj.category !== undefined) {
170
- const cat = obj.category;
171
- if (cat !== "author_note" && cat !== "format_note" && cat !== "unclassified") {
172
- throw new JsonlParseError("note.category must be author_note|format_note|unclassified", line);
173
- }
174
- rec.category = cat;
175
- }
176
- return rec;
177
- }
178
- default:
179
- throw new JsonlParseError(`unhandled kind '${kind}'`, line);
180
- }
181
- }
182
- // Parse full JSONL text. Blank lines are skipped; every other line must be a
183
- // valid record. `lineOffset` lets callers report absolute file lines.
184
- export function parseJsonl(text, lineOffset = 0) {
185
- const out = [];
186
- const lines = text.split("\n");
187
- for (let i = 0; i < lines.length; i++) {
188
- const raw = lines[i].trim();
189
- if (raw === "")
190
- continue;
191
- let parsed;
192
- try {
193
- parsed = JSON.parse(raw);
194
- }
195
- catch {
196
- throw new JsonlParseError("invalid JSON", i + 1 + lineOffset);
197
- }
198
- if (!isObj(parsed))
199
- throw new JsonlParseError("record must be a JSON object", i + 1 + lineOffset);
200
- out.push(parseRecord(parsed, i + 1 + lineOffset));
201
- }
202
- return out;
203
- }
204
- //# sourceMappingURL=jsonl-parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsonl-parser.js","sourceRoot":"","sources":["../../../src/domain/ingest/jsonl-parser.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- import type { Chunk } from "./chunker.js";
2
- import { type IngestRecord, type NameStateRef } from "./records.js";
3
- export declare class MarkdownParseError extends Error {
4
- }
5
- export declare function parseEntityList(raw: string): NameStateRef[];
6
- export declare function parseNormalizeMarkdown(md: string, chunk: Chunk): IngestRecord[];
@@ -1,187 +0,0 @@
1
- // Deterministic normalize-markdown → records parser (§pass2). The cheap model
2
- // rewrites one source chunk as a lean plain-text screenplay markdown
3
- // (episode/scene headers + `- 时空/地点/人物/道具` scene bullets + `> [anchor]
4
- // body` lines). Bodies are PLAIN TEXT — no inline entity tags. Scene cast/props
5
- // declared via `- 人物`/`- 道具` are captured onto the scene record; entity
6
- // binding is done later by pass5-extract. Source is chunk-granular.
7
- import { NON_ACTOR_SPEAKER_KINDS, } from "./records.js";
8
- import { normalizeSceneTime } from "./environment.js";
9
- export class MarkdownParseError extends Error {
10
- }
11
- const EP_RE = /^#\s*第?\s*(\d+)\s*集?\s*(.*)$/;
12
- const SCENE_LABEL_RE = /^##\s*(.*)$/;
13
- const ENV_RE = /^-\s*时空\s*[::]\s*(.*)$/;
14
- const LOC_RE = /^-\s*地点\s*[::]\s*(.*)$/;
15
- const CAST_RE = /^-\s*人物\s*[::]\s*(.*)$/;
16
- const PROP_RE = /^-\s*道具\s*[::]\s*(.*)$/;
17
- // dialogue/inner_thought/transition/note carry a `[label]`; everything else is
18
- // a bare action line. `> ` and `[act]` are accepted but not required.
19
- const ANCHOR_RE = /^(?:>\s*)?\[([^\]]*)\]\s?([\s\S]*)$/;
20
- const KNOWN_LABELS = new Set(["act", "dlg", "think", "trans", "note"]);
21
- const SPACE_MAP = { "内": "interior", "外": "exterior" };
22
- // Split a declared cast/prop list on top-level separators, keeping 【…】 (which
23
- // may itself contain commas) intact, then split each item into name + 【state】.
24
- export function parseEntityList(raw) {
25
- const items = [];
26
- let depth = 0;
27
- let buf = "";
28
- for (const ch of raw) {
29
- if (ch === "【")
30
- depth++;
31
- else if (ch === "】")
32
- depth = Math.max(0, depth - 1);
33
- if ((ch === "," || ch === "," || ch === "、") && depth === 0) {
34
- if (buf.trim())
35
- items.push(buf.trim());
36
- buf = "";
37
- continue;
38
- }
39
- buf += ch;
40
- }
41
- if (buf.trim())
42
- items.push(buf.trim());
43
- const refs = [];
44
- for (const item of items) {
45
- const m = /^([^【]+?)\s*(?:【(.+)】)?\s*$/.exec(item);
46
- if (!m)
47
- continue;
48
- const name = m[1].trim();
49
- if (!name)
50
- continue;
51
- const state = m[2]?.trim();
52
- refs.push(state ? { name, state } : { name });
53
- }
54
- return refs;
55
- }
56
- function parseSpeaker(field) {
57
- const trimmed = field.trim();
58
- const colon = trimmed.indexOf(":");
59
- if (colon > 0) {
60
- const kind = trimmed.slice(0, colon).trim();
61
- if (NON_ACTOR_SPEAKER_KINDS.includes(kind)) {
62
- const label = trimmed.slice(colon + 1).trim();
63
- return label ? { kind: kind, label } : { kind: kind };
64
- }
65
- }
66
- // A bare kind word (`group` / `system` / …) with no label is that kind, not a
67
- // person named "group".
68
- if (NON_ACTOR_SPEAKER_KINDS.includes(trimmed))
69
- return { kind: trimmed };
70
- if (!trimmed)
71
- throw new MarkdownParseError("dialogue anchor missing speaker");
72
- return { name: trimmed };
73
- }
74
- // A dialogue/inner_thought anchor may pack several simultaneous speakers
75
- // (`李叔,张妈`). Split on punctuation separators only (NOT 和, which can appear
76
- // inside a name); each becomes its own record with the same content.
77
- function parseSpeakers(field) {
78
- const parts = field.split(/[,,、;;/]/).map((s) => s.trim()).filter(Boolean);
79
- if (parts.length <= 1)
80
- return [parseSpeaker(field)];
81
- return parts.map(parseSpeaker);
82
- }
83
- const NOTE_CATEGORY = { author: "author_note", format: "format_note" };
84
- function anchorRecords(label, body, source) {
85
- const content = body.trim();
86
- const parts = label.split("|");
87
- const kind = parts[0].trim();
88
- switch (kind) {
89
- case "act":
90
- return [{ kind: "action", content, source }];
91
- case "trans":
92
- return [{ kind: "transition", content, source }];
93
- case "dlg":
94
- case "think": {
95
- const emotion = parts[2]?.trim();
96
- // Simultaneous speakers → one record each, same content (overlap 拆多条).
97
- return parseSpeakers(parts[1] ?? "").map((speaker) => {
98
- const rec = { kind: kind === "dlg" ? "dialogue" : "inner_thought", speaker, content, source };
99
- if (emotion)
100
- rec.emotion = emotion;
101
- return rec;
102
- });
103
- }
104
- case "note":
105
- return [{ kind: "note", content, category: NOTE_CATEGORY[(parts[1] ?? "").trim()] ?? "unclassified", source }];
106
- default:
107
- throw new MarkdownParseError(`unknown anchor label '[${label}]'`);
108
- }
109
- }
110
- export function parseNormalizeMarkdown(md, chunk) {
111
- const source = { chunk: chunk.index, line_start: chunk.core_line_start, line_end: chunk.core_line_end };
112
- const records = [];
113
- const lines = stripFences(md).split("\n");
114
- let openScene = null;
115
- for (const raw of lines) {
116
- const t = raw.trim();
117
- if (t === "")
118
- continue;
119
- if (t.startsWith("##")) {
120
- const rec = { kind: "scene", source };
121
- const num = /(\d+)/.exec(SCENE_LABEL_RE.exec(t)?.[1]?.trim() ?? "")?.[1];
122
- if (num)
123
- rec.scene = Number(num);
124
- records.push(rec);
125
- openScene = rec;
126
- continue;
127
- }
128
- if (t.startsWith("#")) {
129
- const ep = EP_RE.exec(t);
130
- if (ep) {
131
- const title = ep[2].trim();
132
- const rec = { kind: "episode", episode: Number(ep[1]), source };
133
- if (title)
134
- rec.title = title;
135
- records.push(rec);
136
- }
137
- continue;
138
- }
139
- // `- …` scene metadata bullet (only meaningful while a scene is open).
140
- if (t.startsWith("-")) {
141
- if (openScene) {
142
- const env = ENV_RE.exec(t);
143
- if (env) {
144
- const e = {};
145
- for (const tok of env[1].trim().split(/\s+/)) {
146
- if (SPACE_MAP[tok])
147
- e.space = SPACE_MAP[tok];
148
- const time = normalizeSceneTime(tok);
149
- if (time)
150
- e.time = time;
151
- }
152
- if (e.space || e.time)
153
- openScene.environment = e;
154
- }
155
- else {
156
- const loc = LOC_RE.exec(t);
157
- const cast = CAST_RE.exec(t);
158
- const prop = PROP_RE.exec(t);
159
- if (loc && loc[1].trim()) {
160
- const [name, state] = loc[1].split("|");
161
- openScene.location = state ? { name: name.trim(), state: state.trim() } : { name: name.trim() };
162
- }
163
- else if (cast && cast[1].trim())
164
- openScene.actors = parseEntityList(cast[1]);
165
- else if (prop && prop[1].trim())
166
- openScene.props = parseEntityList(prop[1]);
167
- }
168
- }
169
- continue;
170
- }
171
- // A `[dlg|…]`/`[think|…]`/`[trans]`/`[note]`/`[act]` anchor, else a bare
172
- // action line (content = the whole line).
173
- const anchor = ANCHOR_RE.exec(t);
174
- if (anchor && KNOWN_LABELS.has(anchor[1].split("|")[0].trim()))
175
- records.push(...anchorRecords(anchor[1], anchor[2] ?? "", source));
176
- else
177
- records.push({ kind: "action", content: t, source });
178
- }
179
- const BODY = new Set(["action", "dialogue", "inner_thought", "transition", "note"]);
180
- return records.filter((r) => !(BODY.has(r.kind) && "content" in r && r.content.trim() === ""));
181
- }
182
- function stripFences(raw) {
183
- const trimmed = raw.trim();
184
- const fence = trimmed.match(/^```(?:markdown|md)?\n([\s\S]*?)\n```$/);
185
- return fence ? fence[1] : trimmed;
186
- }
187
- //# sourceMappingURL=markdown-parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"markdown-parser.js","sourceRoot":"","sources":["../../../src/domain/ingest/markdown-parser.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { ValidationIssue } from "./validation.js";
2
- import type { ScriptV4 } from "../script/v4/types.js";
3
- /**
4
- * Production-facing quality checks for the final Script v4 document. Ingest
5
- * appends these as warnings so source fidelity and model uncertainty remain
6
- * reviewable without turning a valid extraction into data loss.
7
- */
8
- export declare function validateProductionStandard(script: ScriptV4): ValidationIssue[];
@@ -1,37 +0,0 @@
1
- import { isCrowdName } from "./serial-context.js";
2
- const ACTION_PRONOUN = /(?:^|[,。!?;:、\s“”"'((])(他们|她们|它们|其中一人|另一个人|前者|后者|对方|有人|两人|他|她|它)(?!人)/;
3
- /**
4
- * Production-facing quality checks for the final Script v4 document. Ingest
5
- * appends these as warnings so source fidelity and model uncertainty remain
6
- * reviewable without turning a valid extraction into data loss.
7
- */
8
- export function validateProductionStandard(script) {
9
- const warnings = [];
10
- const warn = (code, path, message) => {
11
- warnings.push({ code, path, message });
12
- };
13
- script.actors.forEach((asset, index) => {
14
- if (isCrowdName(asset.actor_name)) {
15
- warn("production_crowd_actor", `$.actors[${index}].actor_name`, `${asset.actor_name} is a group speaker, not an actor asset`);
16
- }
17
- });
18
- script.episodes.forEach((episode, episodeIndex) => {
19
- episode.scenes.forEach((scene, sceneIndex) => {
20
- const scenePath = `$.episodes[${episodeIndex}].scenes[${sceneIndex}]`;
21
- if (scene.location === null) {
22
- warn("production_location_missing", `${scenePath}.location`, "production scene needs one stable location");
23
- }
24
- scene.actions.forEach((action, actionIndex) => {
25
- const actionPath = `${scenePath}.actions[${actionIndex}]`;
26
- if (action.type === "action") {
27
- const match = ACTION_PRONOUN.exec(action.content);
28
- if (match) {
29
- warn("production_action_pronoun", `${actionPath}.content`, `action uses ambiguous reference ${match[1]}`);
30
- }
31
- }
32
- });
33
- });
34
- });
35
- return warnings;
36
- }
37
- //# sourceMappingURL=production-validation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"production-validation.js","sourceRoot":"","sources":["../../../src/domain/ingest/production-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIlD,MAAM,cAAc,GAAG,uEAAuE,CAAC;AAE/F;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CAAC,MAAgB;IACzD,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,OAAe,EAAQ,EAAE;QACjE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QACrC,IAAI,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,wBAAwB,EAAE,YAAY,KAAK,cAAc,EAAE,GAAG,KAAK,CAAC,UAAU,yCAAyC,CAAC,CAAC;QAChI,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE;QAChD,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;YAC3C,MAAM,SAAS,GAAG,cAAc,YAAY,YAAY,UAAU,GAAG,CAAC;YACtE,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAC5B,IAAI,CAAC,6BAA6B,EAAE,GAAG,SAAS,WAAW,EAAE,4CAA4C,CAAC,CAAC;YAC7G,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE;gBAC5C,MAAM,UAAU,GAAG,GAAG,SAAS,YAAY,WAAW,GAAG,CAAC;gBAC1D,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC7B,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAClD,IAAI,KAAK,EAAE,CAAC;wBACV,IAAI,CAAC,2BAA2B,EAAE,GAAG,UAAU,UAAU,EAAE,mCAAmC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC5G,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1,72 +0,0 @@
1
- import { NON_ACTOR_SPEAKER_KINDS, type NonActorSpeakerKind } from "../script/shared/types.js";
2
- export type SourceSpan = {
3
- chunk: number;
4
- line_start: number;
5
- line_end: number;
6
- };
7
- export type NameStateRef = {
8
- name: string;
9
- state?: string;
10
- };
11
- export type SpeakerRef = {
12
- name: string;
13
- state?: string;
14
- } | {
15
- kind: NonActorSpeakerKind;
16
- label?: string;
17
- };
18
- export { NON_ACTOR_SPEAKER_KINDS };
19
- export type EpisodeRecord = {
20
- kind: "episode";
21
- episode: number;
22
- title?: string;
23
- source: SourceSpan;
24
- };
25
- export type SceneRecord = {
26
- kind: "scene";
27
- scene?: number;
28
- environment?: {
29
- space?: string;
30
- time?: string;
31
- };
32
- location?: {
33
- name: string;
34
- state?: string;
35
- };
36
- actors?: NameStateRef[];
37
- props?: NameStateRef[];
38
- source: SourceSpan;
39
- };
40
- export type ActionRecord = {
41
- kind: "action";
42
- content: string;
43
- source: SourceSpan;
44
- };
45
- export type DialogueRecord = {
46
- kind: "dialogue";
47
- speaker: SpeakerRef;
48
- content: string;
49
- emotion?: string;
50
- source: SourceSpan;
51
- };
52
- export type InnerThoughtRecord = {
53
- kind: "inner_thought";
54
- speaker: SpeakerRef;
55
- content: string;
56
- emotion?: string;
57
- source: SourceSpan;
58
- };
59
- export type TransitionRecord = {
60
- kind: "transition";
61
- content: string;
62
- source: SourceSpan;
63
- };
64
- export type NoteRecord = {
65
- kind: "note";
66
- content: string;
67
- category?: "author_note" | "format_note" | "unclassified";
68
- source: SourceSpan;
69
- };
70
- export type IngestRecord = EpisodeRecord | SceneRecord | ActionRecord | DialogueRecord | InnerThoughtRecord | TransitionRecord | NoteRecord;
71
- export declare const RECORD_KINDS: readonly ["episode", "scene", "action", "dialogue", "inner_thought", "transition", "note"];
72
- export type RecordKind = (typeof RECORD_KINDS)[number];
@@ -1,10 +0,0 @@
1
- // Typed JSONL record shapes for the ingest pipeline (§7). Records are name-based
2
- // and pre-canonicalization; Pass5 assigns final ids. Content is plain text (no
3
- // inline entity tags); scene-level cast/props are declared on the scene record
4
- // (from source `人物:`/`道具:` lines) and augmented by the extract pass.
5
- import { NON_ACTOR_SPEAKER_KINDS, } from "../script/shared/types.js";
6
- // Non-actor speaker kinds. Bit-part characters (龙套) are still actors (tagged
7
- // importance=background), so they speak via actor_id — no special speaker kind.
8
- export { NON_ACTOR_SPEAKER_KINDS };
9
- export const RECORD_KINDS = ["episode", "scene", "action", "dialogue", "inner_thought", "transition", "note"];
10
- //# sourceMappingURL=records.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"records.js","sourceRoot":"","sources":["../../../src/domain/ingest/records.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,+EAA+E;AAC/E,+EAA+E;AAC/E,qEAAqE;AAErE,OAAO,EACL,uBAAuB,GAExB,MAAM,2BAA2B,CAAC;AAWnC,6EAA6E;AAC7E,gFAAgF;AAChF,OAAO,EAAE,uBAAuB,EAAE,CAAC;AA2BnC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,CAAU,CAAC"}
@@ -1,14 +0,0 @@
1
- type Obj = Record<string, unknown>;
2
- export type IdMap = {
3
- episodes: Record<string, string>;
4
- scenes: Record<string, string>;
5
- actors: Record<string, string>;
6
- locations: Record<string, string>;
7
- props: Record<string, string>;
8
- states: Record<string, string>;
9
- };
10
- export declare function renumberIds(input: unknown): {
11
- script: Obj;
12
- idMap: IdMap;
13
- };
14
- export {};