@lingjingai/scriptctl 0.20.0 → 0.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (208) hide show
  1. package/dist/cli.js +105 -11
  2. package/dist/cli.js.map +1 -1
  3. package/dist/common.d.ts +1 -0
  4. package/dist/common.js.map +1 -1
  5. package/dist/domain/script/address.d.ts +30 -0
  6. package/dist/domain/script/address.js +141 -0
  7. package/dist/domain/script/address.js.map +1 -0
  8. package/dist/domain/script/lookups.d.ts +33 -0
  9. package/dist/domain/script/lookups.js +309 -0
  10. package/dist/domain/script/lookups.js.map +1 -0
  11. package/dist/domain/script/patch/apply.d.ts +4 -0
  12. package/dist/domain/script/patch/apply.js +38 -0
  13. package/dist/domain/script/patch/apply.js.map +1 -0
  14. package/dist/domain/script/patch/helpers.d.ts +11 -0
  15. package/dist/domain/script/patch/helpers.js +141 -0
  16. package/dist/domain/script/patch/helpers.js.map +1 -0
  17. package/dist/domain/script/patch/ops-action.d.ts +12 -0
  18. package/dist/domain/script/patch/ops-action.js +371 -0
  19. package/dist/domain/script/patch/ops-action.js.map +1 -0
  20. package/dist/domain/script/patch/ops-asset.d.ts +13 -0
  21. package/dist/domain/script/patch/ops-asset.js +363 -0
  22. package/dist/domain/script/patch/ops-asset.js.map +1 -0
  23. package/dist/domain/script/patch/ops-dialogue.d.ts +5 -0
  24. package/dist/domain/script/patch/ops-dialogue.js +233 -0
  25. package/dist/domain/script/patch/ops-dialogue.js.map +1 -0
  26. package/dist/domain/script/patch/ops-meta.d.ts +3 -0
  27. package/dist/domain/script/patch/ops-meta.js +47 -0
  28. package/dist/domain/script/patch/ops-meta.js.map +1 -0
  29. package/dist/domain/script/patch/ops-scene.d.ts +6 -0
  30. package/dist/domain/script/patch/ops-scene.js +345 -0
  31. package/dist/domain/script/patch/ops-scene.js.map +1 -0
  32. package/dist/domain/script/patch/ops-state.d.ts +8 -0
  33. package/dist/domain/script/patch/ops-state.js +146 -0
  34. package/dist/domain/script/patch/ops-state.js.map +1 -0
  35. package/dist/domain/script/patch/registry.d.ts +2 -0
  36. package/dist/domain/script/patch/registry.js +50 -0
  37. package/dist/domain/script/patch/registry.js.map +1 -0
  38. package/dist/domain/script/patch/types.d.ts +10 -0
  39. package/dist/domain/script/patch/types.js +2 -0
  40. package/dist/domain/script/patch/types.js.map +1 -0
  41. package/dist/domain/script/refs.d.ts +4 -0
  42. package/dist/domain/script/refs.js +152 -0
  43. package/dist/domain/script/refs.js.map +1 -0
  44. package/dist/domain/script/schema.d.ts +6 -0
  45. package/dist/domain/script/schema.js +53 -0
  46. package/dist/domain/script/schema.js.map +1 -0
  47. package/dist/domain/script/selector.d.ts +45 -0
  48. package/dist/domain/script/selector.js +187 -0
  49. package/dist/domain/script/selector.js.map +1 -0
  50. package/dist/domain/script/shared.d.ts +15 -0
  51. package/dist/domain/script/shared.js +37 -0
  52. package/dist/domain/script/shared.js.map +1 -0
  53. package/dist/domain/script/validate.d.ts +22 -0
  54. package/dist/domain/script/validate.js +844 -0
  55. package/dist/domain/script/validate.js.map +1 -0
  56. package/dist/help-text.js +33 -8
  57. package/dist/help-text.js.map +1 -1
  58. package/dist/infra/script-output-store.d.ts +46 -10
  59. package/dist/infra/script-output-store.js +83 -11
  60. package/dist/infra/script-output-store.js.map +1 -1
  61. package/dist/output.d.ts +1 -1
  62. package/dist/output.js +11 -1
  63. package/dist/output.js.map +1 -1
  64. package/dist/usecases/direct.js +1 -1
  65. package/dist/usecases/direct.js.map +1 -1
  66. package/dist/usecases/doctor.js +32 -22
  67. package/dist/usecases/doctor.js.map +1 -1
  68. package/dist/usecases/parse.js +10 -3
  69. package/dist/usecases/parse.js.map +1 -1
  70. package/dist/usecases/script/actions.d.ts +3 -0
  71. package/dist/usecases/script/actions.js +71 -0
  72. package/dist/usecases/script/actions.js.map +1 -0
  73. package/dist/usecases/script/actor.d.ts +3 -0
  74. package/dist/usecases/script/actor.js +27 -0
  75. package/dist/usecases/script/actor.js.map +1 -0
  76. package/dist/usecases/script/actors.d.ts +3 -0
  77. package/dist/usecases/script/actors.js +15 -0
  78. package/dist/usecases/script/actors.js.map +1 -0
  79. package/dist/usecases/script/add-actor.d.ts +3 -0
  80. package/dist/usecases/script/add-actor.js +13 -0
  81. package/dist/usecases/script/add-actor.js.map +1 -0
  82. package/dist/usecases/script/add-episode.d.ts +3 -0
  83. package/dist/usecases/script/add-episode.js +9 -0
  84. package/dist/usecases/script/add-episode.js.map +1 -0
  85. package/dist/usecases/script/add-location.d.ts +3 -0
  86. package/dist/usecases/script/add-location.js +11 -0
  87. package/dist/usecases/script/add-location.js.map +1 -0
  88. package/dist/usecases/script/add-prop.d.ts +3 -0
  89. package/dist/usecases/script/add-prop.js +11 -0
  90. package/dist/usecases/script/add-prop.js.map +1 -0
  91. package/dist/usecases/script/add-speaker.d.ts +3 -0
  92. package/dist/usecases/script/add-speaker.js +22 -0
  93. package/dist/usecases/script/add-speaker.js.map +1 -0
  94. package/dist/usecases/script/alias.d.ts +3 -0
  95. package/dist/usecases/script/alias.js +40 -0
  96. package/dist/usecases/script/alias.js.map +1 -0
  97. package/dist/usecases/script/assets.d.ts +3 -0
  98. package/dist/usecases/script/assets.js +21 -0
  99. package/dist/usecases/script/assets.js.map +1 -0
  100. package/dist/usecases/script/context.d.ts +3 -0
  101. package/dist/usecases/script/context.js +20 -0
  102. package/dist/usecases/script/context.js.map +1 -0
  103. package/dist/usecases/script/create.d.ts +3 -0
  104. package/dist/usecases/script/create.js +67 -0
  105. package/dist/usecases/script/create.js.map +1 -0
  106. package/dist/usecases/script/delete.d.ts +3 -0
  107. package/dist/usecases/script/delete.js +79 -0
  108. package/dist/usecases/script/delete.js.map +1 -0
  109. package/dist/usecases/script/describe.d.ts +3 -0
  110. package/dist/usecases/script/describe.js +31 -0
  111. package/dist/usecases/script/describe.js.map +1 -0
  112. package/dist/usecases/script/dialogue.d.ts +3 -0
  113. package/dist/usecases/script/dialogue.js +28 -0
  114. package/dist/usecases/script/dialogue.js.map +1 -0
  115. package/dist/usecases/script/do.d.ts +3 -0
  116. package/dist/usecases/script/do.js +130 -0
  117. package/dist/usecases/script/do.js.map +1 -0
  118. package/dist/usecases/script/episodes.d.ts +3 -0
  119. package/dist/usecases/script/episodes.js +36 -0
  120. package/dist/usecases/script/episodes.js.map +1 -0
  121. package/dist/usecases/script/export.d.ts +3 -0
  122. package/dist/usecases/script/export.js +117 -0
  123. package/dist/usecases/script/export.js.map +1 -0
  124. package/dist/usecases/script/insert.d.ts +3 -0
  125. package/dist/usecases/script/insert.js +87 -0
  126. package/dist/usecases/script/insert.js.map +1 -0
  127. package/dist/usecases/script/issues.d.ts +3 -0
  128. package/dist/usecases/script/issues.js +27 -0
  129. package/dist/usecases/script/issues.js.map +1 -0
  130. package/dist/usecases/script/lib.d.ts +77 -0
  131. package/dist/usecases/script/lib.js +849 -0
  132. package/dist/usecases/script/lib.js.map +1 -0
  133. package/dist/usecases/script/locations.d.ts +3 -0
  134. package/dist/usecases/script/locations.js +15 -0
  135. package/dist/usecases/script/locations.js.map +1 -0
  136. package/dist/usecases/script/merge.d.ts +3 -0
  137. package/dist/usecases/script/merge.js +43 -0
  138. package/dist/usecases/script/merge.js.map +1 -0
  139. package/dist/usecases/script/move.d.ts +3 -0
  140. package/dist/usecases/script/move.js +33 -0
  141. package/dist/usecases/script/move.js.map +1 -0
  142. package/dist/usecases/script/overlap.d.ts +3 -0
  143. package/dist/usecases/script/overlap.js +21 -0
  144. package/dist/usecases/script/overlap.js.map +1 -0
  145. package/dist/usecases/script/props.d.ts +3 -0
  146. package/dist/usecases/script/props.js +15 -0
  147. package/dist/usecases/script/props.js.map +1 -0
  148. package/dist/usecases/script/refs.d.ts +3 -0
  149. package/dist/usecases/script/refs.js +61 -0
  150. package/dist/usecases/script/refs.js.map +1 -0
  151. package/dist/usecases/script/rename.d.ts +3 -0
  152. package/dist/usecases/script/rename.js +17 -0
  153. package/dist/usecases/script/rename.js.map +1 -0
  154. package/dist/usecases/script/replace.d.ts +3 -0
  155. package/dist/usecases/script/replace.js +35 -0
  156. package/dist/usecases/script/replace.js.map +1 -0
  157. package/dist/usecases/script/role.d.ts +3 -0
  158. package/dist/usecases/script/role.js +17 -0
  159. package/dist/usecases/script/role.js.map +1 -0
  160. package/dist/usecases/script/scenes.d.ts +3 -0
  161. package/dist/usecases/script/scenes.js +45 -0
  162. package/dist/usecases/script/scenes.js.map +1 -0
  163. package/dist/usecases/script/script-patch.d.ts +3 -0
  164. package/dist/usecases/script/script-patch.js +187 -0
  165. package/dist/usecases/script/script-patch.js.map +1 -0
  166. package/dist/usecases/script/script-validate.d.ts +3 -0
  167. package/dist/usecases/script/script-validate.js +30 -0
  168. package/dist/usecases/script/script-validate.js.map +1 -0
  169. package/dist/usecases/script/session.d.ts +56 -0
  170. package/dist/usecases/script/session.js +568 -0
  171. package/dist/usecases/script/session.js.map +1 -0
  172. package/dist/usecases/script/speakers.d.ts +3 -0
  173. package/dist/usecases/script/speakers.js +28 -0
  174. package/dist/usecases/script/speakers.js.map +1 -0
  175. package/dist/usecases/script/split.d.ts +3 -0
  176. package/dist/usecases/script/split.js +37 -0
  177. package/dist/usecases/script/split.js.map +1 -0
  178. package/dist/usecases/script/state-add.d.ts +3 -0
  179. package/dist/usecases/script/state-add.js +23 -0
  180. package/dist/usecases/script/state-add.js.map +1 -0
  181. package/dist/usecases/script/state-change.d.ts +3 -0
  182. package/dist/usecases/script/state-change.js +24 -0
  183. package/dist/usecases/script/state-change.js.map +1 -0
  184. package/dist/usecases/script/state-delete.d.ts +3 -0
  185. package/dist/usecases/script/state-delete.js +23 -0
  186. package/dist/usecases/script/state-delete.js.map +1 -0
  187. package/dist/usecases/script/state-rename.d.ts +3 -0
  188. package/dist/usecases/script/state-rename.js +17 -0
  189. package/dist/usecases/script/state-rename.js.map +1 -0
  190. package/dist/usecases/script/summary.d.ts +3 -0
  191. package/dist/usecases/script/summary.js +45 -0
  192. package/dist/usecases/script/summary.js.map +1 -0
  193. package/dist/usecases/script/transition.d.ts +3 -0
  194. package/dist/usecases/script/transition.js +24 -0
  195. package/dist/usecases/script/transition.js.map +1 -0
  196. package/dist/usecases/script/type.d.ts +3 -0
  197. package/dist/usecases/script/type.js +24 -0
  198. package/dist/usecases/script/type.js.map +1 -0
  199. package/dist/usecases/script/worldview.d.ts +3 -0
  200. package/dist/usecases/script/worldview.js +18 -0
  201. package/dist/usecases/script/worldview.js.map +1 -0
  202. package/package.json +1 -1
  203. package/dist/domain/script-core.d.ts +0 -78
  204. package/dist/domain/script-core.js +0 -3026
  205. package/dist/domain/script-core.js.map +0 -1
  206. package/dist/usecases/script.d.ts +0 -67
  207. package/dist/usecases/script.js +0 -2348
  208. package/dist/usecases/script.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../src/domain/script/validate.ts"],"names":[],"mappings":"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"}
