@galaxy-tool-util/schema 1.8.0 → 1.9.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 (46) hide show
  1. package/dist/index.d.ts +8 -2
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +6 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/tool-state-validator.d.ts.map +1 -1
  6. package/dist/tool-state-validator.js +8 -1
  7. package/dist/tool-state-validator.js.map +1 -1
  8. package/dist/workflow/cytoscape-models.d.ts +26 -0
  9. package/dist/workflow/cytoscape-models.d.ts.map +1 -1
  10. package/dist/workflow/cytoscape-models.js.map +1 -1
  11. package/dist/workflow/cytoscape.d.ts +10 -0
  12. package/dist/workflow/cytoscape.d.ts.map +1 -1
  13. package/dist/workflow/cytoscape.js +51 -12
  14. package/dist/workflow/cytoscape.js.map +1 -1
  15. package/dist/workflow/draft-checks.d.ts +36 -0
  16. package/dist/workflow/draft-checks.d.ts.map +1 -1
  17. package/dist/workflow/draft-checks.js +62 -0
  18. package/dist/workflow/draft-checks.js.map +1 -1
  19. package/dist/workflow/index.d.ts +4 -4
  20. package/dist/workflow/index.d.ts.map +1 -1
  21. package/dist/workflow/index.js +3 -3
  22. package/dist/workflow/index.js.map +1 -1
  23. package/dist/workflow/mermaid.d.ts +9 -0
  24. package/dist/workflow/mermaid.d.ts.map +1 -1
  25. package/dist/workflow/mermaid.js +75 -19
  26. package/dist/workflow/mermaid.js.map +1 -1
  27. package/dist/workflow/normalized/index.d.ts +1 -1
  28. package/dist/workflow/normalized/index.d.ts.map +1 -1
  29. package/dist/workflow/normalized/index.js +1 -1
  30. package/dist/workflow/normalized/index.js.map +1 -1
  31. package/dist/workflow/normalized/labels.d.ts +24 -0
  32. package/dist/workflow/normalized/labels.d.ts.map +1 -1
  33. package/dist/workflow/normalized/labels.js +31 -0
  34. package/dist/workflow/normalized/labels.js.map +1 -1
  35. package/dist/workflow/serialize.d.ts.map +1 -1
  36. package/dist/workflow/serialize.js +45 -0
  37. package/dist/workflow/serialize.js.map +1 -1
  38. package/dist/workflow/stateful-validate.d.ts +7 -0
  39. package/dist/workflow/stateful-validate.d.ts.map +1 -1
  40. package/dist/workflow/stateful-validate.js +26 -1
  41. package/dist/workflow/stateful-validate.js.map +1 -1
  42. package/dist/workflow/walker.d.ts +14 -0
  43. package/dist/workflow/walker.d.ts.map +1 -1
  44. package/dist/workflow/walker.js +29 -10
  45. package/dist/workflow/walker.js.map +1 -1
  46. package/package.json +1 -1
@@ -32,6 +32,37 @@ export class Labels {
32
32
  return label;
33
33
  }
34
34
  }
