@lingjingai/scriptctl 0.50.0 → 0.51.1

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 (287) hide show
  1. package/changes/0.51.0.md +24 -0
  2. package/changes/0.51.1.md +15 -0
  3. package/changes/unreleased.md +1 -2
  4. package/dist/cli/register-batch.d.ts +3 -0
  5. package/dist/cli/register-batch.js +28 -0
  6. package/dist/cli/register-batch.js.map +1 -0
  7. package/dist/cli/register-edits.d.ts +4 -0
  8. package/dist/cli/register-edits.js +226 -0
  9. package/dist/cli/register-edits.js.map +1 -0
  10. package/dist/cli/register-query.d.ts +4 -0
  11. package/dist/cli/register-query.js +93 -0
  12. package/dist/cli/register-query.js.map +1 -0
  13. package/dist/cli/register-tools.d.ts +3 -0
  14. package/dist/cli/register-tools.js +23 -0
  15. package/dist/cli/register-tools.js.map +1 -0
  16. package/dist/cli/register-workflows.d.ts +4 -0
  17. package/dist/cli/register-workflows.js +71 -0
  18. package/dist/cli/register-workflows.js.map +1 -0
  19. package/dist/cli/registry.d.ts +14 -0
  20. package/dist/cli/registry.js +65 -0
  21. package/dist/cli/registry.js.map +1 -0
  22. package/dist/cli.d.ts +3 -0
  23. package/dist/cli.js +146 -596
  24. package/dist/cli.js.map +1 -1
  25. package/dist/common.d.ts +12 -38
  26. package/dist/common.js +5 -11
  27. package/dist/common.js.map +1 -1
  28. package/dist/domain/authoring/shared/bracket.js +3 -3
  29. package/dist/domain/authoring/shared/bracket.js.map +1 -1
  30. package/dist/domain/authoring/v3/apply.js +3 -3
  31. package/dist/domain/authoring/v3/apply.js.map +1 -1
  32. package/dist/domain/authoring/v4/apply.js +6 -6
  33. package/dist/domain/authoring/v4/apply.js.map +1 -1
  34. package/dist/domain/authoring/v4/parser.js +2 -2
  35. package/dist/domain/authoring/v4/parser.js.map +1 -1
  36. package/dist/domain/authoring/v4/serializer.js +2 -2
  37. package/dist/domain/authoring/v4/serializer.js.map +1 -1
  38. package/dist/domain/ingest/assembler.d.ts +1 -0
  39. package/dist/domain/ingest/assembler.js +8 -2
  40. package/dist/domain/ingest/assembler.js.map +1 -1
  41. package/dist/domain/ingest/video-apply.js +6 -3
  42. package/dist/domain/ingest/video-apply.js.map +1 -1
  43. package/dist/domain/ingest/video-context.js +2 -2
  44. package/dist/domain/ingest/video-context.js.map +1 -1
  45. package/dist/domain/ingest/video-records.d.ts +6 -5
  46. package/dist/domain/ingest/video-serial-md.d.ts +6 -5
  47. package/dist/domain/ingest/video-serial-md.js +11 -4
  48. package/dist/domain/ingest/video-serial-md.js.map +1 -1
  49. package/dist/domain/script/dispatch.js +5 -7
  50. package/dist/domain/script/dispatch.js.map +1 -1
  51. package/dist/domain/script/shared.js +4 -6
  52. package/dist/domain/script/shared.js.map +1 -1
  53. package/dist/domain/script/v3/address.js +29 -38
  54. package/dist/domain/script/v3/address.js.map +1 -1
  55. package/dist/domain/script/v3/lookups.js +31 -32
  56. package/dist/domain/script/v3/lookups.js.map +1 -1
  57. package/dist/domain/script/v3/ordinal.js +4 -5
  58. package/dist/domain/script/v3/ordinal.js.map +1 -1
  59. package/dist/domain/script/v3/parse.js +3 -4
  60. package/dist/domain/script/v3/parse.js.map +1 -1
  61. package/dist/domain/script/v3/patch/helpers.js +6 -8
  62. package/dist/domain/script/v3/patch/helpers.js.map +1 -1
  63. package/dist/domain/script/v3/selector.js +6 -8
  64. package/dist/domain/script/v3/selector.js.map +1 -1
  65. package/dist/domain/script/v4/address.js +2 -3
  66. package/dist/domain/script/v4/address.js.map +1 -1
  67. package/dist/domain/script/v4/ids.js +6 -7
  68. package/dist/domain/script/v4/ids.js.map +1 -1
  69. package/dist/domain/script/v4/ordinal.js +4 -5
  70. package/dist/domain/script/v4/ordinal.js.map +1 -1
  71. package/dist/domain/script/v4/parse.js +3 -4
  72. package/dist/domain/script/v4/parse.js.map +1 -1
  73. package/dist/domain/script/v4/patch/apply.js +3 -3
  74. package/dist/domain/script/v4/patch/apply.js.map +1 -1
  75. package/dist/domain/script/v4/patch/helpers.js +3 -4
  76. package/dist/domain/script/v4/patch/helpers.js.map +1 -1
  77. package/dist/domain/script/v4/patch/ops-action.js +46 -49
  78. package/dist/domain/script/v4/patch/ops-action.js.map +1 -1
  79. package/dist/domain/script/v4/selector.js +2 -3
  80. package/dist/domain/script/v4/selector.js.map +1 -1
  81. package/dist/infra/ingest/video-discovery.js +7 -4
  82. package/dist/infra/ingest/video-discovery.js.map +1 -1
  83. package/dist/infra/script-output-store.js +6 -11
  84. package/dist/infra/script-output-store.js.map +1 -1
  85. package/dist/infra/script-working-copy.js +15 -16
  86. package/dist/infra/script-working-copy.js.map +1 -1
  87. package/dist/llm/config.js +3 -4
  88. package/dist/llm/config.js.map +1 -1
  89. package/dist/llm/router.js +6 -8
  90. package/dist/llm/router.js.map +1 -1
  91. package/dist/llm/tasks/ingest/text-normalize.js +3 -3
  92. package/dist/llm/tasks/ingest/text-normalize.js.map +1 -1
  93. package/dist/llm/tasks/ingest/video-serial.js +29 -22
  94. package/dist/llm/tasks/ingest/video-serial.js.map +1 -1
  95. package/dist/llm/tasks/schemas.js +5 -5
  96. package/dist/llm/tasks/schemas.js.map +1 -1
  97. package/dist/output.d.ts +2 -3
  98. package/dist/output.js +72 -109
  99. package/dist/output.js.map +1 -1
  100. package/dist/usecases/changelog.d.ts +2 -2
  101. package/dist/usecases/changelog.js +28 -36
  102. package/dist/usecases/changelog.js.map +1 -1
  103. package/dist/usecases/doctor.d.ts +2 -2
  104. package/dist/usecases/doctor.js +3 -5
  105. package/dist/usecases/doctor.js.map +1 -1
  106. package/dist/usecases/ingest/command.d.ts +2 -2
  107. package/dist/usecases/ingest/command.js +22 -5
  108. package/dist/usecases/ingest/command.js.map +1 -1
  109. package/dist/usecases/ingest/pass5-extract.js +5 -4
  110. package/dist/usecases/ingest/pass5-extract.js.map +1 -1
  111. package/dist/usecases/ingest/pass5-govern.js +13 -11
  112. package/dist/usecases/ingest/pass5-govern.js.map +1 -1
  113. package/dist/usecases/ingest/pipeline.js +19 -16
  114. package/dist/usecases/ingest/pipeline.js.map +1 -1
  115. package/dist/usecases/ingest/serial-govern.js +5 -4
  116. package/dist/usecases/ingest/serial-govern.js.map +1 -1
  117. package/dist/usecases/ingest/status.d.ts +2 -2
  118. package/dist/usecases/ingest/status.js +1 -1
  119. package/dist/usecases/ingest/status.js.map +1 -1
  120. package/dist/usecases/ingest/video-pipeline.js +23 -17
  121. package/dist/usecases/ingest/video-pipeline.js.map +1 -1
  122. package/dist/usecases/ingest/view-command.d.ts +2 -2
  123. package/dist/usecases/ingest/view-command.js +7 -6
  124. package/dist/usecases/ingest/view-command.js.map +1 -1
  125. package/dist/usecases/ingest/view-server.d.ts +2 -2
  126. package/dist/usecases/ingest/view-server.js +7 -5
  127. package/dist/usecases/ingest/view-server.js.map +1 -1
  128. package/dist/usecases/script/actions.d.ts +2 -2
  129. package/dist/usecases/script/actions.js +12 -13
  130. package/dist/usecases/script/actions.js.map +1 -1
  131. package/dist/usecases/script/actor.d.ts +2 -2
  132. package/dist/usecases/script/actor.js +3 -4
  133. package/dist/usecases/script/actor.js.map +1 -1
  134. package/dist/usecases/script/actors.d.ts +2 -2
  135. package/dist/usecases/script/actors.js +5 -5
  136. package/dist/usecases/script/actors.js.map +1 -1
  137. package/dist/usecases/script/add-actor.d.ts +2 -2
  138. package/dist/usecases/script/add-episode.d.ts +2 -2
  139. package/dist/usecases/script/add-location.d.ts +2 -2
  140. package/dist/usecases/script/add-prop.d.ts +2 -2
  141. package/dist/usecases/script/alias.d.ts +2 -2
  142. package/dist/usecases/script/alias.js +6 -8
  143. package/dist/usecases/script/alias.js.map +1 -1
  144. package/dist/usecases/script/assets.d.ts +2 -2
  145. package/dist/usecases/script/assets.js +15 -7
  146. package/dist/usecases/script/assets.js.map +1 -1
  147. package/dist/usecases/script/audit-assets.d.ts +2 -2
  148. package/dist/usecases/script/audit-assets.js +12 -15
  149. package/dist/usecases/script/audit-assets.js.map +1 -1
  150. package/dist/usecases/script/command-constraints.js +17 -18
  151. package/dist/usecases/script/command-constraints.js.map +1 -1
  152. package/dist/usecases/script/context.d.ts +2 -2
  153. package/dist/usecases/script/context.js +3 -4
  154. package/dist/usecases/script/context.js.map +1 -1
  155. package/dist/usecases/script/create.d.ts +2 -2
  156. package/dist/usecases/script/create.js +3 -4
  157. package/dist/usecases/script/create.js.map +1 -1
  158. package/dist/usecases/script/delete.d.ts +2 -2
  159. package/dist/usecases/script/delete.js +9 -12
  160. package/dist/usecases/script/delete.js.map +1 -1
  161. package/dist/usecases/script/describe.d.ts +2 -2
  162. package/dist/usecases/script/describe.js +6 -8
  163. package/dist/usecases/script/describe.js.map +1 -1
  164. package/dist/usecases/script/dialogue.d.ts +2 -2
  165. package/dist/usecases/script/dialogue.js +5 -6
  166. package/dist/usecases/script/dialogue.js.map +1 -1
  167. package/dist/usecases/script/do.d.ts +2 -2
  168. package/dist/usecases/script/do.js +63 -66
  169. package/dist/usecases/script/do.js.map +1 -1
  170. package/dist/usecases/script/emotion.d.ts +2 -2
  171. package/dist/usecases/script/emotion.js +3 -3
  172. package/dist/usecases/script/emotion.js.map +1 -1
  173. package/dist/usecases/script/episodes.d.ts +2 -2
  174. package/dist/usecases/script/episodes.js +5 -5
  175. package/dist/usecases/script/episodes.js.map +1 -1
  176. package/dist/usecases/script/export-authoring.d.ts +2 -2
  177. package/dist/usecases/script/export-authoring.js +26 -29
  178. package/dist/usecases/script/export-authoring.js.map +1 -1
  179. package/dist/usecases/script/extend.d.ts +2 -2
  180. package/dist/usecases/script/extend.js +22 -18
  181. package/dist/usecases/script/extend.js.map +1 -1
  182. package/dist/usecases/script/ids.d.ts +2 -2
  183. package/dist/usecases/script/ids.js +21 -17
  184. package/dist/usecases/script/ids.js.map +1 -1
  185. package/dist/usecases/script/importance.d.ts +2 -2
  186. package/dist/usecases/script/importance.js +3 -4
  187. package/dist/usecases/script/importance.js.map +1 -1
  188. package/dist/usecases/script/insert.d.ts +2 -2
  189. package/dist/usecases/script/insert.js +8 -10
  190. package/dist/usecases/script/insert.js.map +1 -1
  191. package/dist/usecases/script/issues.d.ts +2 -2
  192. package/dist/usecases/script/issues.js +10 -2
  193. package/dist/usecases/script/issues.js.map +1 -1
  194. package/dist/usecases/script/lib.d.ts +15 -9
  195. package/dist/usecases/script/lib.js +226 -166
  196. package/dist/usecases/script/lib.js.map +1 -1
  197. package/dist/usecases/script/locations.d.ts +2 -2
  198. package/dist/usecases/script/locations.js +5 -5
  199. package/dist/usecases/script/locations.js.map +1 -1
  200. package/dist/usecases/script/merge.d.ts +2 -2
  201. package/dist/usecases/script/merge.js +9 -12
  202. package/dist/usecases/script/merge.js.map +1 -1
  203. package/dist/usecases/script/move.d.ts +2 -2
  204. package/dist/usecases/script/move.js +6 -8
  205. package/dist/usecases/script/move.js.map +1 -1
  206. package/dist/usecases/script/parenthetical.d.ts +2 -2
  207. package/dist/usecases/script/parenthetical.js +9 -12
  208. package/dist/usecases/script/parenthetical.js.map +1 -1
  209. package/dist/usecases/script/props.d.ts +2 -2
  210. package/dist/usecases/script/props.js +5 -5
  211. package/dist/usecases/script/props.js.map +1 -1
  212. package/dist/usecases/script/refs.d.ts +2 -2
  213. package/dist/usecases/script/refs.js +23 -17
  214. package/dist/usecases/script/refs.js.map +1 -1
  215. package/dist/usecases/script/rename.d.ts +2 -2
  216. package/dist/usecases/script/rename.js +6 -8
  217. package/dist/usecases/script/rename.js.map +1 -1
  218. package/dist/usecases/script/replace.d.ts +2 -2
  219. package/dist/usecases/script/replace.js +6 -8
  220. package/dist/usecases/script/replace.js.map +1 -1
  221. package/dist/usecases/script/role.d.ts +2 -2
  222. package/dist/usecases/script/role.js +3 -4
  223. package/dist/usecases/script/role.js.map +1 -1
  224. package/dist/usecases/script/scenes.d.ts +2 -2
  225. package/dist/usecases/script/scenes.js +7 -5
  226. package/dist/usecases/script/scenes.js.map +1 -1
  227. package/dist/usecases/script/script-patch.d.ts +2 -2
  228. package/dist/usecases/script/script-patch.js +95 -112
  229. package/dist/usecases/script/script-patch.js.map +1 -1
  230. package/dist/usecases/script/script-validate.d.ts +2 -2
  231. package/dist/usecases/script/script-validate.js +11 -7
  232. package/dist/usecases/script/script-validate.js.map +1 -1
  233. package/dist/usecases/script/session.js +52 -63
  234. package/dist/usecases/script/session.js.map +1 -1
  235. package/dist/usecases/script/split.d.ts +2 -2
  236. package/dist/usecases/script/split.js +6 -8
  237. package/dist/usecases/script/split.js.map +1 -1
  238. package/dist/usecases/script/state-add.d.ts +2 -2
  239. package/dist/usecases/script/state-add.js +3 -4
  240. package/dist/usecases/script/state-add.js.map +1 -1
  241. package/dist/usecases/script/state-delete.d.ts +2 -2
  242. package/dist/usecases/script/state-delete.js +3 -4
  243. package/dist/usecases/script/state-delete.js.map +1 -1
  244. package/dist/usecases/script/state-rename.d.ts +2 -2
  245. package/dist/usecases/script/state-rename.js +3 -4
  246. package/dist/usecases/script/state-rename.js.map +1 -1
  247. package/dist/usecases/script/states.d.ts +2 -2
  248. package/dist/usecases/script/states.js +54 -27
  249. package/dist/usecases/script/states.js.map +1 -1
  250. package/dist/usecases/script/summary.d.ts +2 -2
  251. package/dist/usecases/script/summary.js +21 -2
  252. package/dist/usecases/script/summary.js.map +1 -1
  253. package/dist/usecases/script/synopsis-generate.d.ts +2 -2
  254. package/dist/usecases/script/synopsis-generate.js +38 -39
  255. package/dist/usecases/script/synopsis-generate.js.map +1 -1
  256. package/dist/usecases/script/synopsis.d.ts +2 -2
  257. package/dist/usecases/script/synopsis.js +9 -12
  258. package/dist/usecases/script/synopsis.js.map +1 -1
  259. package/dist/usecases/script/transition.d.ts +2 -2
  260. package/dist/usecases/script/transition.js +3 -4
  261. package/dist/usecases/script/transition.js.map +1 -1
  262. package/dist/usecases/script/type.d.ts +2 -2
  263. package/dist/usecases/script/type.js +3 -4
  264. package/dist/usecases/script/type.js.map +1 -1
  265. package/dist/usecases/script/v4/queries.d.ts +3 -2
  266. package/dist/usecases/script/v4/queries.js +43 -6
  267. package/dist/usecases/script/v4/queries.js.map +1 -1
  268. package/dist/usecases/script/working-copy.d.ts +4 -4
  269. package/dist/usecases/script/working-copy.js +96 -92
  270. package/dist/usecases/script/working-copy.js.map +1 -1
  271. package/dist/usecases/script/worldview.d.ts +2 -2
  272. package/dist/usecases/script/worldview.js +3 -4
  273. package/dist/usecases/script/worldview.js.map +1 -1
  274. package/dist/usecases/script/write-authoring.d.ts +2 -2
  275. package/dist/usecases/script/write-authoring.js +62 -81
  276. package/dist/usecases/script/write-authoring.js.map +1 -1
  277. package/dist/usecases/update.d.ts +2 -2
  278. package/dist/usecases/update.js +32 -47
  279. package/dist/usecases/update.js.map +1 -1
  280. package/package.json +1 -1
  281. package/skills/scriptctl/SKILL.md +46 -37
  282. package/skills/scriptctl/references/atomic-edit-workflow.md +6 -6
  283. package/skills/scriptctl/references/ingest-workflow.md +20 -20
  284. package/skills/scriptctl/references/state-reference-repair.md +6 -6
  285. package/dist/help-text.d.ts +0 -2
  286. package/dist/help-text.js +0 -1144
  287. package/dist/help-text.js.map +0 -1