package/dist/help-text.js CHANGED
@@ -22,6 +22,10 @@ Query (plural-noun)
22
22
  - episodes per-episode line: scenes, actions, chars
23
23
  - scenes per-scene line with asset names; filters: --in / --has-actor / --has-location / --has-prop
24
24
  - actions per-action line; filters: --in / --grep / --type / --actor / --speaker / --has / --context
25
+
26
+ --in accepts a multi-region selector: comma-separated regions, each a point or
27
+ a lo..hi range, e.g. --in "ep_003..ep_007,ep_010,ep_012/scn_001..ep_012/scn_004".
28
+ episodes / scenes also accept --in. Range endpoints must be the same kind.
25
29
  - actors / locations / props / assets / speakers asset queries (kind-scoped or unified)
26
30
  - issues current validation issues (completeness gaps are warnings, not errors)
27
31
  - refs <addr> reverse lookup: state / asset / speaker → reference sites
@@ -34,11 +38,20 @@ Create + add entities (build bottom-up from an empty script)
34
38
  - add-prop <name> [--id X] [--description X]
35
39
  - add-episode [--id ep_NNN] [--title X] append an empty episode; then insert scenes/actions
36
40
 
37
- Edit content
38
- - replace <at> --from X [--to X] [--all] literal substring replace in action.content
41
+ Edit content (single address, OR a selection to sweep many — see Selection)
42
+ - replace <at> --from X [--to X] [--all] [--regex] literal (or --regex) replace in action.content
39
43
  - type <at> <dialogue|action|inner_thought> action.type.set
