@galaxy-tool-util/cli 0.1.0 → 0.4.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/LICENSE +21 -0
- package/dist/bin/galaxy-tool-cache.js +15 -0
- package/dist/bin/galaxy-tool-cache.js.map +1 -1
- package/dist/bin/gxwf.d.ts +3 -0
- package/dist/bin/gxwf.d.ts.map +1 -0
- package/dist/bin/gxwf.js +150 -0
- package/dist/bin/gxwf.js.map +1 -0
- package/dist/commands/add.js +2 -2
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/clean-tree.d.ts +9 -0
- package/dist/commands/clean-tree.d.ts.map +1 -0
- package/dist/commands/clean-tree.js +69 -0
- package/dist/commands/clean-tree.js.map +1 -0
- package/dist/commands/clean.d.ts +10 -0
- package/dist/commands/clean.d.ts.map +1 -0
- package/dist/commands/clean.js +48 -0
- package/dist/commands/clean.js.map +1 -0
- package/dist/commands/clear.js +4 -4
- package/dist/commands/clear.js.map +1 -1
- package/dist/commands/convert-tree.d.ts +32 -0
- package/dist/commands/convert-tree.d.ts.map +1 -0
- package/dist/commands/convert-tree.js +229 -0
- package/dist/commands/convert-tree.js.map +1 -0
- package/dist/commands/convert.d.ts +13 -0
- package/dist/commands/convert.d.ts.map +1 -0
- package/dist/commands/convert.js +151 -0
- package/dist/commands/convert.js.map +1 -0
- package/dist/commands/info.d.ts.map +1 -1
- package/dist/commands/info.js +5 -4
- package/dist/commands/info.js.map +1 -1
- package/dist/commands/lint-tree.d.ts +11 -0
- package/dist/commands/lint-tree.d.ts.map +1 -0
- package/dist/commands/lint-tree.js +104 -0
- package/dist/commands/lint-tree.js.map +1 -0
- package/dist/commands/lint.d.ts +34 -0
- package/dist/commands/lint.d.ts.map +1 -0
- package/dist/commands/lint.js +195 -0
- package/dist/commands/lint.js.map +1 -0
- package/dist/commands/list.js +3 -3
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/populate-workflow.d.ts +6 -0
- package/dist/commands/populate-workflow.d.ts.map +1 -0
- package/dist/commands/populate-workflow.js +55 -0
- package/dist/commands/populate-workflow.js.map +1 -0
- package/dist/commands/render-results.d.ts +11 -0
- package/dist/commands/render-results.d.ts.map +1 -0
- package/dist/commands/render-results.js +27 -0
- package/dist/commands/render-results.js.map +1 -0
- package/dist/commands/report-output.d.ts +34 -0
- package/dist/commands/report-output.d.ts.map +1 -0
- package/dist/commands/report-output.js +70 -0
- package/dist/commands/report-output.js.map +1 -0
- package/dist/commands/resolve-tool.js +1 -1
- package/dist/commands/resolve-tool.js.map +1 -1
- package/dist/commands/roundtrip-tree.d.ts +15 -0
- package/dist/commands/roundtrip-tree.d.ts.map +1 -0
- package/dist/commands/roundtrip-tree.js +178 -0
- package/dist/commands/roundtrip-tree.js.map +1 -0
- package/dist/commands/roundtrip.d.ts +31 -0
- package/dist/commands/roundtrip.d.ts.map +1 -0
- package/dist/commands/roundtrip.js +144 -0
- package/dist/commands/roundtrip.js.map +1 -0
- package/dist/commands/schema.js +2 -2
- package/dist/commands/schema.js.map +1 -1
- package/dist/commands/stateful-tool-inputs.d.ts +33 -0
- package/dist/commands/stateful-tool-inputs.d.ts.map +1 -0
- package/dist/commands/stateful-tool-inputs.js +73 -0
- package/dist/commands/stateful-tool-inputs.js.map +1 -0
- package/dist/commands/strict-options.d.ts +22 -0
- package/dist/commands/strict-options.d.ts.map +1 -0
- package/dist/commands/strict-options.js +18 -0
- package/dist/commands/strict-options.js.map +1 -0
- package/dist/commands/structural-schema.d.ts +6 -0
- package/dist/commands/structural-schema.d.ts.map +1 -0
- package/dist/commands/structural-schema.js +31 -0
- package/dist/commands/structural-schema.js.map +1 -0
- package/dist/commands/tree.d.ts +45 -0
- package/dist/commands/tree.d.ts.map +1 -0
- package/dist/commands/tree.js +155 -0
- package/dist/commands/tree.js.map +1 -0
- package/dist/commands/validate-tests-tree.d.ts +36 -0
- package/dist/commands/validate-tests-tree.d.ts.map +1 -0
- package/dist/commands/validate-tests-tree.js +191 -0
- package/dist/commands/validate-tests-tree.js.map +1 -0
- package/dist/commands/validate-tests.d.ts +21 -0
- package/dist/commands/validate-tests.d.ts.map +1 -0
- package/dist/commands/validate-tests.js +83 -0
- package/dist/commands/validate-tests.js.map +1 -0
- package/dist/commands/validate-tree.d.ts +12 -0
- package/dist/commands/validate-tree.d.ts.map +1 -0
- package/dist/commands/validate-tree.js +124 -0
- package/dist/commands/validate-tree.js.map +1 -0
- package/dist/commands/validate-workflow-json-schema.d.ts +8 -2
- package/dist/commands/validate-workflow-json-schema.d.ts.map +1 -1
- package/dist/commands/validate-workflow-json-schema.js +129 -50
- package/dist/commands/validate-workflow-json-schema.js.map +1 -1
- package/dist/commands/validate-workflow.d.ts +18 -10
- package/dist/commands/validate-workflow.d.ts.map +1 -1
- package/dist/commands/validate-workflow.js +215 -88
- package/dist/commands/validate-workflow.js.map +1 -1
- package/dist/commands/workflow-io.d.ts +7 -0
- package/dist/commands/workflow-io.d.ts.map +1 -0
- package/dist/commands/workflow-io.js +38 -0
- package/dist/commands/workflow-io.js.map +1 -0
- package/dist/index.d.ts +41 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +36 -0
- package/dist/index.js.map +1 -1
- package/dist/workflow/_templates-bundled.d.ts +2 -0
- package/dist/workflow/_templates-bundled.d.ts.map +1 -0
- package/dist/workflow/_templates-bundled.js +324 -0
- package/dist/workflow/_templates-bundled.js.map +1 -0
- package/dist/workflow/report-templates.d.ts +13 -0
- package/dist/workflow/report-templates.d.ts.map +1 -0
- package/dist/workflow/report-templates.js +91 -0
- package/dist/workflow/report-templates.js.map +1 -0
- package/package.json +18 -16
- package/dist/bin/galaxy-workflow-validate.d.ts +0 -3
- package/dist/bin/galaxy-workflow-validate.d.ts.map +0 -1
- package/dist/bin/galaxy-workflow-validate.js +0 -17
- package/dist/bin/galaxy-workflow-validate.js.map +0 -1
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { createFieldModel,
|
|
1
|
+
import { makeNodeToolCache } from "@galaxy-tool-util/core/node";
|
|
2
|
+
import { createFieldModel, GalaxyWorkflowSchema, NativeGalaxyWorkflowSchema, expandedNative, expandedFormat2, injectConnectionsIntoState, stripConnectedValues, scanForReplacements, checkStrictEncoding, checkStrictStructure, withClass, scanToolState, buildSingleValidationReport, } from "@galaxy-tool-util/schema";
|
|
3
3
|
import * as ParseResult from "effect/ParseResult";
|
|
4
4
|
import * as S from "effect/Schema";
|
|
5
|
-
import { readFile } from "node:fs/promises";
|
|
6
5
|
import { dirname } from "node:path";
|
|
7
|
-
import * as YAML from "yaml";
|
|
8
6
|
import { isResolveError, loadCachedTool } from "./resolve-tool.js";
|
|
9
7
|
import { createDefaultResolver } from "./url-resolver.js";
|
|
8
|
+
import { renderStepResults } from "./render-results.js";
|
|
9
|
+
import { readWorkflowFile, resolveFormat } from "./workflow-io.js";
|
|
10
|
+
import { resolveStrictOptions } from "./strict-options.js";
|
|
11
|
+
import { writeReportHtml } from "./report-output.js";
|
|
10
12
|
function formatIssues(error) {
|
|
11
13
|
const issues = ParseResult.ArrayFormatter.formatErrorSync(error);
|
|
12
14
|
return issues.map((i) => `${i.path.join(".")}: ${i.message}`);
|
|
13
15
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
16
|
+
/** Run Effect Schema decode on raw workflow data and return structural decode failures. */
|
|
17
|
+
export function decodeStructureErrors(data, format) {
|
|
18
|
+
const cls = format === "native" ? "NativeGalaxyWorkflow" : "GalaxyWorkflow";
|
|
19
|
+
const validationData = withClass(data, cls);
|
|
20
|
+
const schema = format === "native" ? NativeGalaxyWorkflowSchema : GalaxyWorkflowSchema;
|
|
21
|
+
const decode = S.decodeUnknownEither(schema, { onExcessProperty: "ignore" });
|
|
22
|
+
const result = decode(validationData);
|
|
23
|
+
if (result._tag === "Left") {
|
|
24
|
+
return formatIssues(result.left);
|
|
24
25
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
return [];
|
|
27
|
+
}
|
|
28
|
+
export async function runValidateWorkflow(filePath, opts) {
|
|
29
|
+
const data = await readWorkflowFile(filePath);
|
|
30
|
+
if (!data)
|
|
29
31
|
return;
|
|
30
|
-
|
|
31
|
-
const format = opts.format === "native" || opts.format === "format2"
|
|
32
|
-
? opts.format
|
|
33
|
-
: detectFormat(data);
|
|
32
|
+
const format = resolveFormat(data, opts.format);
|
|
34
33
|
const mode = opts.mode === "json-schema" ? "json-schema" : "effect";
|
|
35
|
-
|
|
34
|
+
if (!opts.json)
|
|
35
|
+
console.log(`Detected format: ${format}, mode: ${mode}`);
|
|
36
36
|
// Build expansion options for resolving external subworkflow references
|
|
37
37
|
const workflowDirectory = dirname(filePath);
|
|
38
38
|
const expansionOpts = {
|
|
@@ -40,71 +40,106 @@ export async function runValidateWorkflow(filePath, opts) {
|
|
|
40
40
|
};
|
|
41
41
|
if (mode === "json-schema") {
|
|
42
42
|
const { runValidateWorkflowJsonSchema } = await import("./validate-workflow-json-schema.js");
|
|
43
|
-
return runValidateWorkflowJsonSchema(data, format, opts, expansionOpts);
|
|
44
|
-
}
|
|
45
|
-
// --- structural validation (effect mode) ---
|
|
46
|
-
const validationData = { ...data };
|
|
47
|
-
if (format === "native" && !("class" in validationData)) {
|
|
48
|
-
validationData.class = "NativeGalaxyWorkflow";
|
|
43
|
+
return runValidateWorkflowJsonSchema(filePath, data, format, opts, expansionOpts);
|
|
49
44
|
}
|
|
50
|
-
|
|
51
|
-
|
|
45
|
+
const strict = resolveStrictOptions(opts);
|
|
46
|
+
// --- strict encoding check (pre-normalization) ---
|
|
47
|
+
if (strict.strictEncoding) {
|
|
48
|
+
const encErrors = checkStrictEncoding(data, format);
|
|
49
|
+
if (encErrors.length > 0) {
|
|
50
|
+
console.error("Encoding errors:");
|
|
51
|
+
for (const e of encErrors)
|
|
52
|
+
console.error(` ${e}`);
|
|
53
|
+
process.exitCode = 2;
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
52
56
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
57
|
+
// --- strict structure check (pre-normalization) ---
|
|
58
|
+
if (strict.strictStructure) {
|
|
59
|
+
const structErrors = checkStrictStructure(data, format);
|
|
60
|
+
if (structErrors.length > 0) {
|
|
61
|
+
console.error("Structure errors (strict):");
|
|
62
|
+
for (const e of structErrors)
|
|
63
|
+
console.error(` ${e}`);
|
|
64
|
+
process.exitCode = 2;
|
|
65
|
+
return;
|
|
62
66
|
}
|
|
63
67
|
}
|
|
64
|
-
|
|
65
|
-
|
|
68
|
+
// --- structural validation (effect mode) ---
|
|
69
|
+
const structureErrors = decodeStructureErrors(data, format);
|
|
70
|
+
const structOk = structureErrors.length === 0;
|
|
71
|
+
if (!opts.json) {
|
|
72
|
+
if (!structOk) {
|
|
73
|
+
console.error(`\nStructural validation errors:`);
|
|
74
|
+
for (const line of structureErrors) {
|
|
75
|
+
console.error(` ${line}`);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
console.log(`Structural validation: OK`);
|
|
80
|
+
}
|
|
66
81
|
}
|
|
67
82
|
// --- tool state validation (effect mode) ---
|
|
68
83
|
if (opts.toolState === false) {
|
|
84
|
+
if (opts.json || opts.reportHtml) {
|
|
85
|
+
const report = buildSingleValidationReport(filePath, [], {
|
|
86
|
+
structure_errors: structureErrors,
|
|
87
|
+
});
|
|
88
|
+
if (opts.json) {
|
|
89
|
+
console.log(JSON.stringify(report, null, 2));
|
|
90
|
+
}
|
|
91
|
+
await writeReportHtml("validate", report, opts.reportHtml);
|
|
92
|
+
}
|
|
69
93
|
process.exitCode = structOk ? 0 : 1;
|
|
70
94
|
return;
|
|
71
95
|
}
|
|
72
|
-
const cache =
|
|
96
|
+
const cache = makeNodeToolCache({ cacheDir: opts.cacheDir });
|
|
73
97
|
await cache.index.load();
|
|
74
|
-
let results;
|
|
75
|
-
|
|
76
|
-
|
|
98
|
+
let results = [];
|
|
99
|
+
const encodingErrors = [];
|
|
100
|
+
try {
|
|
101
|
+
if (format === "native") {
|
|
102
|
+
results = await validateNativeSteps(data, cache, "", expansionOpts);
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
results = await validateFormat2Steps(data, cache, "", expansionOpts);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
catch (error) {
|
|
109
|
+
// Catch legacy encoding errors thrown by walker and capture them
|
|
110
|
+
if (error instanceof Error && error.message.includes("legacy parameter encoding")) {
|
|
111
|
+
encodingErrors.push(error.message);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
throw error;
|
|
115
|
+
}
|
|
77
116
|
}
|
|
78
|
-
|
|
79
|
-
|
|
117
|
+
const stateOk = !results.some((r) => r.status === "fail");
|
|
118
|
+
if (opts.json || opts.reportHtml) {
|
|
119
|
+
const report = buildSingleValidationReport(filePath, results, {
|
|
120
|
+
structure_errors: structureErrors,
|
|
121
|
+
encoding_errors: encodingErrors,
|
|
122
|
+
});
|
|
123
|
+
if (opts.json) {
|
|
124
|
+
console.log(JSON.stringify(report, null, 2));
|
|
125
|
+
}
|
|
126
|
+
await writeReportHtml("validate", report, opts.reportHtml);
|
|
127
|
+
process.exitCode = structOk && stateOk ? 0 : 1;
|
|
128
|
+
return;
|
|
80
129
|
}
|
|
81
130
|
if (results.length === 0) {
|
|
82
131
|
console.log("No tool steps to validate state for.");
|
|
83
132
|
process.exitCode = structOk ? 0 : 1;
|
|
84
133
|
return;
|
|
85
134
|
}
|
|
86
|
-
|
|
87
|
-
let validated = 0;
|
|
88
|
-
let skipped = 0;
|
|
89
|
-
for (const r of results) {
|
|
90
|
-
if (r.status === "skip") {
|
|
91
|
-
skipped++;
|
|
92
|
-
console.warn(` [${r.stepLabel}] skipped — ${r.errors[0] ?? "unknown"}`);
|
|
93
|
-
}
|
|
94
|
-
else if (r.status === "fail") {
|
|
95
|
-
validated++;
|
|
96
|
-
stateOk = false;
|
|
97
|
-
console.error(` [${r.stepLabel}] tool_state errors (${r.toolId}):`);
|
|
98
|
-
for (const line of r.errors) {
|
|
99
|
-
console.error(` ${line}`);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
validated++;
|
|
104
|
-
console.log(` [${r.stepLabel}] tool_state: OK`);
|
|
105
|
-
}
|
|
106
|
-
}
|
|
135
|
+
const { validated, skipped } = renderStepResults(results);
|
|
107
136
|
console.log(`\nTool state: ${validated} validated, ${skipped} skipped`);
|
|
137
|
+
// --- strict state: promote skips to failures ---
|
|
138
|
+
if (strict.strictState && results.some((r) => r.status !== "ok" && r.status !== "fail")) {
|
|
139
|
+
console.error("Strict state: skipped steps not allowed");
|
|
140
|
+
process.exitCode = 2;
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
108
143
|
process.exitCode = structOk && stateOk ? 0 : 1;
|
|
109
144
|
}
|
|
110
145
|
// --- Native validation ---
|
|
@@ -134,10 +169,14 @@ async function _validateNativeWorkflow(wf, cache, prefix) {
|
|
|
134
169
|
async function _validateNativeStep(step, stepLabel, toolId, toolVersion, cache) {
|
|
135
170
|
const resolved = await loadCachedTool(cache, toolId, toolVersion);
|
|
136
171
|
if (isResolveError(resolved)) {
|
|
137
|
-
const reason = resolved.kind === "no_version"
|
|
138
|
-
|
|
139
|
-
:
|
|
140
|
-
|
|
172
|
+
const reason = resolved.kind === "no_version" ? `no version for ${toolId}` : `${toolId} not in cache`;
|
|
173
|
+
return {
|
|
174
|
+
step: stepLabel,
|
|
175
|
+
tool_id: toolId,
|
|
176
|
+
version: toolVersion,
|
|
177
|
+
status: "skip_tool_not_found",
|
|
178
|
+
errors: [reason],
|
|
179
|
+
};
|
|
141
180
|
}
|
|
142
181
|
const bundle = {
|
|
143
182
|
parameters: resolved.tool.inputs,
|
|
@@ -145,7 +184,13 @@ async function _validateNativeStep(step, stepLabel, toolId, toolVersion, cache)
|
|
|
145
184
|
// Skip validation if replacement parameters (${...}) are present in typed fields
|
|
146
185
|
const replacementScan = scanForReplacements(bundle.parameters, step.tool_state);
|
|
147
186
|
if (replacementScan === "yes") {
|
|
148
|
-
return {
|
|
187
|
+
return {
|
|
188
|
+
step: stepLabel,
|
|
189
|
+
tool_id: toolId,
|
|
190
|
+
version: toolVersion,
|
|
191
|
+
status: "skip_replacement_params",
|
|
192
|
+
errors: ["replacement parameters detected"],
|
|
193
|
+
};
|
|
149
194
|
}
|
|
150
195
|
// Deep copy state and inject connection markers
|
|
151
196
|
const state = structuredClone(step.tool_state);
|
|
@@ -157,19 +202,31 @@ async function _validateNativeStep(step, stepLabel, toolId, toolVersion, cache)
|
|
|
157
202
|
// Validate against workflow_step_native schema
|
|
158
203
|
const fieldModel = createFieldModel(bundle, "workflow_step_native");
|
|
159
204
|
if (!fieldModel) {
|
|
160
|
-
return {
|
|
205
|
+
return {
|
|
206
|
+
step: stepLabel,
|
|
207
|
+
tool_id: toolId,
|
|
208
|
+
version: toolVersion,
|
|
209
|
+
status: "skip_tool_not_found",
|
|
210
|
+
errors: ["unsupported parameter types"],
|
|
211
|
+
};
|
|
161
212
|
}
|
|
162
213
|
const validate = S.decodeUnknownEither(fieldModel, {
|
|
163
214
|
onExcessProperty: "ignore",
|
|
164
215
|
});
|
|
165
216
|
const result = validate(state);
|
|
166
217
|
if (result._tag === "Left") {
|
|
167
|
-
return {
|
|
218
|
+
return {
|
|
219
|
+
step: stepLabel,
|
|
220
|
+
tool_id: toolId,
|
|
221
|
+
version: toolVersion,
|
|
222
|
+
status: "fail",
|
|
223
|
+
errors: formatIssues(result.left),
|
|
224
|
+
};
|
|
168
225
|
}
|
|
169
|
-
return { stepLabel, toolId, toolVersion, status: "ok", errors: [] };
|
|
226
|
+
return { step: stepLabel, tool_id: toolId, version: toolVersion, status: "ok", errors: [] };
|
|
170
227
|
}
|
|
171
228
|
// --- Format2 validation ---
|
|
172
|
-
async function validateFormat2Steps(data, cache, prefix = "", expansionOpts) {
|
|
229
|
+
export async function validateFormat2Steps(data, cache, prefix = "", expansionOpts) {
|
|
173
230
|
const expanded = await expandedFormat2(data, expansionOpts);
|
|
174
231
|
return _validateFormat2Workflow(expanded, cache, prefix);
|
|
175
232
|
}
|
|
@@ -196,10 +253,14 @@ async function _validateFormat2Workflow(wf, cache, prefix) {
|
|
|
196
253
|
async function _validateFormat2Step(step, stepLabel, toolId, toolVersion, cache) {
|
|
197
254
|
const resolved = await loadCachedTool(cache, toolId, toolVersion);
|
|
198
255
|
if (isResolveError(resolved)) {
|
|
199
|
-
const reason = resolved.kind === "no_version"
|
|
200
|
-
|
|
201
|
-
:
|
|
202
|
-
|
|
256
|
+
const reason = resolved.kind === "no_version" ? `no version for ${toolId}` : `${toolId} not in cache`;
|
|
257
|
+
return {
|
|
258
|
+
step: stepLabel,
|
|
259
|
+
tool_id: toolId,
|
|
260
|
+
version: toolVersion,
|
|
261
|
+
status: "skip_tool_not_found",
|
|
262
|
+
errors: [reason],
|
|
263
|
+
};
|
|
203
264
|
}
|
|
204
265
|
const bundle = {
|
|
205
266
|
parameters: resolved.tool.inputs,
|
|
@@ -212,14 +273,26 @@ async function _validateFormat2Step(step, stepLabel, toolId, toolVersion, cache)
|
|
|
212
273
|
// Level 1: Validate base state against workflow_step
|
|
213
274
|
const baseModel = createFieldModel(bundle, "workflow_step");
|
|
214
275
|
if (!baseModel) {
|
|
215
|
-
return {
|
|
276
|
+
return {
|
|
277
|
+
step: stepLabel,
|
|
278
|
+
tool_id: toolId,
|
|
279
|
+
version: toolVersion,
|
|
280
|
+
status: "skip_tool_not_found",
|
|
281
|
+
errors: ["unsupported parameter types"],
|
|
282
|
+
};
|
|
216
283
|
}
|
|
217
284
|
const baseValidate = S.decodeUnknownEither(baseModel, {
|
|
218
285
|
onExcessProperty: "ignore",
|
|
219
286
|
});
|
|
220
287
|
const baseResult = baseValidate(state);
|
|
221
288
|
if (baseResult._tag === "Left") {
|
|
222
|
-
return {
|
|
289
|
+
return {
|
|
290
|
+
step: stepLabel,
|
|
291
|
+
tool_id: toolId,
|
|
292
|
+
version: toolVersion,
|
|
293
|
+
status: "fail",
|
|
294
|
+
errors: formatIssues(baseResult.left),
|
|
295
|
+
};
|
|
223
296
|
}
|
|
224
297
|
// Build connections dict from step.in entries
|
|
225
298
|
const connections = {};
|
|
@@ -236,22 +309,76 @@ async function _validateFormat2Step(step, stepLabel, toolId, toolVersion, cache)
|
|
|
236
309
|
const unmatchedKeys = Object.keys(remaining);
|
|
237
310
|
if (unmatchedKeys.length > 0) {
|
|
238
311
|
return {
|
|
239
|
-
|
|
312
|
+
step: stepLabel,
|
|
313
|
+
tool_id: toolId,
|
|
314
|
+
version: toolVersion,
|
|
315
|
+
status: "fail",
|
|
240
316
|
errors: unmatchedKeys.map((k) => `No parameter definition matching connection key "${k}"`),
|
|
241
317
|
};
|
|
242
318
|
}
|
|
243
319
|
const linkedModel = createFieldModel(bundle, "workflow_step_linked");
|
|
244
320
|
if (!linkedModel) {
|
|
245
|
-
return {
|
|
321
|
+
return {
|
|
322
|
+
step: stepLabel,
|
|
323
|
+
tool_id: toolId,
|
|
324
|
+
version: toolVersion,
|
|
325
|
+
status: "skip_tool_not_found",
|
|
326
|
+
errors: ["unsupported parameter types"],
|
|
327
|
+
};
|
|
246
328
|
}
|
|
247
329
|
const linkedValidate = S.decodeUnknownEither(linkedModel, {
|
|
248
330
|
onExcessProperty: "ignore",
|
|
249
331
|
});
|
|
250
332
|
const linkedResult = linkedValidate(linkedState);
|
|
251
333
|
if (linkedResult._tag === "Left") {
|
|
252
|
-
return {
|
|
334
|
+
return {
|
|
335
|
+
step: stepLabel,
|
|
336
|
+
tool_id: toolId,
|
|
337
|
+
version: toolVersion,
|
|
338
|
+
status: "fail",
|
|
339
|
+
errors: formatIssues(linkedResult.left),
|
|
340
|
+
};
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
return { step: stepLabel, tool_id: toolId, version: toolVersion, status: "ok", errors: [] };
|
|
344
|
+
}
|
|
345
|
+
// --- Encoding error detection ---
|
|
346
|
+
/**
|
|
347
|
+
* Detect legacy parameter encoding in workflow tool_state fields.
|
|
348
|
+
*
|
|
349
|
+
* Scans each tool step's tool_state for legacy encoding signals
|
|
350
|
+
* (string-encoded containers, quoted select values) using scanToolState().
|
|
351
|
+
*/
|
|
352
|
+
export async function detectEncodingErrors(data, cache, format, expansionOpts) {
|
|
353
|
+
if (format === "native") {
|
|
354
|
+
const expanded = await expandedNative(data, expansionOpts);
|
|
355
|
+
return _detectNativeEncodingErrors(expanded, cache, "");
|
|
356
|
+
}
|
|
357
|
+
// Format2 workflows don't have legacy encoding issues
|
|
358
|
+
return [];
|
|
359
|
+
}
|
|
360
|
+
async function _detectNativeEncodingErrors(wf, cache, prefix) {
|
|
361
|
+
const errors = [];
|
|
362
|
+
for (const [key, step] of Object.entries(wf.steps)) {
|
|
363
|
+
const stepLabel = prefix ? `${prefix}${key}` : key;
|
|
364
|
+
if (step.type === "subworkflow" && step.subworkflow) {
|
|
365
|
+
const subErrors = await _detectNativeEncodingErrors(step.subworkflow, cache, `${stepLabel}.`);
|
|
366
|
+
errors.push(...subErrors);
|
|
367
|
+
continue;
|
|
368
|
+
}
|
|
369
|
+
const toolId = step.tool_id;
|
|
370
|
+
if (!toolId)
|
|
371
|
+
continue;
|
|
372
|
+
const resolved = await loadCachedTool(cache, toolId, step.tool_version ?? null);
|
|
373
|
+
if (isResolveError(resolved))
|
|
374
|
+
continue;
|
|
375
|
+
const inputs = resolved.tool.inputs;
|
|
376
|
+
const result = scanToolState(inputs, step.tool_state);
|
|
377
|
+
if (result.classification === "yes") {
|
|
378
|
+
const details = result.hits.map((h) => `${h.parameterName}: ${h.detail}`).join("; ");
|
|
379
|
+
errors.push(`Step ${stepLabel} (${toolId}): legacy parameter encoding (${details})`);
|
|
253
380
|
}
|
|
254
381
|
}
|
|
255
|
-
return
|
|
382
|
+
return errors;
|
|
256
383
|
}
|
|
257
384
|
//# sourceMappingURL=validate-workflow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-workflow.js","sourceRoot":"","sources":["../../src/commands/validate-workflow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validate-workflow.js","sourceRoot":"","sources":["../../src/commands/validate-workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { resolveFormat, serializeWorkflow } from "@galaxy-tool-util/schema";
|
|
2
|
+
export type { SerializeWorkflowOptions } from "@galaxy-tool-util/schema";
|
|
3
|
+
/** Read and parse a workflow file, auto-detecting JSON vs YAML by extension. */
|
|
4
|
+
export declare function readWorkflowFile(filePath: string): Promise<Record<string, unknown> | null>;
|
|
5
|
+
/** Write serialized workflow content to a file or stdout. */
|
|
6
|
+
export declare function writeWorkflowOutput(content: string, output?: string, label?: string): Promise<void>;
|
|
7
|
+
//# sourceMappingURL=workflow-io.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-io.d.ts","sourceRoot":"","sources":["../../src/commands/workflow-io.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,YAAY,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEzE,gFAAgF;AAChF,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAahG;AAED,6DAA6D;AAC7D,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,SAAa,GACjB,OAAO,CAAC,IAAI,CAAC,CAOf"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Workflow file I/O helpers for CLI commands.
|
|
3
|
+
*
|
|
4
|
+
* `resolveFormat` and `serializeWorkflow` are now provided by
|
|
5
|
+
* `@galaxy-tool-util/schema` so the web server can share them; this file
|
|
6
|
+
* re-exports them for callers that used the older cli-local paths and keeps
|
|
7
|
+
* the fs-based read/write helpers here (Node-only).
|
|
8
|
+
*/
|
|
9
|
+
import { readFile, writeFile } from "node:fs/promises";
|
|
10
|
+
import * as YAML from "yaml";
|
|
11
|
+
export { resolveFormat, serializeWorkflow } from "@galaxy-tool-util/schema";
|
|
12
|
+
/** Read and parse a workflow file, auto-detecting JSON vs YAML by extension. */
|
|
13
|
+
export async function readWorkflowFile(filePath) {
|
|
14
|
+
const raw = await readFile(filePath, "utf-8");
|
|
15
|
+
try {
|
|
16
|
+
if (filePath.endsWith(".ga") || filePath.endsWith(".json")) {
|
|
17
|
+
return JSON.parse(raw);
|
|
18
|
+
}
|
|
19
|
+
return YAML.parse(raw);
|
|
20
|
+
}
|
|
21
|
+
catch (e) {
|
|
22
|
+
const msg = e instanceof Error ? e.message : String(e);
|
|
23
|
+
console.error(`Failed to parse ${filePath}: ${msg}`);
|
|
24
|
+
process.exitCode = 1;
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/** Write serialized workflow content to a file or stdout. */
|
|
29
|
+
export async function writeWorkflowOutput(content, output, label = "Workflow") {
|
|
30
|
+
if (output) {
|
|
31
|
+
await writeFile(output, content, "utf-8");
|
|
32
|
+
console.log(`${label} written to ${output}`);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
process.stdout.write(content);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=workflow-io.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-io.js","sourceRoot":"","sources":["../../src/commands/workflow-io.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAG5E,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,QAAgB;IACrD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3D,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,mBAAmB,QAAQ,KAAK,GAAG,EAAE,CAAC,CAAC;QACrD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAe,EACf,MAAe,EACf,KAAK,GAAG,UAAU;IAElB,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,eAAe,MAAM,EAAE,CAAC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;AACH,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -16,4 +16,45 @@ export { runClear } from "./commands/clear.js";
|
|
|
16
16
|
export { runSchema } from "./commands/schema.js";
|
|
17
17
|
/** Validate a Galaxy workflow file (structure + optional tool state). */
|
|
18
18
|
export { runValidateWorkflow } from "./commands/validate-workflow.js";
|
|
19
|
+
/** Validate a workflow-test file (*-tests.yml / *.gxwf-tests.yml). */
|
|
20
|
+
export { runValidateTests } from "./commands/validate-tests.js";
|
|
21
|
+
export type { ValidateTestsOptions, ValidateTestsReport } from "./commands/validate-tests.js";
|
|
22
|
+
/** Batch-validate workflow-test files under a directory. */
|
|
23
|
+
export { runValidateTestsTree } from "./commands/validate-tests-tree.js";
|
|
24
|
+
export type { ValidateTestsTreeOptions, ValidateTestsTreeReport, } from "./commands/validate-tests-tree.js";
|
|
25
|
+
/** Clean a Galaxy workflow — strip stale keys and decode legacy encoding. */
|
|
26
|
+
export { runClean } from "./commands/clean.js";
|
|
27
|
+
/** Lint a Galaxy workflow — structural checks, best practices, tool state validation. */
|
|
28
|
+
export { runLint, lintWorkflowReport } from "./commands/lint.js";
|
|
29
|
+
export type { LintReport, LintReportOptions } from "./commands/lint.js";
|
|
30
|
+
/** Convert a Galaxy workflow between native and format2 formats. */
|
|
31
|
+
export { runConvert } from "./commands/convert.js";
|
|
32
|
+
/** Scan a workflow and cache all referenced tools. */
|
|
33
|
+
export { runPopulateWorkflow } from "./commands/populate-workflow.js";
|
|
34
|
+
/** Export the structural JSON Schema for Galaxy workflows. */
|
|
35
|
+
export { runStructuralSchema } from "./commands/structural-schema.js";
|
|
36
|
+
/** Batch validate all workflows under a directory. */
|
|
37
|
+
export { runValidateTree } from "./commands/validate-tree.js";
|
|
38
|
+
/** Batch lint all workflows under a directory. */
|
|
39
|
+
export { runLintTree } from "./commands/lint-tree.js";
|
|
40
|
+
/** Batch clean all workflows under a directory. */
|
|
41
|
+
export { runCleanTree } from "./commands/clean-tree.js";
|
|
42
|
+
/** Batch convert all workflows under a directory. */
|
|
43
|
+
export { runConvertTree } from "./commands/convert-tree.js";
|
|
44
|
+
/** Tree orchestrator infrastructure. */
|
|
45
|
+
export { discoverWorkflows, collectTree, summarizeOutcomes, skipWorkflow, loadWorkflowSafe, } from "./commands/tree.js";
|
|
46
|
+
export type { WorkflowInfo, WorkflowOutcome, TreeResult, TreeSummary } from "./commands/tree.js";
|
|
47
|
+
/** Render step validation results to console. */
|
|
48
|
+
export { renderStepResults } from "./commands/render-results.js";
|
|
49
|
+
/** Write workflow content to file or stdout. */
|
|
50
|
+
export { writeWorkflowOutput } from "./commands/workflow-io.js";
|
|
51
|
+
/** Validate native/format2 workflow steps programmatically (no CLI I/O). */
|
|
52
|
+
export { validateNativeSteps, validateFormat2Steps, decodeStructureErrors, detectEncodingErrors, } from "./commands/validate-workflow.js";
|
|
53
|
+
/** Preload tool inputs from a ToolCache into a synchronous ToolInputsResolver. */
|
|
54
|
+
export { loadToolInputsForWorkflow } from "./commands/stateful-tool-inputs.js";
|
|
55
|
+
export type { ToolLoadStatus, LoadedToolInputs } from "./commands/stateful-tool-inputs.js";
|
|
56
|
+
/** Default subworkflow ref resolver (base64, TRS, HTTP, file paths). */
|
|
57
|
+
export { createDefaultResolver } from "./commands/url-resolver.js";
|
|
58
|
+
/** JSON-Schema-based (AJV) step validation and structural error decoding. */
|
|
59
|
+
export { validateNativeStepsJsonSchema, validateFormat2StepsJsonSchema, decodeStructureErrorsJsonSchema, } from "./commands/validate-workflow-json-schema.js";
|
|
19
60
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,qEAAqE;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,yCAAyC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,0CAA0C;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,4DAA4D;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,2FAA2F;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,yEAAyE;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,qEAAqE;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,yCAAyC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,0CAA0C;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,4DAA4D;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,2FAA2F;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,yEAAyE;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,sEAAsE;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAC9F,4DAA4D;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,YAAY,EACV,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,mCAAmC,CAAC;AAC3C,6EAA6E;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,yFAAyF;AACzF,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACjE,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACxE,oEAAoE;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,sDAAsD;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,8DAA8D;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,sDAAsD;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,kDAAkD;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,mDAAmD;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,qDAAqD;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,wCAAwC;AACxC,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjG,iDAAiD;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,gDAAgD;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,4EAA4E;AAC5E,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,iCAAiC,CAAC;AACzC,kFAAkF;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3F,wEAAwE;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,6EAA6E;AAC7E,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,+BAA+B,GAChC,MAAM,6CAA6C,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -16,4 +16,40 @@ export { runClear } from "./commands/clear.js";
|
|
|
16
16
|
export { runSchema } from "./commands/schema.js";
|
|
17
17
|
/** Validate a Galaxy workflow file (structure + optional tool state). */
|
|
18
18
|
export { runValidateWorkflow } from "./commands/validate-workflow.js";
|
|
19
|
+
/** Validate a workflow-test file (*-tests.yml / *.gxwf-tests.yml). */
|
|
20
|
+
export { runValidateTests } from "./commands/validate-tests.js";
|
|
21
|
+
/** Batch-validate workflow-test files under a directory. */
|
|
22
|
+
export { runValidateTestsTree } from "./commands/validate-tests-tree.js";
|
|
23
|
+
/** Clean a Galaxy workflow — strip stale keys and decode legacy encoding. */
|
|
24
|
+
export { runClean } from "./commands/clean.js";
|
|
25
|
+
/** Lint a Galaxy workflow — structural checks, best practices, tool state validation. */
|
|
26
|
+
export { runLint, lintWorkflowReport } from "./commands/lint.js";
|
|
27
|
+
/** Convert a Galaxy workflow between native and format2 formats. */
|
|
28
|
+
export { runConvert } from "./commands/convert.js";
|
|
29
|
+
/** Scan a workflow and cache all referenced tools. */
|
|
30
|
+
export { runPopulateWorkflow } from "./commands/populate-workflow.js";
|
|
31
|
+
/** Export the structural JSON Schema for Galaxy workflows. */
|
|
32
|
+
export { runStructuralSchema } from "./commands/structural-schema.js";
|
|
33
|
+
/** Batch validate all workflows under a directory. */
|
|
34
|
+
export { runValidateTree } from "./commands/validate-tree.js";
|
|
35
|
+
/** Batch lint all workflows under a directory. */
|
|
36
|
+
export { runLintTree } from "./commands/lint-tree.js";
|
|
37
|
+
/** Batch clean all workflows under a directory. */
|
|
38
|
+
export { runCleanTree } from "./commands/clean-tree.js";
|
|
39
|
+
/** Batch convert all workflows under a directory. */
|
|
40
|
+
export { runConvertTree } from "./commands/convert-tree.js";
|
|
41
|
+
/** Tree orchestrator infrastructure. */
|
|
42
|
+
export { discoverWorkflows, collectTree, summarizeOutcomes, skipWorkflow, loadWorkflowSafe, } from "./commands/tree.js";
|
|
43
|
+
/** Render step validation results to console. */
|
|
44
|
+
export { renderStepResults } from "./commands/render-results.js";
|
|
45
|
+
/** Write workflow content to file or stdout. */
|
|
46
|
+
export { writeWorkflowOutput } from "./commands/workflow-io.js";
|
|
47
|
+
/** Validate native/format2 workflow steps programmatically (no CLI I/O). */
|
|
48
|
+
export { validateNativeSteps, validateFormat2Steps, decodeStructureErrors, detectEncodingErrors, } from "./commands/validate-workflow.js";
|
|
49
|
+
/** Preload tool inputs from a ToolCache into a synchronous ToolInputsResolver. */
|
|
50
|
+
export { loadToolInputsForWorkflow } from "./commands/stateful-tool-inputs.js";
|
|
51
|
+
/** Default subworkflow ref resolver (base64, TRS, HTTP, file paths). */
|
|
52
|
+
export { createDefaultResolver } from "./commands/url-resolver.js";
|
|
53
|
+
/** JSON-Schema-based (AJV) step validation and structural error decoding. */
|
|
54
|
+
export { validateNativeStepsJsonSchema, validateFormat2StepsJsonSchema, decodeStructureErrorsJsonSchema, } from "./commands/validate-workflow-json-schema.js";
|
|
19
55
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,qEAAqE;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,yCAAyC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,0CAA0C;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,4DAA4D;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,2FAA2F;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,yEAAyE;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,qEAAqE;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,yCAAyC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,0CAA0C;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,4DAA4D;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,2FAA2F;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,yEAAyE;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,sEAAsE;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,4DAA4D;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAKzE,6EAA6E;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,yFAAyF;AACzF,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,oEAAoE;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,sDAAsD;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,8DAA8D;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,sDAAsD;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,kDAAkD;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,mDAAmD;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,qDAAqD;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,wCAAwC;AACxC,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,iDAAiD;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,gDAAgD;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,4EAA4E;AAC5E,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,iCAAiC,CAAC;AACzC,kFAAkF;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,wEAAwE;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,6EAA6E;AAC7E,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAC9B,+BAA+B,GAChC,MAAM,6CAA6C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_templates-bundled.d.ts","sourceRoot":"","sources":["../../src/workflow/_templates-bundled.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiUpD,CAAC"}
|