@lingjingai/scriptctl 0.50.0 → 0.51.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.
- package/changes/0.51.0.md +24 -0
- package/changes/unreleased.md +1 -2
- package/dist/cli/register-batch.d.ts +3 -0
- package/dist/cli/register-batch.js +28 -0
- package/dist/cli/register-batch.js.map +1 -0
- package/dist/cli/register-edits.d.ts +4 -0
- package/dist/cli/register-edits.js +226 -0
- package/dist/cli/register-edits.js.map +1 -0
- package/dist/cli/register-query.d.ts +4 -0
- package/dist/cli/register-query.js +93 -0
- package/dist/cli/register-query.js.map +1 -0
- package/dist/cli/register-tools.d.ts +3 -0
- package/dist/cli/register-tools.js +23 -0
- package/dist/cli/register-tools.js.map +1 -0
- package/dist/cli/register-workflows.d.ts +4 -0
- package/dist/cli/register-workflows.js +71 -0
- package/dist/cli/register-workflows.js.map +1 -0
- package/dist/cli/registry.d.ts +14 -0
- package/dist/cli/registry.js +65 -0
- package/dist/cli/registry.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.js +146 -596
- package/dist/cli.js.map +1 -1
- package/dist/common.d.ts +12 -38
- package/dist/common.js +5 -11
- package/dist/common.js.map +1 -1
- package/dist/domain/authoring/shared/bracket.js +3 -3
- package/dist/domain/authoring/shared/bracket.js.map +1 -1
- package/dist/domain/authoring/v3/apply.js +3 -3
- package/dist/domain/authoring/v3/apply.js.map +1 -1
- package/dist/domain/authoring/v4/apply.js +6 -6
- package/dist/domain/authoring/v4/apply.js.map +1 -1
- package/dist/domain/authoring/v4/parser.js +2 -2
- package/dist/domain/authoring/v4/parser.js.map +1 -1
- package/dist/domain/authoring/v4/serializer.js +2 -2
- package/dist/domain/authoring/v4/serializer.js.map +1 -1
- package/dist/domain/script/dispatch.js +5 -7
- package/dist/domain/script/dispatch.js.map +1 -1
- package/dist/domain/script/shared.js +4 -6
- package/dist/domain/script/shared.js.map +1 -1
- package/dist/domain/script/v3/address.js +29 -38
- package/dist/domain/script/v3/address.js.map +1 -1
- package/dist/domain/script/v3/lookups.js +31 -32
- package/dist/domain/script/v3/lookups.js.map +1 -1
- package/dist/domain/script/v3/ordinal.js +4 -5
- package/dist/domain/script/v3/ordinal.js.map +1 -1
- package/dist/domain/script/v3/parse.js +3 -4
- package/dist/domain/script/v3/parse.js.map +1 -1
- package/dist/domain/script/v3/patch/helpers.js +6 -8
- package/dist/domain/script/v3/patch/helpers.js.map +1 -1
- package/dist/domain/script/v3/selector.js +6 -8
- package/dist/domain/script/v3/selector.js.map +1 -1
- package/dist/domain/script/v4/address.js +2 -3
- package/dist/domain/script/v4/address.js.map +1 -1
- package/dist/domain/script/v4/ids.js +6 -7
- package/dist/domain/script/v4/ids.js.map +1 -1
- package/dist/domain/script/v4/ordinal.js +4 -5
- package/dist/domain/script/v4/ordinal.js.map +1 -1
- package/dist/domain/script/v4/parse.js +3 -4
- package/dist/domain/script/v4/parse.js.map +1 -1
- package/dist/domain/script/v4/patch/apply.js +3 -3
- package/dist/domain/script/v4/patch/apply.js.map +1 -1
- package/dist/domain/script/v4/patch/helpers.js +3 -4
- package/dist/domain/script/v4/patch/helpers.js.map +1 -1
- package/dist/domain/script/v4/patch/ops-action.js +46 -49
- package/dist/domain/script/v4/patch/ops-action.js.map +1 -1
- package/dist/domain/script/v4/selector.js +2 -3
- package/dist/domain/script/v4/selector.js.map +1 -1
- package/dist/infra/ingest/video-discovery.js +7 -4
- package/dist/infra/ingest/video-discovery.js.map +1 -1
- package/dist/infra/script-output-store.js +6 -11
- package/dist/infra/script-output-store.js.map +1 -1
- package/dist/infra/script-working-copy.js +15 -16
- package/dist/infra/script-working-copy.js.map +1 -1
- package/dist/llm/config.js +3 -4
- package/dist/llm/config.js.map +1 -1
- package/dist/llm/router.js +6 -8
- package/dist/llm/router.js.map +1 -1
- package/dist/llm/tasks/ingest/text-normalize.js +3 -3
- package/dist/llm/tasks/ingest/text-normalize.js.map +1 -1
- package/dist/llm/tasks/ingest/video-serial.js +3 -3
- package/dist/llm/tasks/ingest/video-serial.js.map +1 -1
- package/dist/output.d.ts +2 -3
- package/dist/output.js +72 -109
- package/dist/output.js.map +1 -1
- package/dist/usecases/changelog.d.ts +2 -2
- package/dist/usecases/changelog.js +28 -36
- package/dist/usecases/changelog.js.map +1 -1
- package/dist/usecases/doctor.d.ts +2 -2
- package/dist/usecases/doctor.js +3 -5
- package/dist/usecases/doctor.js.map +1 -1
- package/dist/usecases/ingest/command.d.ts +2 -2
- package/dist/usecases/ingest/command.js +22 -5
- package/dist/usecases/ingest/command.js.map +1 -1
- package/dist/usecases/ingest/pass5-extract.js +5 -4
- package/dist/usecases/ingest/pass5-extract.js.map +1 -1
- package/dist/usecases/ingest/pass5-govern.js +13 -11
- package/dist/usecases/ingest/pass5-govern.js.map +1 -1
- package/dist/usecases/ingest/pipeline.js +19 -16
- package/dist/usecases/ingest/pipeline.js.map +1 -1
- package/dist/usecases/ingest/serial-govern.js +5 -4
- package/dist/usecases/ingest/serial-govern.js.map +1 -1
- package/dist/usecases/ingest/status.d.ts +2 -2
- package/dist/usecases/ingest/status.js +1 -1
- package/dist/usecases/ingest/status.js.map +1 -1
- package/dist/usecases/ingest/video-pipeline.js +22 -16
- package/dist/usecases/ingest/video-pipeline.js.map +1 -1
- package/dist/usecases/ingest/view-command.d.ts +2 -2
- package/dist/usecases/ingest/view-command.js +7 -6
- package/dist/usecases/ingest/view-command.js.map +1 -1
- package/dist/usecases/ingest/view-server.d.ts +2 -2
- package/dist/usecases/ingest/view-server.js +7 -5
- package/dist/usecases/ingest/view-server.js.map +1 -1
- package/dist/usecases/script/actions.d.ts +2 -2
- package/dist/usecases/script/actions.js +12 -13
- package/dist/usecases/script/actions.js.map +1 -1
- package/dist/usecases/script/actor.d.ts +2 -2
- package/dist/usecases/script/actor.js +3 -4
- package/dist/usecases/script/actor.js.map +1 -1
- package/dist/usecases/script/actors.d.ts +2 -2
- package/dist/usecases/script/actors.js +5 -5
- package/dist/usecases/script/actors.js.map +1 -1
- package/dist/usecases/script/add-actor.d.ts +2 -2
- package/dist/usecases/script/add-episode.d.ts +2 -2
- package/dist/usecases/script/add-location.d.ts +2 -2
- package/dist/usecases/script/add-prop.d.ts +2 -2
- package/dist/usecases/script/alias.d.ts +2 -2
- package/dist/usecases/script/alias.js +6 -8
- package/dist/usecases/script/alias.js.map +1 -1
- package/dist/usecases/script/assets.d.ts +2 -2
- package/dist/usecases/script/assets.js +15 -7
- package/dist/usecases/script/assets.js.map +1 -1
- package/dist/usecases/script/audit-assets.d.ts +2 -2
- package/dist/usecases/script/audit-assets.js +12 -15
- package/dist/usecases/script/audit-assets.js.map +1 -1
- package/dist/usecases/script/command-constraints.js +17 -18
- package/dist/usecases/script/command-constraints.js.map +1 -1
- package/dist/usecases/script/context.d.ts +2 -2
- package/dist/usecases/script/context.js +3 -4
- package/dist/usecases/script/context.js.map +1 -1
- package/dist/usecases/script/create.d.ts +2 -2
- package/dist/usecases/script/create.js +3 -4
- package/dist/usecases/script/create.js.map +1 -1
- package/dist/usecases/script/delete.d.ts +2 -2
- package/dist/usecases/script/delete.js +9 -12
- package/dist/usecases/script/delete.js.map +1 -1
- package/dist/usecases/script/describe.d.ts +2 -2
- package/dist/usecases/script/describe.js +6 -8
- package/dist/usecases/script/describe.js.map +1 -1
- package/dist/usecases/script/dialogue.d.ts +2 -2
- package/dist/usecases/script/dialogue.js +5 -6
- package/dist/usecases/script/dialogue.js.map +1 -1
- package/dist/usecases/script/do.d.ts +2 -2
- package/dist/usecases/script/do.js +63 -66
- package/dist/usecases/script/do.js.map +1 -1
- package/dist/usecases/script/emotion.d.ts +2 -2
- package/dist/usecases/script/emotion.js +3 -3
- package/dist/usecases/script/emotion.js.map +1 -1
- package/dist/usecases/script/episodes.d.ts +2 -2
- package/dist/usecases/script/episodes.js +5 -5
- package/dist/usecases/script/episodes.js.map +1 -1
- package/dist/usecases/script/export-authoring.d.ts +2 -2
- package/dist/usecases/script/export-authoring.js +26 -29
- package/dist/usecases/script/export-authoring.js.map +1 -1
- package/dist/usecases/script/extend.d.ts +2 -2
- package/dist/usecases/script/extend.js +22 -18
- package/dist/usecases/script/extend.js.map +1 -1
- package/dist/usecases/script/ids.d.ts +2 -2
- package/dist/usecases/script/ids.js +21 -17
- package/dist/usecases/script/ids.js.map +1 -1
- package/dist/usecases/script/importance.d.ts +2 -2
- package/dist/usecases/script/importance.js +3 -4
- package/dist/usecases/script/importance.js.map +1 -1
- package/dist/usecases/script/insert.d.ts +2 -2
- package/dist/usecases/script/insert.js +8 -10
- package/dist/usecases/script/insert.js.map +1 -1
- package/dist/usecases/script/issues.d.ts +2 -2
- package/dist/usecases/script/issues.js +10 -2
- package/dist/usecases/script/issues.js.map +1 -1
- package/dist/usecases/script/lib.d.ts +15 -9
- package/dist/usecases/script/lib.js +226 -166
- package/dist/usecases/script/lib.js.map +1 -1
- package/dist/usecases/script/locations.d.ts +2 -2
- package/dist/usecases/script/locations.js +5 -5
- package/dist/usecases/script/locations.js.map +1 -1
- package/dist/usecases/script/merge.d.ts +2 -2
- package/dist/usecases/script/merge.js +9 -12
- package/dist/usecases/script/merge.js.map +1 -1
- package/dist/usecases/script/move.d.ts +2 -2
- package/dist/usecases/script/move.js +6 -8
- package/dist/usecases/script/move.js.map +1 -1
- package/dist/usecases/script/parenthetical.d.ts +2 -2
- package/dist/usecases/script/parenthetical.js +9 -12
- package/dist/usecases/script/parenthetical.js.map +1 -1
- package/dist/usecases/script/props.d.ts +2 -2
- package/dist/usecases/script/props.js +5 -5
- package/dist/usecases/script/props.js.map +1 -1
- package/dist/usecases/script/refs.d.ts +2 -2
- package/dist/usecases/script/refs.js +23 -17
- package/dist/usecases/script/refs.js.map +1 -1
- package/dist/usecases/script/rename.d.ts +2 -2
- package/dist/usecases/script/rename.js +6 -8
- package/dist/usecases/script/rename.js.map +1 -1
- package/dist/usecases/script/replace.d.ts +2 -2
- package/dist/usecases/script/replace.js +6 -8
- package/dist/usecases/script/replace.js.map +1 -1
- package/dist/usecases/script/role.d.ts +2 -2
- package/dist/usecases/script/role.js +3 -4
- package/dist/usecases/script/role.js.map +1 -1
- package/dist/usecases/script/scenes.d.ts +2 -2
- package/dist/usecases/script/scenes.js +7 -5
- package/dist/usecases/script/scenes.js.map +1 -1
- package/dist/usecases/script/script-patch.d.ts +2 -2
- package/dist/usecases/script/script-patch.js +95 -112
- package/dist/usecases/script/script-patch.js.map +1 -1
- package/dist/usecases/script/script-validate.d.ts +2 -2
- package/dist/usecases/script/script-validate.js +11 -7
- package/dist/usecases/script/script-validate.js.map +1 -1
- package/dist/usecases/script/session.js +52 -63
- package/dist/usecases/script/session.js.map +1 -1
- package/dist/usecases/script/split.d.ts +2 -2
- package/dist/usecases/script/split.js +6 -8
- package/dist/usecases/script/split.js.map +1 -1
- package/dist/usecases/script/state-add.d.ts +2 -2
- package/dist/usecases/script/state-add.js +3 -4
- package/dist/usecases/script/state-add.js.map +1 -1
- package/dist/usecases/script/state-delete.d.ts +2 -2
- package/dist/usecases/script/state-delete.js +3 -4
- package/dist/usecases/script/state-delete.js.map +1 -1
- package/dist/usecases/script/state-rename.d.ts +2 -2
- package/dist/usecases/script/state-rename.js +3 -4
- package/dist/usecases/script/state-rename.js.map +1 -1
- package/dist/usecases/script/states.d.ts +2 -2
- package/dist/usecases/script/states.js +54 -27
- package/dist/usecases/script/states.js.map +1 -1
- package/dist/usecases/script/summary.d.ts +2 -2
- package/dist/usecases/script/summary.js +21 -2
- package/dist/usecases/script/summary.js.map +1 -1
- package/dist/usecases/script/synopsis-generate.d.ts +2 -2
- package/dist/usecases/script/synopsis-generate.js +38 -39
- package/dist/usecases/script/synopsis-generate.js.map +1 -1
- package/dist/usecases/script/synopsis.d.ts +2 -2
- package/dist/usecases/script/synopsis.js +9 -12
- package/dist/usecases/script/synopsis.js.map +1 -1
- package/dist/usecases/script/transition.d.ts +2 -2
- package/dist/usecases/script/transition.js +3 -4
- package/dist/usecases/script/transition.js.map +1 -1
- package/dist/usecases/script/type.d.ts +2 -2
- package/dist/usecases/script/type.js +3 -4
- package/dist/usecases/script/type.js.map +1 -1
- package/dist/usecases/script/v4/queries.d.ts +3 -2
- package/dist/usecases/script/v4/queries.js +43 -6
- package/dist/usecases/script/v4/queries.js.map +1 -1
- package/dist/usecases/script/working-copy.d.ts +4 -4
- package/dist/usecases/script/working-copy.js +96 -92
- package/dist/usecases/script/working-copy.js.map +1 -1
- package/dist/usecases/script/worldview.d.ts +2 -2
- package/dist/usecases/script/worldview.js +3 -4
- package/dist/usecases/script/worldview.js.map +1 -1
- package/dist/usecases/script/write-authoring.d.ts +2 -2
- package/dist/usecases/script/write-authoring.js +62 -81
- package/dist/usecases/script/write-authoring.js.map +1 -1
- package/dist/usecases/update.d.ts +2 -2
- package/dist/usecases/update.js +32 -47
- package/dist/usecases/update.js.map +1 -1
- package/package.json +1 -1
- package/skills/scriptctl/SKILL.md +8 -2
- package/dist/help-text.d.ts +0 -2
- package/dist/help-text.js +0 -1144
- package/dist/help-text.js.map +0 -1
|
@@ -6,7 +6,7 @@ import { readExtendV4 } from "../../domain/script/v4/patch/ops-extend.js";
|
|
|
6
6
|
import { requireScriptV4 } from "../../domain/script/v4/parse.js";
|
|
7
7
|
import { asList } from "../../domain/script/shared.js";
|
|
8
8
|
import { loadScriptForEdit } from "./session.js";
|
|
9
|
-
import { applySingleScriptOpToSession
|
|
9
|
+
import { applySingleScriptOpToSession } from "./lib.js";
|
|
10
10
|
// `extend <addr> [key] [value]` — the free-form namespace verb, dual-mode:
|
|
11
11
|
// • no key → read: list the node's extend{} container
|
|
12
12
|
// • key + value → write: set extend[key] = value (string, or JSON via --json-value)
|
|
@@ -16,12 +16,11 @@ import { applySingleScriptOpToSession, buildReport } from "./lib.js";
|
|
|
16
16
|
export async function commandExtend(opts) {
|
|
17
17
|
const args = asList(opts["_args"]);
|
|
18
18
|
if (args.length < 1) {
|
|
19
|
-
throw new CliError("
|
|
19
|
+
throw new CliError("extend address missing.", {
|
|
20
20
|
exitCode: EXIT_USAGE,
|
|
21
|
-
required: ["<addr> [key] [value]"],
|
|
22
|
-
received: ["<empty>"],
|
|
23
|
-
nextSteps: ["Example: scriptctl extend global art_style cyberpunk | scriptctl extend ep_001/scn_001 (read)"],
|
|
24
21
|
errorCode: "ARGS_MISSING",
|
|
22
|
+
hint: "Example: scriptctl extend global art_style cyberpunk | scriptctl extend ep_001/scn_001 (read)",
|
|
23
|
+
data: { expected: ["<addr> [key] [value]"], actual: ["<empty>"] },
|
|
25
24
|
});
|
|
26
25
|
}
|
|
27
26
|
const session = await loadScriptForEdit(opts);
|
|
@@ -43,31 +42,37 @@ export async function commandExtend(opts) {
|
|
|
43
42
|
lines.push(`${k} = ${JSON.stringify(ext[k])}`);
|
|
44
43
|
if (lines.length === 0)
|
|
45
44
|
lines.push("(no extend keys)");
|
|
46
|
-
return [
|
|
45
|
+
return [{
|
|
46
|
+
text: lines.join("\n"),
|
|
47
|
+
data: {
|
|
48
|
+
op: "query.extend",
|
|
49
|
+
changed: false,
|
|
50
|
+
target: args[0],
|
|
51
|
+
content: ext,
|
|
52
|
+
},
|
|
53
|
+
}, EXIT_OK];
|
|
47
54
|
}
|
|
48
55
|
const key = args[1];
|
|
49
56
|
if (clear) {
|
|
50
57
|
// --clear is a delete; a value makes the intent contradictory. Refuse rather
|
|
51
58
|
// than silently dropping the value and deleting (a set→delete footgun).
|
|
52
59
|
if (args.length >= 3) {
|
|
53
|
-
throw new CliError("
|
|
60
|
+
throw new CliError("extend --clear takes no value.", {
|
|
54
61
|
exitCode: EXIT_USAGE,
|
|
55
|
-
required: ["<addr> <key> --clear (delete a key) or <addr> --clear (wipe)"],
|
|
56
|
-
received: args,
|
|
57
|
-
nextSteps: ["Drop --clear to set the value, or drop the value to delete the key."],
|
|
58
62
|
errorCode: "EXTEND_CLEAR_WITH_VALUE",
|
|
63
|
+
hint: "Drop --clear to set the value, or drop the value to delete the key.",
|
|
64
|
+
data: { expected: ["<addr> <key> --clear (delete a key) or <addr> --clear (wipe)"], actual: args },
|
|
59
65
|
});
|
|
60
66
|
}
|
|
61
67
|
// key omitted → wipe container; key present → delete that key.
|
|
62
68
|
return applySingleScriptOpToSession(session, opts, { op: "extend.clear", at: args[0], key });
|
|
63
69
|
}
|
|
64
70
|
if (args.length < 3) {
|
|
65
|
-
throw new CliError("
|
|
71
|
+
throw new CliError("extend value missing.", {
|
|
66
72
|
exitCode: EXIT_USAGE,
|
|
67
|
-
required: ["<addr> <key> <value> (or --clear to delete)"],
|
|
68
|
-
received: args,
|
|
69
|
-
nextSteps: ["Pass a value, or use --clear to delete the key."],
|
|
70
73
|
errorCode: "EXTEND_VALUE_MISSING",
|
|
74
|
+
hint: "Pass a value, or use --clear to delete the key.",
|
|
75
|
+
data: { expected: ["<addr> <key> <value> (or --clear to delete)"], actual: args },
|
|
71
76
|
});
|
|
72
77
|
}
|
|
73
78
|
let value = args[2];
|
|
@@ -76,12 +81,11 @@ export async function commandExtend(opts) {
|
|
|
76
81
|
value = JSON.parse(args[2]);
|
|
77
82
|
}
|
|
78
83
|
catch {
|
|
79
|
-
throw new CliError("
|
|
84
|
+
throw new CliError("extend --json-value is not valid JSON.", {
|
|
80
85
|
exitCode: EXIT_USAGE,
|
|
81
|
-
required: ["valid JSON after --json-value"],
|
|
82
|
-
received: [args[2]],
|
|
83
|
-
nextSteps: ["Fix the JSON, or drop --json-value to store a literal string."],
|
|
84
86
|
errorCode: "EXTEND_JSON_INVALID",
|
|
87
|
+
hint: "Fix the JSON, or drop --json-value to store a literal string.",
|
|
88
|
+
data: { expected: ["valid JSON after --json-value"], actual: [args[2]] },
|
|
85
89
|
});
|
|
86
90
|
}
|
|
87
91
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extend.js","sourceRoot":"","sources":["../../../src/usecases/script/extend.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,OAAO,EACP,UAAU,GAEX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,yCAAyC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAa,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,4BAA4B,EAAE,
|
|
1
|
+
{"version":3,"file":"extend.js","sourceRoot":"","sources":["../../../src/usecases/script/extend.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,OAAO,EACP,UAAU,GAEX,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,yCAAyC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAa,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAExD,2EAA2E;AAC3E,mEAAmE;AACnE,4FAA4F;AAC5F,2CAA2C;AAC3C,oDAAoD;AACpD,oFAAoF;AACpF,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAU;IAC5C,MAAM,IAAI,GAAG,MAAM,CAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,QAAQ,CAAC,yBAAyB,EAAE;YACtC,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,cAAc;YACzB,IAAI,EAAE,iGAAiG;YACvG,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE;SAClE,CAAC,CAAC;IACX,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC9C,IAAI,OAAO,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;YAAE,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;SAAM,CAAC;QACN,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAErC,+CAA+C;IAC/C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,KAAK,CAAC;YAC/B,CAAC,CAAC,YAAY,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACvD,OAAO,CAAC;gBACN,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;gBACtB,IAAI,EAAE;oBACJ,EAAE,EAAE,cAAc;oBAClB,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;oBACf,OAAO,EAAE,GAAG;iBACb;aACF,EAAE,OAAO,CAAC,CAAC;IACd,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,KAAK,EAAE,CAAC;QACV,6EAA6E;QAC7E,wEAAwE;QACxE,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,QAAQ,CAAC,gCAAgC,EAAE;gBAC7C,QAAQ,EAAE,UAAU;gBACpB,SAAS,EAAE,yBAAyB;gBACpC,IAAI,EAAE,qEAAqE;gBAC3E,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,+DAA+D,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;aACpG,CAAC,CAAC;QACX,CAAC;QACD,+DAA+D;QAC/D,OAAO,4BAA4B,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,QAAQ,CAAC,uBAAuB,EAAE;YACpC,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,sBAAsB;YACjC,IAAI,EAAE,iDAAiD;YACvD,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,8CAA8C,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;SACnF,CAAC,CAAC;IACX,CAAC;IAED,IAAI,KAAK,GAAY,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7B,IAAI,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,QAAQ,CAAC,wCAAwC,EAAE;gBACrD,QAAQ,EAAE,UAAU;gBACpB,SAAS,EAAE,qBAAqB;gBAChC,IAAI,EAAE,+DAA+D;gBACrE,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,+BAA+B,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,EAAE;aAC1E,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IACD,OAAO,4BAA4B,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;AACpG,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type CommandOutput } from "../../common.js";
|
|
2
2
|
import { type Dict } from "../../domain/script/shared.js";
|
|
3
|
-
export declare function commandIds(opts: Dict): [
|
|
3
|
+
export declare function commandIds(opts: Dict): [CommandOutput, number];
|
|
@@ -22,12 +22,14 @@ function isIdKind(value) {
|
|
|
22
22
|
|| value === "action";
|
|
23
23
|
}
|
|
24
24
|
function usage(message, received) {
|
|
25
|
-
throw new CliError(
|
|
25
|
+
throw new CliError(message, {
|
|
26
26
|
exitCode: EXIT_USAGE,
|
|
27
27
|
errorCode: "IDS_USAGE_INVALID",
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
hint: "Pass one canonical ID kind and the number of candidate IDs needed.",
|
|
29
|
+
data: {
|
|
30
|
+
expected: ["--kind actor|location|prop|state|episode|scene|action", "--count <positive integer>"],
|
|
31
|
+
actual: received,
|
|
32
|
+
},
|
|
31
33
|
});
|
|
32
34
|
}
|
|
33
35
|
function readScript(opts) {
|
|
@@ -39,11 +41,11 @@ function readScript(opts) {
|
|
|
39
41
|
parsed = JSON.parse(fs.readFileSync(scriptPath, "utf-8"));
|
|
40
42
|
}
|
|
41
43
|
catch (error) {
|
|
42
|
-
throw new CliError("
|
|
44
|
+
throw new CliError("The local script file cannot be read.", {
|
|
43
45
|
exitCode: EXIT_INPUT,
|
|
44
46
|
errorCode: "SCRIPT_JSON_UNAVAILABLE",
|
|
45
|
-
|
|
46
|
-
|
|
47
|
+
hint: "Fix the local JSON file, or pass a path that does not exist to generate unbound v4 candidates.",
|
|
48
|
+
data: { actual: [scriptPath, error instanceof Error ? error.message : String(error)] },
|
|
47
49
|
});
|
|
48
50
|
}
|
|
49
51
|
return requireScriptDocument(parsed);
|
|
@@ -115,10 +117,10 @@ export function commandIds(opts) {
|
|
|
115
117
|
if (script?.version === 3) {
|
|
116
118
|
scriptVersion = 3;
|
|
117
119
|
if (kind === "action") {
|
|
118
|
-
throw new CliError("
|
|
120
|
+
throw new CliError("Action IDs belong to Script v4.", {
|
|
119
121
|
exitCode: EXIT_USAGE,
|
|
120
122
|
errorCode: "V3_ACTION_ID_UNSUPPORTED",
|
|
121
|
-
|
|
123
|
+
hint: "Generate unbound v4 candidates without an existing v3 --script-path.",
|
|
122
124
|
});
|
|
123
125
|
}
|
|
124
126
|
candidates = allocateV3(existingIdsV3(script, kind), PREFIX[kind], count);
|
|
@@ -130,14 +132,16 @@ export function commandIds(opts) {
|
|
|
130
132
|
}
|
|
131
133
|
const rows = candidates.map((id) => ({ addr: id, kind, id }));
|
|
132
134
|
const report = {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
135
|
+
text: rows.map((row) => `${row.addr}\t${row.kind}\t${row.id}`).join("\n"),
|
|
136
|
+
data: {
|
|
137
|
+
op: "ids",
|
|
138
|
+
row_columns: ["addr", "kind", "id"],
|
|
139
|
+
rows,
|
|
140
|
+
kind,
|
|
141
|
+
count,
|
|
142
|
+
reserved: false,
|
|
143
|
+
script_version: scriptVersion,
|
|
144
|
+
},
|
|
141
145
|
};
|
|
142
146
|
return [report, EXIT_OK];
|
|
143
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ids.js","sourceRoot":"","sources":["../../../src/usecases/script/ids.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EACL,QAAQ,EACR,UAAU,EACV,OAAO,EACP,UAAU,EACV,MAAM,EACN,cAAc,GAEf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,qBAAqB,EAAuB,MAAM,iCAAiC,CAAC;AAE7F,OAAO,EAAE,aAAa,EAAiB,MAAM,+BAA+B,CAAC;AAE7E,OAAO,EAAE,KAAK,EAAa,MAAM,+BAA+B,CAAC;AAEjE,MAAM,MAAM,GAAG;IACb,KAAK,EAAE,KAAK;IACZ,QAAQ,EAAE,KAAK;IACf,IAAI,EAAE,KAAK;IACX,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,IAAI;CACJ,CAAC;AAIX,SAAS,QAAQ,CAAC,KAAa;IAC7B,OAAO,KAAK,KAAK,OAAO;WACnB,KAAK,KAAK,UAAU;WACpB,KAAK,KAAK,MAAM;WAChB,KAAK,KAAK,OAAO;WACjB,KAAK,KAAK,SAAS;WACnB,KAAK,KAAK,OAAO;WACjB,KAAK,KAAK,QAAQ,CAAC;AAC1B,CAAC;AAED,SAAS,KAAK,CAAC,OAAe,EAAE,QAAkB;IAChD,MAAM,IAAI,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"ids.js","sourceRoot":"","sources":["../../../src/usecases/script/ids.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type CommandOutput } from "../../common.js";
|
|
2
2
|
import { type Dict } from "../../domain/script/shared.js";
|
|
3
|
-
export declare function commandImportance(opts: Dict): Promise<[
|
|
3
|
+
export declare function commandImportance(opts: Dict): Promise<[CommandOutput, number]>;
|
|
@@ -4,12 +4,11 @@ import { applySingleScriptOp } from "./lib.js";
|
|
|
4
4
|
export async function commandImportance(opts) {
|
|
5
5
|
const args = asList(opts["_args"]);
|
|
6
6
|
if (args.length < 2) {
|
|
7
|
-
throw new CliError("
|
|
7
|
+
throw new CliError("Importance args missing.", {
|
|
8
8
|
exitCode: EXIT_USAGE,
|
|
9
|
-
required: ["<kind:id> <featured|background>"],
|
|
10
|
-
received: args,
|
|
11
|
-
nextSteps: ["Example: scriptctl importance actor:act_001 background"],
|
|
12
9
|
errorCode: "ARGS_MISSING",
|
|
10
|
+
hint: "Example: scriptctl importance actor:act_001 background",
|
|
11
|
+
data: { expected: ["<kind:id> <featured|background>"], actual: args },
|
|
13
12
|
});
|
|
14
13
|
}
|
|
15
14
|
return applySingleScriptOp(opts, { op: "importance.set", target: args[0], importance: args[1] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importance.js","sourceRoot":"","sources":["../../../src/usecases/script/importance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"importance.js","sourceRoot":"","sources":["../../../src/usecases/script/importance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAsB,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,MAAM,EAAa,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAU;IAChD,MAAM,IAAI,GAAG,MAAM,CAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,QAAQ,CAAC,0BAA0B,EAAE;YACvC,QAAQ,EAAE,UAAU;YACpB,SAAS,EAAE,cAAc;YACzB,IAAI,EAAE,wDAAwD;YAC9D,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,iCAAiC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;SACtE,CAAC,CAAC;IACX,CAAC;IACD,OAAO,mBAAmB,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACnG,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type CommandOutput } from "../../common.js";
|
|
2
2
|
import { type Dict } from "../../domain/script/shared.js";
|
|
3
|
-
export declare function commandInsert(opts: Dict): Promise<[
|
|
3
|
+
export declare function commandInsert(opts: Dict): Promise<[CommandOutput, number]>;
|
|
@@ -35,12 +35,11 @@ function insertFlags(opts) {
|
|
|
35
35
|
export async function commandInsert(opts) {
|
|
36
36
|
const args = asList(opts["_args"]);
|
|
37
37
|
if (args.length < 1) {
|
|
38
|
-
throw new CliError("
|
|
38
|
+
throw new CliError("Insert address missing.", {
|
|
39
39
|
exitCode: EXIT_USAGE,
|
|
40
|
-
required: ["<addr>: ep_NNN/scn_NNN (action insert) or ep_NNN (scene insert)"],
|
|
41
|
-
received: ["<empty>"],
|
|
42
|
-
nextSteps: ["Example: scriptctl insert ep_001/scn_001 --type action --content \"...\""],
|
|
43
40
|
errorCode: "ADDRESS_MISSING",
|
|
41
|
+
hint: "Example: scriptctl insert ep_001/scn_001 --type action --content \"...\"",
|
|
42
|
+
data: { expected: ["<addr>: ep_NNN/scn_NNN (action insert) or ep_NNN (scene insert)"], actual: ["<empty>"] },
|
|
44
43
|
});
|
|
45
44
|
}
|
|
46
45
|
const session = await loadScriptForEdit(opts);
|
|
@@ -78,10 +77,10 @@ export async function commandInsert(opts) {
|
|
|
78
77
|
after: opts["after"],
|
|
79
78
|
});
|
|
80
79
|
}
|
|
81
|
-
throw new CliError("
|
|
80
|
+
throw new CliError("Insert targets a v4 episode or scene ID.", {
|
|
82
81
|
exitCode: EXIT_USAGE,
|
|
83
82
|
errorCode: "ADDRESS_UNSUPPORTED",
|
|
84
|
-
|
|
83
|
+
data: { actual: [args[0]] },
|
|
85
84
|
});
|
|
86
85
|
}
|
|
87
86
|
const addr = parseAnyAddress(args[0]);
|
|
@@ -118,12 +117,11 @@ export async function commandInsert(opts) {
|
|
|
118
117
|
after: opts["after"],
|
|
119
118
|
});
|
|
120
119
|
}
|
|
121
|
-
throw new CliError("
|
|
120
|
+
throw new CliError("insert cannot operate on this address.", {
|
|
122
121
|
exitCode: EXIT_USAGE,
|
|
123
|
-
required: ["ep_NNN (scene insert) or ep_NNN/scn_NNN (action insert)"],
|
|
124
|
-
received: [args[0]],
|
|
125
|
-
nextSteps: ["Use an episode or scene address."],
|
|
126
122
|
errorCode: "ADDRESS_UNSUPPORTED",
|
|
123
|
+
hint: "Use an episode or scene address.",
|
|
124
|
+
data: { expected: ["ep_NNN (scene insert) or ep_NNN/scn_NNN (action insert)"], actual: [args[0]] },
|
|
127
125
|
});
|
|
128
126
|
}
|
|
129
127
|
//# sourceMappingURL=insert.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../src/usecases/script/insert.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,QAAQ,EAKR,UAAU,GASX,MAAM,iBAAiB,CAAC;AAYzB,OAAO,EACL,eAAe,GAKhB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAWnE,OAAO,EACL,MAAM,EAIN,KAAK,GACN,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,iBAAiB,GAElB,MAAM,cAAc,CAAC;AACtB,OAAO,EACoK,4BAA4B,GACtM,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,wBAAwB,EAA2B,MAAM,0BAA0B,CAAC;AAE7F,SAAS,eAAe,CAAC,GAAY;IACnC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACjC,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,WAAW,CAAC,IAAU;IAC7B,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAClB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;QACxB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;QACxB,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC;QACpC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC;QAC3B,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC;QAClC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC;QACtB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;QACpB,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC;QACxC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC;QAC9C,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC;QACnC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAClB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;QACpB,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC;QAC1B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;QAClB,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC;QACpB,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC;QACzB,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACvC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAU;IAC5C,MAAM,IAAI,GAAG,MAAM,CAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"insert.js","sourceRoot":"","sources":["../../../src/usecases/script/insert.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type CommandOutput } from "../../common.js";
|
|
2
2
|
import { type Dict } from "../../domain/script/shared.js";
|
|
3
|
-
export declare function commandIssues(opts: Dict): Promise<[
|
|
3
|
+
export declare function commandIssues(opts: Dict): Promise<[CommandOutput, number]>;
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { EXIT_OK, } from "../../common.js";
|
|
2
2
|
import { asList, strOf, } from "../../domain/script/shared.js";
|
|
3
3
|
import { loadScriptForEdit, validateSession, } from "./session.js";
|
|
4
|
-
import { buildReport, } from "./lib.js";
|
|
5
4
|
export async function commandIssues(opts) {
|
|
6
5
|
const session = await loadScriptForEdit(opts);
|
|
7
6
|
const severityFilter = strOf(opts["severity"]).trim();
|
|
8
7
|
const codeFilter = strOf(opts["code"]).trim();
|
|
9
8
|
const validation = validateSession(session);
|
|
10
9
|
const lines = [];
|
|
10
|
+
const issues = [];
|
|
11
11
|
for (const issue of asList(validation["issues"])) {
|
|
12
12
|
if (severityFilter && severityFilter !== strOf(issue["severity"]))
|
|
13
13
|
continue;
|
|
14
14
|
if (codeFilter && codeFilter !== strOf(issue["code"]))
|
|
15
15
|
continue;
|
|
16
|
+
issues.push(issue);
|
|
16
17
|
const whereParts = [];
|
|
17
18
|
for (const k of ["episode", "scene", "action_index"]) {
|
|
18
19
|
if (issue[k] !== null && issue[k] !== undefined)
|
|
@@ -21,7 +22,14 @@ export async function commandIssues(opts) {
|
|
|
21
22
|
const where = whereParts.join(" ");
|
|
22
23
|
lines.push(`${issue["severity"]} ${issue["code"]}: ${issue["summary"]}${where ? ` [${where}]` : ""}`);
|
|
23
24
|
}
|
|
24
|
-
return [
|
|
25
|
+
return [{
|
|
26
|
+
text: lines.length > 0 ? lines.join("\n") : "No issues.",
|
|
27
|
+
data: {
|
|
28
|
+
op: "query.issues",
|
|
29
|
+
changed: false,
|
|
30
|
+
issues,
|
|
31
|
+
},
|
|
32
|
+
}, EXIT_OK];
|
|
25
33
|
}
|
|
26
34
|
// ----- refs (unified reverse lookup) ----------------------------------------
|
|
27
35
|
//# sourceMappingURL=issues.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../../src/usecases/script/issues.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,OAAO,GAWR,MAAM,iBAAiB,CAAC;AA6BzB,OAAO,EACL,MAAM,EAIN,KAAK,GACN,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,iBAAiB,EAAE,eAAe,GAEnC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../../src/usecases/script/issues.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,OAAO,GAWR,MAAM,iBAAiB,CAAC;AA6BzB,OAAO,EACL,MAAM,EAIN,KAAK,GACN,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,iBAAiB,EAAE,eAAe,GAEnC,MAAM,cAAc,CAAC;AAKtB,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAU;IAC5C,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC9C,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAW,EAAE,CAAC;IAC1B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACvD,IAAI,cAAc,IAAI,cAAc,KAAK,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAAE,SAAS;QAC5E,IAAI,UAAU,IAAI,UAAU,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAAE,SAAS;QAChE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACnB,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC;YACrD,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS;gBAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACxG,CAAC;IACD,OAAO,CAAC;YACN,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY;YACxD,IAAI,EAAE;gBACJ,EAAE,EAAE,cAAc;gBAClB,OAAO,EAAE,KAAK;gBACd,MAAM;aACP;SACF,EAAE,OAAO,CAAC,CAAC;AACd,CAAC;AAED,+EAA+E"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CliError, type
|
|
1
|
+
import { CliError, type CommandOutput } from "../../common.js";
|
|
2
2
|
import { validateScriptV4 } from "../../domain/script/v4/validation.js";
|
|
3
3
|
import { type InSelector } from "../../domain/script/selector.js";
|
|
4
4
|
import { sortDeep } from "../../domain/script/text-util.js";
|
|
@@ -100,19 +100,25 @@ export declare function buildV4MutationPlan(session: ScriptEditSession, operatio
|
|
|
100
100
|
skipCodes?: ReadonlySet<string>;
|
|
101
101
|
}): V4MutationPlanResult;
|
|
102
102
|
export declare function assertV4PlanHasExplicitNewIds(operations: Dict[]): void;
|
|
103
|
-
export declare function applySingleScriptOpToSession(session: ScriptEditSession, opts: Dict, op: Dict): Promise<[
|
|
104
|
-
export declare function applyScriptOpsToSession(session: ScriptEditSession, opts: Dict, operations: Dict[]): Promise<[
|
|
105
|
-
export declare function applySingleScriptOp(opts: Dict, op: Dict): Promise<[
|
|
103
|
+
export declare function applySingleScriptOpToSession(session: ScriptEditSession, opts: Dict, op: Dict): Promise<[CommandOutput, number]>;
|
|
104
|
+
export declare function applyScriptOpsToSession(session: ScriptEditSession, opts: Dict, operations: Dict[]): Promise<[CommandOutput, number]>;
|
|
105
|
+
export declare function applySingleScriptOp(opts: Dict, op: Dict): Promise<[CommandOutput, number]>;
|
|
106
106
|
export declare function summarizeScriptOp(_script: Dict, op: Dict): string;
|
|
107
107
|
export declare function regexPattern(raw: string): string;
|
|
108
|
-
export declare function applySelectorEditsToSession(session: ScriptEditSession, opts: Dict, template: Dict, verbLabel: string): Promise<[
|
|
109
|
-
export declare function applySelectorEdits(opts: Dict, template: Dict, verbLabel: string): Promise<[
|
|
108
|
+
export declare function applySelectorEditsToSession(session: ScriptEditSession, opts: Dict, template: Dict, verbLabel: string): Promise<[CommandOutput, number]>;
|
|
109
|
+
export declare function applySelectorEdits(opts: Dict, template: Dict, verbLabel: string): Promise<[CommandOutput, number]>;
|
|
110
110
|
export { sortDeep };
|
|
111
111
|
export declare function actionActorId(action: Dict): string;
|
|
112
112
|
export declare function actionSpeakerLabel(action: Dict, actorNames?: Map<string, string>): string;
|
|
113
113
|
export declare function actorIdsInAction(action: Dict): Set<string>;
|
|
114
114
|
export declare function buildGrepMatcher(raw: string): ((hay: string) => boolean) | null;
|
|
115
|
-
export
|
|
115
|
+
export interface TableQueryResult {
|
|
116
|
+
lines: string[];
|
|
117
|
+
rows: Array<Record<string, unknown>>;
|
|
118
|
+
rowColumns: string[];
|
|
119
|
+
}
|
|
120
|
+
export declare function buildReport(op: string, lines: string[]): CommandOutput;
|
|
121
|
+
export declare function buildTableReport(op: string, lines: string[], rowColumns: string[], rows: Array<Record<string, unknown>>): CommandOutput;
|
|
116
122
|
export declare function synopsisPreview(text: string, limit: number): string;
|
|
117
123
|
export declare function episodeInSelector(selector: InSelector, epId: string, scenes: Dict[]): boolean;
|
|
118
124
|
export declare function nameMaps(script: Dict): {
|
|
@@ -140,7 +146,7 @@ export declare function listAssetsByKind(script: Dict, kind: "actor" | "location
|
|
|
140
146
|
name: string;
|
|
141
147
|
selector: InSelector;
|
|
142
148
|
counts?: boolean;
|
|
143
|
-
}):
|
|
149
|
+
}): TableQueryResult;
|
|
144
150
|
export declare function splitSpeakerList(raw: unknown): string[];
|
|
145
|
-
export declare function blankCreateReport(session: ScriptEditSession, validation: Dict, idempotent: boolean | null):
|
|
151
|
+
export declare function blankCreateReport(session: ScriptEditSession, validation: Dict, idempotent: boolean | null): CommandOutput;
|
|
146
152
|
export declare function requireNameArg(opts: Dict, verb: string, example: string): string;
|