40
44
  - actor <at> <actor_id|none> action.actor.set
41
45
 
46
+ Selection (the SAME flags read and write):
47
+ - scope: --in <selector> ep_003..ep_007 | ep/scn ranges | comma-joined regions | '*' = whole script
48
+ - filter: --type X --actor X --speaker X --grep /re/ --has state-changes|transition|lines
49
+ - replace/type/actor/state-change/transition accept a selection instead of <at>:
50
+ they sweep every matched action. DEFAULT is a DRY-RUN (reports blast radius,
51
+ writes nothing); add --apply to commit. e.g.
52
+ replace --in '*' --regex --from '^\s*\[[^\]]*\]\s*' --to '' --apply
53
+ actor --in ep_003..ep_007 --speaker spk_001 act_009 --apply
54
+
42
55
  Edit structure (multipolar; address format dispatches)
43
56
  - insert <addr> ... action.insert (ep/scn) or scene.insert (ep)
44
57
  - delete <addr> [--strategy replace|remove] [--force] action / scene / asset / speaker
@@ -66,8 +79,10 @@ Dialogue / speaker
66
79
  - overlap <at> --line "spk:text" [--line ...]
67
80
  - add-speaker --kind X --name Y [--source-id X] [--voice-desc X] [--speaker-id X]