35
+ /**
36
+ * Render identity of a normalized step — the key visualizers (mermaid,
37
+ * cytoscape) use to address a step's node and to resolve edge endpoints.
38
+ *
39
+ * This is `label || id`, mirroring how the format2 dict-step key flows into
40
+ * the normalized model (`_normalizeSteps` sets `label = key` when no explicit
41
+ * label is present, so `label || id` collapses to the dict key in the common
42
+ * case). The raw-side counterpart `rawStepRenderIdentity` derives the SAME
43
+ * identity from an un-normalized step dict, so a classifier walking the raw
44
+ * draft (e.g. `resolveDraftOverlay`) keys its overlay the same way the
45
+ * builders look nodes up.
46
+ */
47
+ export function stepRenderIdentity(step) {
48
+ return step.label || step.id;
49
+ }
50
+ /**
51
+ * Raw-side counterpart of {@link stepRenderIdentity}. `iterKey` is the key the
52
+ * raw-step iterator yielded (the dict map key for dict-form steps, or
53
+ * `label || id` for list-form steps). An explicit `label:` on the step dict
54
+ * overrides it — matching what normalization keeps and what the builders key
55
+ * off.
56
+ */
57
+ export function rawStepRenderIdentity(step, iterKey) {
58
+ if (typeof step === "object" &&
59
+ step !== null &&
60
+ typeof step.label === "string" &&
61
+ step.label.length > 0) {
62
+ return step.label;
63
+ }
64
+ return iterKey;
65
+ }
35
66
  /**
36
67
  * Parse a source reference into [step_label_or_id, output_name].
37
68
  *
@@ -1 +1 @@
1
- {"version":3,"file":"labels.js","sourceRoot":"","sources":["../../../src/workflow/normalized/labels.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAC1D,MAAM,CAAC,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAExD,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,OAAO,KAAK,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,OAAO,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,OAAO,gBAAgB,CAAC,KAAK,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAgC;IACrE,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,MAAM;IACT,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,eAAe,GAAG,CAAC,CAAC;IAE5B,oBAAoB,CAAC,KAAgC;QACnD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;YAC1B,KAAK,GAAG,qBAAqB,IAAI,CAAC,eAAe,EAAE,CAAC;QACtD,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAAa,EACb,WAA8C;IAE9C,MAAM,SAAS,GAAG,WAAW,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;IAC1F,yDAAyD;IACzD,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IAE9C,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"labels.js","sourceRoot":"","sources":["../../../src/workflow/normalized/labels.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/workflow/serialize.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEvE,MAAM,WAAW,wBAAwB;IACvC,8CAA8C;IAC9C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8CAA8C;IAC9C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,cAAc,EACtB,IAAI,GAAE,wBAA6B,GAClC,MAAM,CAWR;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAG/F"}
1
+ {"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../src/workflow/serialize.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAiDvE,MAAM,WAAW,wBAAwB;IACvC,8CAA8C;IAC9C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8CAA8C;IAC9C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,wDAAwD;IACxD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,cAAc,EACtB,IAAI,GAAE,wBAA6B,GAClC,MAAM,CAYR;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAG/F"}
@@ -6,6 +6,50 @@
6
6
  */
7
7
  import { stringify as stringifyYaml } from "yaml";
8
8
  import { detectFormat } from "./detect-format.js";
9
+ /**
10
+ * In-memory-only fields derived during normalization (see
11
+ * `workflow/normalized/native.ts` and `format2.ts`). They are never part of
12
+ * the on-disk Galaxy format: `unique_tools` is a workflow-level `Set` of tool
13
+ * references, `connected_paths` is a per-step `Set` of input-connection keys.
14
+ * Serializing a `Set` yields `{}` (JSON) / an empty mapping (YAML), so left in
15
+ * place they leak as stray keys that downstream schema validators reject.
16
+ *
17
+ * Stripped structurally (workflow level / step level / subworkflows) rather
18
+ * than by a blanket recursive key match so a tool parameter that happens to be
19
+ * named `unique_tools`/`connected_paths` inside `tool_state` is preserved.
20
+ */
21
+ function stripDerivedFields(data) {
22
+ return stripWorkflowDict(data);
23
+ }
24
+ function stripWorkflowDict(wf) {
25
+ const out = { ...wf };
26
+ delete out.unique_tools;
27
+ if (out.steps && typeof out.steps === "object") {
28
+ out.steps = stripSteps(out.steps);
29
+ }
30
+ return out;
31
+ }
32
+ function stripSteps(steps) {
33
+ if (Array.isArray(steps))
34
+ return steps.map(stripStep);
35
+ const out = {};
36
+ for (const [key, value] of Object.entries(steps))
37
+ out[key] = stripStep(value);
38
+ return out;
39
+ }
40
+ function stripStep(step) {
41
+ if (step == null || typeof step !== "object")
42
+ return step;
43
+ const out = { ...step };
44
+ delete out.connected_paths;
45
+ // Embedded subworkflows: `subworkflow` (native) / `run` (format2).
46
+ for (const key of ["subworkflow", "run"]) {
47
+ if (out[key] && typeof out[key] === "object") {
48
+ out[key] = stripWorkflowDict(out[key]);
49
+ }
50
+ }
51
+ return out;
52
+ }
9
53
  /**
10
54
  * Serialize a workflow dict as JSON or YAML based on `format` (or explicit
11
55
  * `json` / `yaml` overrides).
@@ -19,6 +63,7 @@ import { detectFormat } from "./detect-format.js";
19
63
  * reader decode them as booleans. Real numbers/booleans are unaffected.
20
64
  */