@@ -43,44 +43,40 @@ function assertV4PatchOperationShapes(operations) {
43
43
  const kind = strOf(operation["op"]).trim();
44
44
  const schema = V4_PATCH_OP_SCHEMA[kind];
45
45
  if (!schema) {
46
- throw new CliError("SCRIPT PATCH BLOCKED: Unknown op", "Unknown Script v4 patch operation.", {
46
+ throw new CliError("Unknown Script v4 patch operation.", {
47
47
  exitCode: EXIT_USAGE,
48
- required: ["an op listed by `scriptctl patch --schema`"],
49
- received: [`operations[${index}].op=${kind || "<missing>"}`],
50
- nextSteps: ["Run `scriptctl patch --schema` and use a supported operation."],
51
48
  errorCode: "PATCH_OP_UNKNOWN",
49
+ hint: "Run `scriptctl patch --schema` and use a supported operation.",
50
+ data: { expected: ["an op listed by `scriptctl patch --schema`"], actual: [`operations[${index}].op=${kind || "<missing>"}`] },
52
51
  });
53
52
  }
54
53
  const missing = schema.required.filter((field) => operation[field] === undefined);
55
54
  if (missing.length > 0) {
56
- throw new CliError("SCRIPT PATCH BLOCKED: Required field missing", "A Script v4 patch operation is incomplete.", {
55
+ throw new CliError("A Script v4 patch operation is incomplete.", {
57
56
  exitCode: EXIT_USAGE,
58
- required: schema.required,
59
- received: missing.map((field) => `operations[${index}].${field}=<missing>`),
60
- nextSteps: [`Run \`scriptctl patch --schema ${kind}\` and provide every required field.`],
61
57
  errorCode: "PATCH_FIELD_MISSING",
58
+ hint: `Run \`scriptctl patch --schema ${kind}\` and provide every required field.`,
59
+ data: { expected: schema.required, actual: missing.map((field) => `operations[${index}].${field}=<missing>`) },
62
60
  });
63
61
  }
64
62
  const allowed = new Set(["op", ...schema.required, ...schema.optional]);
65
63
  const unknown = Object.keys(operation).filter((field) => !allowed.has(field));
66
64
  if (unknown.length > 0) {
67
- throw new CliError("SCRIPT PATCH BLOCKED: Unknown field", "A Script v4 patch operation contains unsupported fields.", {
65
+ throw new CliError("A Script v4 patch operation contains unsupported fields.", {
68
66
  exitCode: EXIT_USAGE,
69
- required: [...allowed],
70
- received: unknown.map((field) => `operations[${index}].${field}`),
71
- nextSteps: [`Run \`scriptctl patch --schema ${kind}\` and correct or remove the unsupported fields.`],
72
67
  errorCode: "PATCH_FIELD_UNKNOWN",
68
+ hint: `Run \`scriptctl patch --schema ${kind}\` and correct or remove the unsupported fields.`,
69
+ data: { expected: [...allowed], actual: unknown.map((field) => `operations[${index}].${field}`) },
73
70
  });
74
71
  }
75
72
  const invalidTypes = Object.entries(schema.field_types).filter(([field, type]) => operation[field] !== undefined
76
73
  && !matchesV4PatchFieldType(operation[field], type));
77
74
  if (invalidTypes.length > 0) {
78
- throw new CliError("SCRIPT PATCH BLOCKED: Field type invalid", "A Script v4 patch operation contains fields with invalid JSON types.", {
75
+ throw new CliError("A Script v4 patch operation contains fields with invalid JSON types.", {
79
76
  exitCode: EXIT_USAGE,
80
- required: invalidTypes.map(([field, type]) => `operations[${index}].${field}: ${type}`),
81
- received: invalidTypes.map(([field]) => `operations[${index}].${field}: ${fieldTypeName(operation[field])}`),
82
- nextSteps: [`Run \`scriptctl patch --schema ${kind}\` and use the declared field types.`],
83
77
  errorCode: "PATCH_FIELD_TYPE_INVALID",
78
+ hint: `Run \`scriptctl patch --schema ${kind}\` and use the declared field types.`,
79
+ data: { expected: invalidTypes.map(([field, type]) => `operations[${index}].${field}: ${type}`), actual: invalidTypes.map(([field]) => `operations[${index}].${field}: ${fieldTypeName(operation[field])}`) },
84
80
  });
85
81
  }
86
82
  }
@@ -98,51 +94,43 @@ export async function commandScriptPatch(opts) {
98
94
  if (specificOp) {
99
95
  const entry = schema[specificOp];
100
96
  if (!entry) {
101
- throw new CliError("SCRIPT PATCH BLOCKED: Unknown op", "Unknown op.", {
97
+ throw new CliError(`Unknown patch operation '${specificOp}'.`, {
102
98
  exitCode: EXIT_USAGE,
103
- required: ["existing dot-style op name (e.g. asset.rename)"],
104
- received: [specificOp],
105
- nextSteps: ["Run `scriptctl patch --schema` (no value) to list all ops."],
106
99
  errorCode: "PATCH_OP_UNKNOWN",
100
+ hint: "Run `scriptctl patch --schema` (no value) to list all ops.",
101
+ data: { expected: ["existing dot-style op name (e.g. asset.rename)"], actual: [specificOp] },
107
102
  });
108
103
  }
104
+ const content = { op: specificOp, ...entry };
109
105
  const report = {
110
- title: `PATCH OP SCHEMA: ${specificOp}`,
111
- op: "patch.schema",
112
- changed: false,
113
- result: [
106
+ text: [
114
107
  `op: ${specificOp}`,
115
108
  `required: ${entry.required.join(", ") || "(none)"}`,
116
109
  `optional: ${entry.optional.join(", ") || "(none)"}`,
117
- ],
118
- body: JSON.stringify({ op: specificOp, ...entry }, null, 2),
119
- next: ["Construct a patch file with these fields and run `scriptctl patch <file>`."],
110
+ ].join("\n"),
111
+ data: { op: "patch.schema", content },
120
112
  };
121
113
  return [report, EXIT_OK];
122
114
  }
123
115
  const ops = Object.keys(schema).sort();
116
+ const lines = ops.map((name) => {
117
+ const entry = schema[name];
118
+ return `${name}: required=[${entry.required.join(",")}] optional=[${entry.optional.join(",")}]`;
119
+ });
124
120
  const report = {
125
- title: "PATCH OP SCHEMA",
126
- op: "patch.schema",
127
- changed: false,
128
- result: ops.map((name) => {
129
- const e = schema[name];
130
- return `${name}: required=[${e.required.join(",")}] optional=[${e.optional.join(",")}]`;
131
- }),
132
- body: JSON.stringify(schema, null, 2),
133
- next: ["Use `scriptctl patch --schema <op>` for a single op, or write a patch file and run `scriptctl patch <file>`."],
121
+ text: lines.join("\n"),
122
+ data: { op: "patch.schema", content: schema },
134
123
  };
135
124
  return [report, EXIT_OK];
136
125
  }
137
126
  const workspace = strOf(opts["workspace_path"] || "workspace");
138
127
  const patchPath = strOf(opts["patch"]);
139
128
  if (!patchPath) {
140
- throw new CliError("SCRIPT PATCH BLOCKED: Patch file missing", "Patch file missing.", {
129
+ throw new CliError("Patch file missing.", {
141
130
  exitCode: EXIT_USAGE,
142
- required: ["<file> positional argument"],
143
- received: ["<empty>"],
144
- nextSteps: ["Pass a patch JSON file, or use --schema to inspect op definitions."],
145
131
  errorCode: "PATCH_FILE_MISSING",
132
+ hint: "Pass a patch JSON file, or use --schema to inspect op definitions.",
133
+ data: { expected: ["<file> positional argument"], actual: ["<empty>"] },
146
134
  });
147
135
  }
148
136
  // `patch -` reads ops JSON from stdin — the machine/jq pipeline收口
@@ -151,59 +139,54 @@ export async function commandScriptPatch(opts) {
151
139
  if (patchPath === "-") {
152
140
  let raw;
153
141
  if (process.stdin.isTTY) {
154
- throw new CliError("SCRIPT PATCH BLOCKED: no stdin", "no patch JSON piped to stdin.", {
142
+ throw new CliError("no patch JSON piped to stdin.", {
155
143
  exitCode: EXIT_INPUT,
156
- required: ["piped JSON ops on stdin"],
157
- received: ["<tty, no pipe>"],
158
- nextSteps: ["Pipe ops JSON: … | scriptctl patch -"],
159
144
  errorCode: "PATCH_NOT_FOUND",
145
+ hint: "Pipe ops JSON: … | scriptctl patch -",
146
+ data: { expected: ["piped JSON ops on stdin"], actual: ["<tty, no pipe>"] },
160
147
  });
161
148
  }
162
149
  try {
163
150
  raw = fs.readFileSync(0, "utf-8");
164
151
  }
165
152
  catch {
166
- throw new CliError("SCRIPT PATCH BLOCKED: no stdin", "no patch JSON on stdin.", {
153
+ throw new CliError("no patch JSON on stdin.", {
167
154
  exitCode: EXIT_INPUT,
168
- required: ["piped JSON ops on stdin"],
169
- received: ["<no stdin>"],
170
- nextSteps: ["Pipe ops JSON: … | scriptctl patch -"],
171
155
  errorCode: "PATCH_NOT_FOUND",
156
+ hint: "Pipe ops JSON: … | scriptctl patch -",
157
+ data: { expected: ["piped JSON ops on stdin"], actual: ["<no stdin>"] },
172
158
  });
173
159
  }
174
160
  try {
175
161
  payload = JSON.parse(raw);
176
162
  }
177
163
  catch (exc) {
178
- throw new CliError("SCRIPT PATCH BLOCKED: Patch JSON invalid", "Patch JSON invalid.", {
164
+ throw new CliError("Patch JSON invalid.", {
179
165
  exitCode: EXIT_USAGE,
180
- required: ["valid JSON patch"],
181
- received: [`<stdin>: ${exc.message}`],
182
- nextSteps: ["Fix the JSON your producer emits."],
183
166
  errorCode: "PATCH_JSON_INVALID",
167
+ hint: "Fix the JSON your producer emits.",
168
+ data: { expected: ["valid JSON patch"], actual: [`<stdin>: ${exc.message}`] },
184
169
  });
185
170
  }
186
171
  }
187
172
  else {
188
173
  if (!exists(patchPath)) {
189
- throw new CliError("SCRIPT PATCH BLOCKED: Patch file not found", "Patch file not found.", {
174
+ throw new CliError("Patch file not found.", {
190
175
  exitCode: EXIT_INPUT,
191
- required: ["existing patch JSON file"],
192
- received: [patchPath],
193
- nextSteps: ["Write patch JSON and rerun, or pipe via stdin with `-`."],
194
176
  errorCode: "PATCH_NOT_FOUND",
177
+ hint: "Write patch JSON and rerun, or pipe via stdin with `-`.",
178
+ data: { expected: ["existing patch JSON file"], actual: [patchPath] },
195
179
  });
196
180
  }
197
181
  try {
198
182
  payload = readJson(patchPath);
199
183
  }
200
184
  catch (exc) {
201
- throw new CliError("SCRIPT PATCH BLOCKED: Patch JSON invalid", "Patch JSON invalid.", {
185
+ throw new CliError("Patch JSON invalid.", {
202
186
  exitCode: EXIT_USAGE,
203
- required: ["valid JSON patch"],
204
- received: [`${patchPath}: ${exc.message}`],
205
- nextSteps: ["Fix patch JSON and rerun."],
206
187
  errorCode: "PATCH_JSON_INVALID",
188
+ hint: "Fix patch JSON and rerun.",
189
+ data: { expected: ["valid JSON patch"], actual: [`${patchPath}: ${exc.message}`] },
207
190
  });
208
191
  }
209
192
  }
@@ -214,12 +197,11 @@ export async function commandScriptPatch(opts) {
214
197
  assertV4PatchOperationShapes(operations);
215
198
  }
216
199
  if (Boolean(opts["apply"]) && Boolean(opts["dry_run"])) {
217
- throw new CliError("SCRIPT PATCH BLOCKED: mode conflict", "--apply and --dry-run cannot be used together.", {
200
+ throw new CliError("--apply and --dry-run cannot be used together.", {
218
201
  exitCode: EXIT_USAGE,
219
- required: ["at most one of --apply or --dry-run"],
220
- received: ["--apply", "--dry-run"],
221
- nextSteps: ["Remove --dry-run to apply, or remove --apply and --plan to preview."],
222
202
  errorCode: "PATCH_MODE_CONFLICT",
203
+ hint: "Remove --dry-run to apply, or remove --apply and --plan to preview.",
204
+ data: { expected: ["at most one of --apply or --dry-run"], actual: ["--apply", "--dry-run"] },
223
205
  });
224
206
  }
225
207
  const apply = session.version === 4 ? Boolean(opts["apply"]) : !Boolean(opts["dry_run"]);
@@ -228,34 +210,32 @@ export async function commandScriptPatch(opts) {
228
210
  const planDigest = planned?.digest ?? null;
229
211
  const suppliedPlan = strOf(opts["plan"]).trim();
230
212
  if (session.version === 3 && suppliedPlan) {
231
- throw new CliError("SCRIPT PATCH BLOCKED: --plan is not supported for Script v3", "Script v3 patch does not use plan digests.", {
213
+ throw new CliError("Script v3 patch does not use plan digests.", {
232
214
  exitCode: EXIT_USAGE,
233
215
  errorCode: "MULTI_PLAN_USAGE_INVALID",
234
- received: [suppliedPlan],
235
- nextSteps: ["Remove --plan; use --dry-run to preview a Script v3 patch."],
216
+ hint: "Remove --plan; use --dry-run to preview a Script v3 patch.",
217
+ data: { actual: [suppliedPlan] },
236
218
  });
237
219
  }
238
220
  if (session.version === 4 && apply && !suppliedPlan) {
239
- throw new CliError("SCRIPT PATCH BLOCKED: plan required", "A Script v4 patch requires its dry-run plan digest.", {
221
+ throw new CliError("A Script v4 patch requires its dry-run plan digest.", {
240
222
  exitCode: EXIT_USAGE,
241
223
  errorCode: "MULTI_PLAN_REQUIRED",
242
- required: [planDigest ?? ""],
243
- received: ["<missing>"],
224
+ data: { expected: [planDigest ?? ""], actual: ["<missing>"] },
244
225
  });
245
226
  }
246
227
  if (session.version === 4 && apply && suppliedPlan !== planDigest) {
247
- throw new CliError("SCRIPT PATCH BLOCKED: plan mismatch", "The supplied digest does not match the current operations.", {
228
+ throw new CliError("The supplied digest does not match the current operations.", {
248
229
  exitCode: EXIT_INPUT,
249
230
  errorCode: "MULTI_PLAN_MISMATCH",
250
- required: [planDigest ?? ""],
251
- received: [suppliedPlan],
231
+ data: { expected: [planDigest ?? ""], actual: [suppliedPlan] },
252
232
  });
253
233
  }
254
234
  if (session.version === 4 && dryRun && suppliedPlan) {
255
- throw new CliError("SCRIPT PATCH BLOCKED: --plan without --apply", "--plan is only valid with --apply.", {
235
+ throw new CliError("--plan is only valid with --apply.", {
256
236
  exitCode: EXIT_USAGE,
257
237
  errorCode: "MULTI_PLAN_USAGE_INVALID",
258
- received: [suppliedPlan],
238
+ data: { actual: [suppliedPlan] },
259
239
  });
260
240
  }
261
241
  const applied = planned?.applied
@@ -277,28 +257,29 @@ export async function commandScriptPatch(opts) {
277
257
  const legacyIssueLines = legacyValidation === null
278
258
  ? []
279
259
  : summarizeIssues(asList(legacyValidation["issues"]));
260
+ const issues = plannedIssueLines ?? legacyIssueLines;
261
+ const hint = passed
262
+ ? planDigest
263
+ ? `Run again with --apply --plan ${planDigest} to commit.`
264
+ : "Run again without --dry-run to commit."
265
+ : "Resolve validation issues before committing.";
266
+ const summary = `${applied.length} op(s) would apply; validation would ${passed ? "pass" : "need repair"}; no write`;
280
267
  const report = {
281
- title: passed ? "SCRIPT PATCH DRY-RUN PASSED" : "SCRIPT PATCH DRY-RUN: Validation needs repair",
282
- op: "script.patch.dry-run",
283
- changed: false,
284
- warnings: passed
285
- ? []
286
- : plannedIssueLines ?? legacyIssueLines,
287
- result: [`${applied.length} op(s) would apply; validation would ${passed ? "pass" : "need repair"}; no write performed`],
288
- issues: plannedIssueLines ?? legacyIssueLines,
289
- artifacts: [session.artifactLabel],
290
- ...(planDigest ? {
291
- baseline: session.baselineHash,
292
- plan_digest: planDigest,
293
- operations,
294
- targets: planned?.plan.targets,
295
- plan: planned?.plan,
296
- } : {}),
297
- next: passed
298
- ? [planDigest
299
- ? `Re-run with --apply --plan ${planDigest} to commit.`
300
- : "Re-run without --dry-run to commit."]
301
- : ["Resolve validation issues before committing."],
268
+ text: [summary, ...issues, hint].join("\n"),
269
+ data: {
270
+ op: "script.patch.dry-run",
271
+ changed: false,
272
+ matched: applied.length,
273
+ issues,
274
+ script_path: session.artifactLabel,
275
+ ...(planDigest ? {
276
+ baseline: session.baselineHash,
277
+ plan_digest: planDigest,
278
+ operations,
279
+ targets: planned?.plan.targets,
280
+ plan: planned?.plan,
281
+ } : {}),
282
+ },
302
283
  };
303
284
  return [report, passed ? EXIT_OK : EXIT_NEEDS_AGENT];
304
285
  }
@@ -308,23 +289,25 @@ export async function commandScriptPatch(opts) {
308
289
  const passed = Boolean(validation["passed"]);
309
290
  const rev = session.remote ? `; rev ${newRevision}` : "";
310
291
  const resultLine = `${applied.length} op(s) applied${rev}; validation ${passed ? "passed" : "needs repair"}`;
292
+ const issues = summarizeIssues(asList(validation["issues"]));
311
293
  const report = {
312
- title: passed ? "SCRIPT PATCH APPLIED" : "SCRIPT PATCH APPLIED: Validation needs repair",
313
- op: applied.length === 1 ? applied[0] : "script.patch",
314
- changed: applied.length > 0,
315
- ...(session.remote ? { idempotent } : {}),
316
- warnings: passed ? [] : summarizeIssues(asList(validation["issues"])),
317
- result: [resultLine],
318
- issues: summarizeIssues(asList(validation["issues"])),
319
- artifacts: [session.artifactLabel],
320
- ...(planDigest ? {
321
- baseline: session.baselineHash,
322
- plan_digest: planDigest,
323
- operations,
324
- targets: planned?.plan.targets,
325
- plan: planned?.plan,
326
- } : {}),
327
- next: passed ? undefined : ["Inspect issues and apply another patch."],
294
+ text: [resultLine, ...issues].join("\n"),
295
+ data: {
296
+ op: applied.length === 1 ? applied[0] : "script.patch",
297
+ changed: applied.length > 0,
298
+ revision: session.remote ? newRevision : undefined,
299
+ idempotent: session.remote ? idempotent : undefined,
300
+ validation,
301
+ issues,
302
+ script_path: session.artifactLabel,
303
+ ...(planDigest ? {
304
+ baseline: session.baselineHash,
305
+ plan_digest: planDigest,
306
+ operations,
307
+ targets: planned?.plan.targets,
308
+ plan: planned?.plan,
309
+ } : {}),
310
+ },
328
311
  };
329
312
  return [report, passed ? EXIT_OK : EXIT_NEEDS_AGENT];
330
313
  }
@@ -1 +1 @@
1
- {"version":3,"file":"script-patch.js","sourceRoot":"","sources":["../../../src/usecases/script/script-patch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"script-patch.js","sourceRoot":"","sources":["../../../src/usecases/script/script-patch.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { type Report } from "../../common.js";
1
+ import { type CommandOutput } from "../../common.js";
2
2
  import { type Dict } from "../../domain/script/shared.js";
3
- export declare function commandScriptValidate(opts: Dict): Promise<[Report, number]>;
3
+ export declare function commandScriptValidate(opts: Dict): Promise<[CommandOutput, number]>;
@@ -9,14 +9,18 @@ export async function commandScriptValidate(opts) {
9
9
  await syncValidationResult(session, validation);
10
10
  const stats = validation["stats"] ?? {};
11
11
  const passed = Boolean(validation["passed"]);
12
+ const issues = summarizeIssues(asList(validation["issues"]));
13
+ const summary = `${stats["episodes"] ?? 0} episodes / ${stats["scenes"] ?? 0} scenes / ${stats["actions"] ?? 0} actions / ${stats["speakers"] ?? 0} speakers`;
12
14
  const report = {
13
- title: passed ? "SCRIPT VALIDATE PASSED" : "SCRIPT VALIDATE NEEDS REPAIR",
14
- op: "script.validate",
15
- changed: false,
16
- result: [`${stats["episodes"] ?? 0} episodes / ${stats["scenes"] ?? 0} scenes / ${stats["actions"] ?? 0} actions / ${stats["speakers"] ?? 0} speakers`],
17
- issues: summarizeIssues(asList(validation["issues"])),
18
- artifacts: [session.artifactLabel],
19
- next: passed ? undefined : ["Inspect issues and apply a script patch."],
15
+ text: [summary, ...issues].join("\n"),
16
+ data: {
17
+ op: "script.validate",
18
+ changed: false,
19
+ passed,
20
+ stats,
21
+ issues: validation["issues"],
22
+ script_path: session.artifactLabel,
23
+ },
20
24
  };
21
25
  return [report, passed ? EXIT_OK : EXIT_NEEDS_AGENT];
22
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"script-validate.js","sourceRoot":"","sources":["../../../src/usecases/script/script-validate.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,gBAAgB,EAChB,OAAO,GAWR,MAAM,iBAAiB,CAAC;AA2BzB,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EACL,MAAM,EAIN,KAAK,GACN,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,iBAAiB,EAAE,eAAe,EAAqB,oBAAoB,GAE5E,MAAM,cAAc,CAAC;AAKtB,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAAU;IACpD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,WAAW,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAChD,MAAM,KAAK,GAAI,UAAU,CAAC,OAAO,CAAU,IAAI,EAAE,CAAC;IAClD,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAW;QACrB,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,8BAA8B;QACzE,EAAE,EAAE,iBAAiB;QACrB,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;QACvJ,MAAM,EAAE,eAAe,CAAC,MAAM,CAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3D,SAAS,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC;QAClC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,0CAA0C,CAAC;KACxE,CAAC;IACF,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"script-validate.js","sourceRoot":"","sources":["../../../src/usecases/script/script-validate.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,gBAAgB,EAChB,OAAO,GAWR,MAAM,iBAAiB,CAAC;AA2BzB,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,OAAO,EACL,MAAM,EAIN,KAAK,GACN,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,iBAAiB,EAAE,eAAe,EAAqB,oBAAoB,GAE5E,MAAM,cAAc,CAAC;AAKtB,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAAU;IACpD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,WAAW,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAChD,MAAM,KAAK,GAAI,UAAU,CAAC,OAAO,CAAU,IAAI,EAAE,CAAC;IAClD,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;IAC9J,MAAM,MAAM,GAAkB;QAC5B,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACrC,IAAI,EAAE;YACJ,EAAE,EAAE,iBAAiB;YACrB,OAAO,EAAE,KAAK;YACd,MAAM;YACN,KAAK;YACL,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC;YAC5B,WAAW,EAAE,OAAO,CAAC,aAAa;SACnC;KACF,CAAC;IACF,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;AACvD,CAAC"}