68
81
 
69
- Patch (batch transaction)
70
- - patch <file> [--schema] [--dry-run] apply multi-op JSON; positional file
82
+ Heterogeneous transaction
83
+ - do [file|-] [--dry-run|--apply] run a verb script (one CLI verb per line,
84
+ '-' = stdin) as one all-or-nothing transaction
85
+ - patch [file|-] [--schema] [--dry-run] apply multi-op JSON ops (machine/jq path); '-' = stdin
71
86
 
72
87
  Doctor
73
88
  - doctor Check CLI runtime, dependencies, env, and storage.
@@ -355,10 +370,18 @@ Usage
355
370
  - scriptctl summary [options]
356
371
 
357
372
  Target selection (applies to every query / edit verb)
358
- - (default) DB-backed final script (project group).
359
- - --draft Edit the direct intermediate draft instead of the DB script.
360
- - --project-group-no Project group no. Default: SANDBOX_PROJECT_GROUP_NO
361
- - --script-path Advanced: a named local script JSON (general escape hatch).
373
+ - --script-path A named local script JSON file. Read/write it directly,
374
+ no store, no revision point at any number of files to
375
+ compare or edit multiple scripts side by side.
376
+ - --remote Read/write the project DB (project group). Pairs with
377
+ --project-group-no.
378
+ - --local Read/write the conventional local store (output/ dir).
379
+ - --draft Edit the direct intermediate draft (script.initial.json).
380
+ - --project-group-no Project group no (implies remote). Default: SANDBOX_PROJECT_GROUP_NO.
381
+ - (inferred remote) When SANDBOX_PROJECT_GROUP_NO is set (the sandbox injects it)
382
+ a bare command auto-targets that project's DB — no flag needed.
383
+ - (no target) ERROR. Off-sandbox with no flag and no project group, the CLI
384
+ is unbound and refuses to guess. Pick a target above.
362
385
 