21
65
  export function serializeWorkflow(data, format, opts = {}) {
66
+ data = stripDerivedFields(data);
22
67
  const useYaml = opts.yaml || (!opts.json && format === "format2");
23
68
  const newline = opts.trailingNewline ?? true;
24
69
  if (useYaml) {
@@ -1 +1 @@
1
- {"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../src/workflow/serialize.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,EAAE,YAAY,EAAuB,MAAM,oBAAoB,CAAC;AAavE;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAA6B,EAC7B,MAAsB,EACtB,OAAiC,EAAE;IAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC;IAC7C,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QACtE,2DAA2D;QAC3D,IAAI,OAAO;YAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC;QAC1D,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACrD,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACpE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,IAA6B,EAAE,SAAkB;IAC7E,IAAI,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"serialize.js","sourceRoot":"","sources":["../../src/workflow/serialize.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,EAAE,YAAY,EAAuB,MAAM,oBAAoB,CAAC;AAEvE;;;;;;;;;;;GAWG;AACH,SAAS,kBAAkB,CAAC,IAA6B;IACvD,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,iBAAiB,CAAC,EAA2B;IACpD,MAAM,GAAG,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IACtB,OAAO,GAAG,CAAC,YAAY,CAAC;IACxB,IAAI,GAAG,CAAC,KAAK,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/C,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,KAA4C,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CACjB,KAA0C;IAE1C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,GAAG,GAA4B,EAAE,CAAC;IACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,GAAG,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9E,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,SAAS,CAAC,IAAa;IAC9B,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1D,MAAM,GAAG,GAAG,EAAE,GAAI,IAAgC,EAAE,CAAC;IACrD,OAAO,GAAG,CAAC,eAAe,CAAC;IAC3B,mEAAmE;IACnE,KAAK,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,KAAK,CAAU,EAAE,CAAC;QAClD,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC7C,GAAG,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAA4B,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAaD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAC/B,IAA6B,EAC7B,MAAsB,EACtB,OAAiC,EAAE;IAEnC,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC;IAC7C,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QACtE,2DAA2D;QAC3D,IAAI,OAAO;YAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC;QAC1D,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACrD,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACpE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,IAA6B,EAAE,SAAkB;IAC7E,IAAI,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC"}
@@ -12,6 +12,7 @@
12
12
  */
13
13
  import "../schema/parameters/index.js";
14
14
  import type { ToolParameterModel } from "../schema/bundle-types.js";
15
+ import { StringContainerError } from "./walker.js";
15
16
  export type ValidationPhase = "pre" | "post";
16
17
  /**
17
18
  * Thrown when tool_state fails Effect Schema validation before or after
@@ -55,6 +56,12 @@ export interface ToolStateDiagnostic {
55
56
  message: string;
56
57
  severity: "error" | "warning";
57
58
  }
59
+ /**
60
+ * Map a {@link StringContainerError} thrown by the walker into a located
61
+ * diagnostic. The walker joins nested paths with `|`; diagnostics use `.` to
62
+ * match the Effect Schema issue paths, so normalize the separator here.
63
+ */
64
+ export declare function stringContainerDiagnostic(error: StringContainerError): ToolStateDiagnostic;
58
65
  /**
59
66
  * Strict variant of {@link validateFormat2StepState}: reports unknown keys as
60
67
  * diagnostics rather than silently ignoring them.
@@ -1 +1 @@
1
- {"version":3,"file":"stateful-validate.d.ts","sourceRoot":"","sources":["../../src/workflow/stateful-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,OAAO,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAA4B,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAG9F,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,MAAM,CAAC;AAE7C;;;;GAIG;AACH,qBAAa,2BAA4B,SAAQ,KAAK;aAGlC,KAAK,EAAE,eAAe;aACtB,MAAM,EAAE,MAAM,EAAE;IAHlC,QAAQ,CAAC,IAAI,EAAG,6BAA6B,CAAU;gBAErC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,MAAM,EAAE;CAKnC;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,kBAAkB,EAAE,EAC5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,gBAAgB,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAC7C,IAAI,CAiBN;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,kBAAkB,EAAE,EAC5B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC,IAAI,CAaN;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,kBAAkB,EAAE,EAC5B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC,mBAAmB,EAAE,CAqBvB"}
1
+ {"version":3,"file":"stateful-validate.d.ts","sourceRoot":"","sources":["../../src/workflow/stateful-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH,OAAO,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAA4B,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,MAAM,CAAC;AAE7C;;;;GAIG;AACH,qBAAa,2BAA4B,SAAQ,KAAK;aAGlC,KAAK,EAAE,eAAe;aACtB,MAAM,EAAE,MAAM,EAAE;IAHlC,QAAQ,CAAC,IAAI,EAAG,6BAA6B,CAAU;gBAErC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,MAAM,EAAE;CAKnC;AAiBD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,kBAAkB,EAAE,EAC5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,gBAAgB,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAC7C,IAAI,CAiBN;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,kBAAkB,EAAE,EAC5B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC,IAAI,CAaN;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,oBAAoB,GAAG,mBAAmB,CAO1F;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,kBAAkB,EAAE,EAC5B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC,mBAAmB,EAAE,CA+BvB"}
@@ -18,6 +18,7 @@ import * as ParseResult from "effect/ParseResult";
18
18
  import "../schema/parameters/index.js";
19
19
  import { createFieldModel } from "../schema/model-factory.js";
20
20
  import { injectConnectionsIntoState, stripConnectedValues } from "./state-merge.js";
21
+ import { StringContainerError } from "./walker.js";
21
22
  /**
22
23
  * Thrown when tool_state fails Effect Schema validation before or after
23
24
  * stateful conversion. Carries the phase and formatted issue list so the
@@ -93,6 +94,19 @@ export function validateFormat2StepState(inputs, format2State) {
93
94
  throw new ConversionValidationFailure("post", formatIssues(result.left));
94
95
  }
95
96
  }
97
+ /**
98
+ * Map a {@link StringContainerError} thrown by the walker into a located
99
+ * diagnostic. The walker joins nested paths with `|`; diagnostics use `.` to
100
+ * match the Effect Schema issue paths, so normalize the separator here.
101
+ */
102
+ export function stringContainerDiagnostic(error) {
103
+ const path = error.path.split("|").join(".");
104
+ return {
105
+ path,
106
+ message: `Invalid value for "${path}": expected a nested object or list, not a plain value.`,
107
+ severity: "error",
108
+ };
109
+ }
96
110
  /**
97
111
  * Strict variant of {@link validateFormat2StepState}: reports unknown keys as
98
112
  * diagnostics rather than silently ignoring them.
@@ -107,7 +121,18 @@ export function validateFormat2StepStateStrict(inputs, format2State) {
107
121
  if (!model)
108
122
  return [];
109
123
  const state = deepClone(format2State);
110
- stripConnectedValues(inputs, state);
124
+ // The walker rejects a scalar where a container is expected by throwing; the
125
+ // strict validator's contract is to *return* diagnostics, so map it instead
126
+ // of letting it crash the whole validation pass.
127
+ try {
128
+ stripConnectedValues(inputs, state);
129
+ }
130
+ catch (error) {
131
+ if (error instanceof StringContainerError) {
132
+ return [stringContainerDiagnostic(error)];
133
+ }
134
+ throw error;
135
+ }
111
136
  const decode = S.decodeUnknownEither(model, { onExcessProperty: "error" });
112
137
  const result = decode(state);
113
138
  if (result._tag === "Left") {
@@ -1 +1 @@
1
- {"version":3,"file":"stateful-validate.js","sourceRoot":"","sources":["../../src/workflow/stateful-validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stateful-validate.js","sourceRoot":"","sources":["../../src/workflow/stateful-validate.ts"],"names":[],"mappings":"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"}
@@ -62,4 +62,18 @@ export declare class UnknownKeyError extends Error {
62
62
  readonly prefix?: string | undefined;
63
63
  constructor(key: string, prefix?: string | undefined);
64
64
  }
65
+ /**
66
+ * Error thrown when a container parameter (section/repeat/conditional) is given
67
+ * a scalar string value instead of the expected nested dict/list — a sign of
68
+ * legacy parameter encoding the schema-aware walkers don't accept.
69
+ *
70
+ * Mirrors {@link UnknownKeyError}: carries the offending parameter's flat state
71
+ * path and container type as structured fields so callers can map it to a
72
+ * located diagnostic instead of parsing the message text.
73
+ */
74
+ export declare class StringContainerError extends Error {
75
+ readonly path: string;
76
+ readonly parameterType: string;
77
+ constructor(path: string, parameterType: string);
78
+ }
65
79
  //# sourceMappingURL=walker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"walker.d.ts","sourceRoot":"","sources":["../../src/workflow/walker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,2BAA2B,CAAC;AAKnC,uEAAuE;AACvE,eAAO,MAAM,UAAU,EAAE,OAAO,MAA6B,CAAC;AAE9D,MAAM,MAAM,YAAY,GAAG,CACzB,SAAS,EAAE,kBAAkB,EAC7B,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,KACd,OAAO,GAAG,OAAO,UAAU,CAAC;AAEjC,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wEAAwE;IACxE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,kBAAkB,EAAE,EAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,YAAY,EAAE,YAAY,EAC1B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqHzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,kBAAkB,EAAE,EAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,YAAY,EAAE,YAAY,EAC1B,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA4EzB;AAED,mEAAmE;AACnE,qBAAa,eAAgB,SAAQ,KAAK;aAEtB,GAAG,EAAE,MAAM;aACX,MAAM,CAAC,EAAE,MAAM;gBADf,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,YAAA;CAMlC"}
1
+ {"version":3,"file":"walker.d.ts","sourceRoot":"","sources":["../../src/workflow/walker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAInB,MAAM,2BAA2B,CAAC;AAKnC,uEAAuE;AACvE,eAAO,MAAM,UAAU,EAAE,OAAO,MAA6B,CAAC;AAE9D,MAAM,MAAM,YAAY,GAAG,CACzB,SAAS,EAAE,kBAAkB,EAC7B,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,KACd,OAAO,GAAG,OAAO,UAAU,CAAC;AAEjC,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wEAAwE;IACxE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,UAAU,EAAE,kBAAkB,EAAE,EAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,YAAY,EAAE,YAAY,EAC1B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqHzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,kBAAkB,EAAE,EAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,YAAY,EAAE,YAAY,EAC1B,MAAM,CAAC,EAAE,MAAM,GACd,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA4EzB;AAED,mEAAmE;AACnE,qBAAa,eAAgB,SAAQ,KAAK;aAEtB,GAAG,EAAE,MAAM;aACX,MAAM,CAAC,EAAE,MAAM;gBADf,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,YAAA;CAMlC;AAED;;;;;;;;GAQG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;aAE3B,IAAI,EAAE,MAAM;aACZ,aAAa,EAAE,MAAM;gBADrB,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM;CASxC"}
@@ -44,7 +44,7 @@ export function walkNativeState(inputConnections, toolInputs, state, leafCallbac
44
44
  if (parameterType === "gx_conditional") {
45
45
  const conditional = toolInput;
46
46
  const conditionalState = state[name];
47
- _assertNotStringContainer(name, parameterType, conditionalState);
47
+ _assertNotStringContainer(statePath, parameterType, conditionalState);
48
48
  const stateDict = conditionalState ?? {};
49
49
  const when = selectWhichWhen(conditional, stateDict);
50
50
  const branchParams = when != null ? when.parameters : [];
@@ -57,7 +57,7 @@ export function walkNativeState(inputConnections, toolInputs, state, leafCallbac
57
57
  else if (parameterType === "gx_repeat") {
58
58
  const repeat = toolInput;
59
59
  const repeatState = state[name];
60
- _assertNotStringContainer(name, parameterType, repeatState);
60
+ _assertNotStringContainer(statePath, parameterType, repeatState);
61
61
  // Determine instance count from state array or input connections
62
62
  const stateArray = Array.isArray(repeatState)
63
63
  ? repeatState
@@ -87,7 +87,7 @@ export function walkNativeState(inputConnections, toolInputs, state, leafCallbac
87
87
  else if (parameterType === "gx_section") {
88
88
  const section = toolInput;
89
89
  const sectionState = state[name];
90
- _assertNotStringContainer(name, parameterType, sectionState);
90
+ _assertNotStringContainer(statePath, parameterType, sectionState);
91
91
  const stateDict = sectionState ?? {};
92
92
  const innerResult = walkNativeState(inputConnections, section.parameters, stateDict, leafCallback, { prefix: statePath, checkUnknownKeys, preserveUnknownKeys, repeatMinPad });
93
93
  if (Object.keys(innerResult).length > 0) {
@@ -137,7 +137,7 @@ export function walkFormat2State(toolInputs, state, leafCallback, prefix) {
137
137
  if (parameterType === "gx_conditional") {
138
138
  const conditional = toolInput;
139
139
  const conditionalState = state[name];
140
- _assertNotStringContainer(name, parameterType, conditionalState);
140
+ _assertNotStringContainer(statePath, parameterType, conditionalState);
141
141
  const stateDict = conditionalState ?? {};
142
142
  const when = selectWhichWhen(conditional, stateDict);
143
143
  const branchParams = when != null ? when.parameters : [];
@@ -149,7 +149,7 @@ export function walkFormat2State(toolInputs, state, leafCallback, prefix) {
149
149
  else if (parameterType === "gx_repeat") {
150
150
  const repeat = toolInput;
151
151
  const repeatState = state[name];
152
- _assertNotStringContainer(name, parameterType, repeatState);
152
+ _assertNotStringContainer(statePath, parameterType, repeatState);
153
153
  const stateArray = Array.isArray(repeatState)
154
154
  ? repeatState
155
155
  : [];
@@ -167,7 +167,7 @@ export function walkFormat2State(toolInputs, state, leafCallback, prefix) {
167
167
  else if (parameterType === "gx_section") {
168
168
  const section = toolInput;
169
169
  const sectionState = state[name];
170
- _assertNotStringContainer(name, parameterType, sectionState);
170
+ _assertNotStringContainer(statePath, parameterType, sectionState);
171
171
  const stateDict = sectionState ?? {};
172
172
  const innerResult = walkFormat2State(section.parameters, stateDict, leafCallback, statePath);
173
173
  if (Object.keys(innerResult).length > 0) {
@@ -197,12 +197,31 @@ export class UnknownKeyError extends Error {
197
197
  this.name = "UnknownKeyError";
198
198
  }
199
199
  }
200
- /** Assert that a container parameter value is not a string (legacy encoding). */
201
- function _assertNotStringContainer(name, parameterType, value) {
202
- if (typeof value === "string") {
203
- throw new Error(`Container parameter "${name}" (${parameterType}) has string value — ` +
200
+ /**
201
+ * Error thrown when a container parameter (section/repeat/conditional) is given
202
+ * a scalar string value instead of the expected nested dict/list — a sign of
203
+ * legacy parameter encoding the schema-aware walkers don't accept.
204
+ *
205
+ * Mirrors {@link UnknownKeyError}: carries the offending parameter's flat state
206
+ * path and container type as structured fields so callers can map it to a
207
+ * located diagnostic instead of parsing the message text.
208
+ */
209
+ export class StringContainerError extends Error {
210
+ path;
211
+ parameterType;
212
+ constructor(path, parameterType) {
213
+ super(`Container parameter "${path}" (${parameterType}) has string value — ` +
204
214
  `expected dict/list. This indicates legacy parameter encoding which is not supported. ` +
205
215
  `Decode the workflow first.`);
216
+ this.path = path;
217
+ this.parameterType = parameterType;
218
+ this.name = "StringContainerError";
219
+ }
220
+ }
221
+ /** Assert that a container parameter value is not a string (legacy encoding). */
222
+ function _assertNotStringContainer(path, parameterType, value) {
223
+ if (typeof value === "string") {
224
+ throw new StringContainerError(path, parameterType);
206
225
  }
207
226
  }
208
227
  //# sourceMappingURL=walker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"walker.js","sourceRoot":"","sources":["../../src/workflow/walker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"walker.js","sourceRoot":"","sources":["../../src/workflow/walker.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@galaxy-tool-util/schema",
3
- "version": "1.8.0",
3
+ "version": "1.9.0",
4
4
  "description": "Effect Schema parameter types and validators for Galaxy tools",
5
5
  "type": "module",
6
6
  "exports": {