363
386
  Options
364
387
  - --workspace-path Workspace directory. Default: workspace
@@ -377,6 +400,7 @@ Usage
377
400
 
378
401
  Options
379
402
  - --id <ep_id> Filter to one episode.
403
+ - --in <selector> Multi-region selector, e.g. "ep_003..ep_007,ep_010".
380
404
  - --min-chars <n> Only episodes with total chars >= N.
381
405
  - --max-chars <n> Only episodes with total chars <= N.
382
406
  - --draft / --project-group-no / --workspace-path / --json / --help
@@ -388,6 +412,7 @@ Examples
388
412
  - scriptctl episodes
389
413
  - scriptctl episodes --min-chars 1000
390
414
  - scriptctl episodes --id ep_007
415
+ - scriptctl episodes --in "ep_003..ep_007"
391
416
  `,
392
417
  ],
393
418
  [
@@ -1 +1 @@
1
- {"version":3,"file":"help-text.js","sourceRoot":"","sources":["../src/help-text.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"help-text.js","sourceRoot":"","sources":["../src/help-text.ts"],"names":[],"mappings":"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"}
@@ -51,17 +51,53 @@ export interface ScriptOutputStore {
51
51
  replaceScript(opts: ReplaceScriptOptions): Promise<Record<string, unknown>>;
52
52
  saveValidationResult(opts: SaveValidationOptions): Promise<Record<string, unknown>>;
53
53
  }
54
+ export type OutputMode = "local" | "remote";
54
55
  /**
55
- * Single source of truth for `SCRIPTCTL_OUTPUT_MODE` parsing. Returns:
56
- * - mode: resolved mode (unrecognized values fall back to "remote")
57
- * - raw: the trimmed lower-cased env value, or null when unset
58
- * - recognized: true if the env is unset OR matches a known token
56
+ * Single source of truth for output-target resolution. The CLI core is
57
+ * UNBOUND: a bare invocation with no per-call flag and no `SCRIPTCTL_OUTPUT_MODE`
58
+ * env resolves to `mode: null` (the caller then errors) rather than silently
59
+ * defaulting to the remote gateway. "Where does this write land" must always be
60
+ * an explicit decision — never inferred from ambient gateway credentials.
59
61
  *
60
- * Callers should always use `.mode` for routing; `.recognized` exists so
61
- * `doctor` can warn users about typos ("SCRIPTCTL_OUTPUT_MODE=loca").
62
+ * Precedence: per-call flag (`--remote` / `--local`) > `SCRIPTCTL_OUTPUT_MODE`
63
+ * env (an explicit binding) > a project group in scope (`SANDBOX_PROJECT_GROUP_NO`
64
+ * env, which the sandbox injects, or a `--project-group-no` flag → infer remote)
65
+ * > none.
66
+ *
67
+ * The project-group inference is what keeps the sandbox zero-config: the backend
68
+ * already injects `SANDBOX_PROJECT_GROUP_NO`, so a bare command there resolves to
69
+ * remote without any extra binding. A dev box without that var stays unbound. A
70
+ * *typo* in `SCRIPTCTL_OUTPUT_MODE` is "explicit but broken" → it errors rather
71
+ * than falling through to inference, so a misconfiguration isn't silently masked.
72
+ *
73
+ * Returns:
74
+ * - mode: "local" | "remote" | null (null = unresolved → caller errors)
75
+ * - conflict: both `--remote` and `--local` were passed (mutually exclusive)
76
+ *
77
+ * Pure (never throws). `resolveOutputModeOrThrow` wraps it with the CliError
78
+ * contract so the conflict / no-target handling lives in exactly one place.
62
79
  */
63
- export declare function resolveOutputMode(): {
64
- mode: "local" | "remote";
65
- raw: string | null;
66
- recognized: boolean;
80
+ export declare function resolveOutputMode(flags?: {
81
+ remote?: unknown;
82
+ local?: unknown;
83
+ projectGroupNo?: unknown;
84
+ }): {
85
+ mode: OutputMode | null;
86
+ conflict: boolean;
67
87
  };
88
+ /**
89
+ * Resolve the store mode or throw the canonical CliError. Single source of truth
90
+ * for the "where does a STORE write land" contract, shared by every store
91
+ * builder (scriptOutputClient, parse's makeOutputStore, commandExport, …):
92
+ * - `--remote` + `--local` → TARGET_FLAG_CONFLICT
93
+ * - nothing resolvable → SCRIPT_NO_TARGET (the CLI is unbound; refuse
94
+ * to guess — names only public flags, never the
95
+ * env var, to keep the mode concept out of
96
+ * agent-facing output)
97
+ * Returns a non-null OutputMode on success.
98
+ */
99
+ export declare function resolveOutputModeOrThrow(flags?: {
100
+ remote?: unknown;
101
+ local?: unknown;
102
+ projectGroupNo?: unknown;
103
+ }): OutputMode;
@@ -1,3 +1,4 @@
1
+ import { CliError, EXIT_INPUT, EXIT_USAGE } from "../common.js";
1
2
  export class ScriptOutputApiError extends Error {
2
3
  status;
3
4
  code;
@@ -13,20 +14,91 @@ export class ScriptOutputApiError extends Error {
13
14
  }
14
15
  }
15
16
  /**
16
- * Single source of truth for `SCRIPTCTL_OUTPUT_MODE` parsing. Returns:
17
- * - mode: resolved mode (unrecognized values fall back to "remote")
18
- * - raw: the trimmed lower-cased env value, or null when unset
19
- * - recognized: true if the env is unset OR matches a known token
17
+ * Single source of truth for output-target resolution. The CLI core is
18
+ * UNBOUND: a bare invocation with no per-call flag and no `SCRIPTCTL_OUTPUT_MODE`
19
+ * env resolves to `mode: null` (the caller then errors) rather than silently
20
+ * defaulting to the remote gateway. "Where does this write land" must always be
21
+ * an explicit decision — never inferred from ambient gateway credentials.
20
22
  *
21
- * Callers should always use `.mode` for routing; `.recognized` exists so
22
- * `doctor` can warn users about typos ("SCRIPTCTL_OUTPUT_MODE=loca").
23
+ * Precedence: per-call flag (`--remote` / `--local`) > `SCRIPTCTL_OUTPUT_MODE`
24
+ * env (an explicit binding) > a project group in scope (`SANDBOX_PROJECT_GROUP_NO`
25
+ * env, which the sandbox injects, or a `--project-group-no` flag → infer remote)
26
+ * > none.
27
+ *
28
+ * The project-group inference is what keeps the sandbox zero-config: the backend
29
+ * already injects `SANDBOX_PROJECT_GROUP_NO`, so a bare command there resolves to
30
+ * remote without any extra binding. A dev box without that var stays unbound. A
31
+ * *typo* in `SCRIPTCTL_OUTPUT_MODE` is "explicit but broken" → it errors rather
32
+ * than falling through to inference, so a misconfiguration isn't silently masked.
33
+ *
34
+ * Returns:
35
+ * - mode: "local" | "remote" | null (null = unresolved → caller errors)
36
+ * - conflict: both `--remote` and `--local` were passed (mutually exclusive)
37
+ *
38
+ * Pure (never throws). `resolveOutputModeOrThrow` wraps it with the CliError
39
+ * contract so the conflict / no-target handling lives in exactly one place.
23
40
  */
24
- export function resolveOutputMode() {
41
+ export function resolveOutputMode(flags) {
42
+ const remoteFlag = Boolean(flags?.remote);
43
+ const localFlag = Boolean(flags?.local);
44
+ if (remoteFlag && localFlag)
45
+ return { mode: null, conflict: true };
46
+ if (remoteFlag)
47
+ return { mode: "remote", conflict: false };
48
+ if (localFlag)
49
+ return { mode: "local", conflict: false };
25
50
  const raw = (process.env.SCRIPTCTL_OUTPUT_MODE ?? "").trim().toLowerCase();
26
- if (raw === "")
27
- return { mode: "remote", raw: null, recognized: true };
28
51
  if (raw === "local" || raw === "remote")
29
- return { mode: raw, raw, recognized: true };
30
- return { mode: "remote", raw, recognized: false };
52
+ return { mode: raw, conflict: false };
53
+ if (raw !== "") {
54
+ // Unrecognized non-empty value (a typo like "loca"): explicit but broken —
55
+ // error rather than silently routing anywhere (including via inference).
56
+ return { mode: null, conflict: false };
57
+ }
58
+ // `SCRIPTCTL_OUTPUT_MODE` unset: infer remote when a project group is in scope.
59
+ // The presence of a project group identifier is a strong, specific signal of
60
+ // remote intent (the sandbox marker / an explicit `--project-group-no`), unlike
61
+ // generic ambient gateway credentials which must never imply a target.
62
+ const pgFlag = typeof flags?.projectGroupNo === "string" ? flags.projectGroupNo.trim() : "";
63
+ const pgEnv = (process.env.SANDBOX_PROJECT_GROUP_NO ?? "").trim();
64
+ if (pgFlag !== "" || pgEnv !== "")
65
+ return { mode: "remote", conflict: false };
66
+ return { mode: null, conflict: false };
67
+ }
68
+ /**
69
+ * Resolve the store mode or throw the canonical CliError. Single source of truth
70
+ * for the "where does a STORE write land" contract, shared by every store
71
+ * builder (scriptOutputClient, parse's makeOutputStore, commandExport, …):
72
+ * - `--remote` + `--local` → TARGET_FLAG_CONFLICT
73
+ * - nothing resolvable → SCRIPT_NO_TARGET (the CLI is unbound; refuse
74
+ * to guess — names only public flags, never the
75
+ * env var, to keep the mode concept out of
76
+ * agent-facing output)
77
+ * Returns a non-null OutputMode on success.
78
+ */
79
+ export function resolveOutputModeOrThrow(flags) {
80
+ const resolved = resolveOutputMode(flags);
81
+ if (resolved.conflict) {
82
+ throw new CliError("SCRIPT API BLOCKED: --remote conflicts with --local", "--remote and --local are mutually exclusive.", {
83
+ exitCode: EXIT_USAGE,
84
+ required: ["exactly one of --remote (publish to the project DB) or --local (write a local store)"],
85
+ received: ["--remote and --local"],
86
+ nextSteps: ["Drop one of the two flags and retry."],
87
+ errorCode: "TARGET_FLAG_CONFLICT",
88
+ });
89
+ }
90
+ if (resolved.mode === null) {
91
+ throw new CliError("SCRIPT BLOCKED: no output target", "No output target was selected, so this command has nowhere to read or write.", {
92
+ exitCode: EXIT_INPUT,
93
+ required: ["an explicit output target"],
94
+ received: ["no --script-path, no --remote/--local, and no bound default"],
95
+ nextSteps: [
96
+ "Pass `--script-path <file.json>` to read/write a local script file,",
97
+ "or `--remote` to read/write the project DB (`--local` for a local store).",
98
+ ],
99
+ errorCode: "SCRIPT_NO_TARGET",
100
+ });
101
+ }
102
+ return resolved.mode;
31
103
  }
32
104
  //# sourceMappingURL=script-output-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"script-output-store.js","sourceRoot":"","sources":["../../src/infra/script-output-store.ts"],"names":[],"mappings":"AAeA,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IACpC,MAAM,CAAgB;IACtB,IAAI,CAAyB;IAC7B,OAAO,CAAU;IACjB,aAAa,CAA2B;IAEjD,YAAY,OAAe,EAAE,OAAoC,EAAE;QACjE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;QAC9B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC;IAClD,CAAC;CACF;AAsCD;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB;IAK/B,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3E,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACvE,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;IACrF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"script-output-store.js","sourceRoot":"","sources":["../../src/infra/script-output-store.ts"],"names":[],"mappings":"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"}
package/dist/output.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  import { CliError, type Report } from "./common.js";
2
2
  export declare function renderText(report: Report, exitCode: number): string;
3
- export declare function emit(report: Report, exitCode: number, jsonMode: boolean): void;
3
+ export declare function emit(report: Report, exitCode: number, jsonMode: boolean, format?: string): void;
4
4
  export declare function emitError(error: CliError, jsonMode: boolean): number;
package/dist/output.js CHANGED
@@ -52,7 +52,17 @@ export function renderText(report, exitCode) {
52
52
  lines.push(`- code: ${exitCode}`);
53
53
  return lines.join("\n").replace(/\s+$/, "") + "\n";
54
54
  }
55
- export function emit(report, exitCode, jsonMode) {
55
+ export function emit(report, exitCode, jsonMode, format) {
56
+ // `--format addr`: a bare, newline-delimited address stream (the query's
57
+ // rows[].addr) for piping into xargs / a do-script generator without jq.
58
+ // Only applies to reports that actually carry rows (queries); for a report
59
+ // without rows (write verbs, validate, patch, do) we fall through to the
60
+ // normal envelope so the operation's result is never silently swallowed.
61
+ if (format === "addr" && Array.isArray(report.rows)) {
62
+ const addrs = report.rows.map((r) => String(r["addr"] ?? "")).filter((a) => a);
63
+ process.stdout.write(addrs.length ? addrs.join("\n") + "\n" : "");
64
+ return;
65
+ }
56
66
  if (jsonMode) {
57
67
  const payload = { ...report };
58
68
  payload.exit_code = exitCode;
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import * as fs from "node:fs";
2
2
  import * as path from "node:path";
3
3
  import { CliError, DEFAULT_BATCH_MAX_CHARS, DEFAULT_BATCH_MIN_LINES, DEFAULT_BATCH_MODE, DEFAULT_BATCH_TARGET_LINES, DEFAULT_CONCURRENCY, DEFAULT_MODEL, DEFAULT_PROVIDER, DEFAULT_SUMMARY_GROUP_SIZE, DEFAULT_SUMMARY_REDUCE_THRESHOLD_CHARS, EXIT_INPUT, EXIT_NEEDS_AGENT, EXIT_OK, EXIT_RUNTIME, EXIT_USAGE, SUPPORTED_EXTS, deletePath, directDir, exists, fmtId, readJson, readText, sha256Text, writeJson, } from "../common.js";
4
4
  import { compactBatchResult, compactEpisodeResult, buildBatchPlan, buildEpisodePlan, DEFAULT_TITLE_CHUNK_SIZE, chunkEpisodesNeedingTitles, applyEpisodeTitlesToPlan, cleanSynopsisList, episodeTitleResponseMap, extractBatchWithRecovery, mergeEpisodeResults, normalizeEpisodeResult, planSynopsisReduction, readCarriedSynopsis, sortDeep, uniqueAdd, validateEpisodeExtractionQuality, _md_push_asset, curateScriptAssets, applyMetadataToScript, } from "../domain/direct-core.js";
5
- import { validateScript } from "../domain/script-core.js";
5
+ import { validateScript } from "../domain/script/validate.js";
6
6
  import { makeProvider } from "../infra/providers.js";
7
7
  import { makeSourceManifest, prepareSource, } from "../infra/converters.js";
8
8
  function strOf(v) {