skillscript-runtime 0.8.0 → 0.9.6

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 (90) hide show
  1. package/dist/approval.d.ts +99 -0
  2. package/dist/approval.d.ts.map +1 -0
  3. package/dist/approval.js +224 -0
  4. package/dist/approval.js.map +1 -0
  5. package/dist/bootstrap.d.ts +21 -1
  6. package/dist/bootstrap.d.ts.map +1 -1
  7. package/dist/bootstrap.js +19 -5
  8. package/dist/bootstrap.js.map +1 -1
  9. package/dist/compile.d.ts.map +1 -1
  10. package/dist/compile.js +9 -1
  11. package/dist/compile.js.map +1 -1
  12. package/dist/composition.d.ts +29 -0
  13. package/dist/composition.d.ts.map +1 -1
  14. package/dist/composition.js +62 -1
  15. package/dist/composition.js.map +1 -1
  16. package/dist/connectors/agent-noop.d.ts +12 -7
  17. package/dist/connectors/agent-noop.d.ts.map +1 -1
  18. package/dist/connectors/agent-noop.js +31 -12
  19. package/dist/connectors/agent-noop.js.map +1 -1
  20. package/dist/connectors/agent.d.ts +150 -28
  21. package/dist/connectors/agent.d.ts.map +1 -1
  22. package/dist/connectors/agent.js +13 -10
  23. package/dist/connectors/agent.js.map +1 -1
  24. package/dist/connectors/local-model-mcp.d.ts +8 -0
  25. package/dist/connectors/local-model-mcp.d.ts.map +1 -1
  26. package/dist/connectors/local-model-mcp.js +10 -0
  27. package/dist/connectors/local-model-mcp.js.map +1 -1
  28. package/dist/connectors/memory-store-mcp.d.ts +9 -0
  29. package/dist/connectors/memory-store-mcp.d.ts.map +1 -1
  30. package/dist/connectors/memory-store-mcp.js +11 -0
  31. package/dist/connectors/memory-store-mcp.js.map +1 -1
  32. package/dist/connectors/registry.d.ts +15 -1
  33. package/dist/connectors/registry.d.ts.map +1 -1
  34. package/dist/connectors/registry.js +23 -1
  35. package/dist/connectors/registry.js.map +1 -1
  36. package/dist/connectors/skill-store.d.ts.map +1 -1
  37. package/dist/connectors/skill-store.js +43 -13
  38. package/dist/connectors/skill-store.js.map +1 -1
  39. package/dist/connectors/types.d.ts +12 -0
  40. package/dist/connectors/types.d.ts.map +1 -1
  41. package/dist/connectors/types.js.map +1 -1
  42. package/dist/dashboard/spa/app.js +37 -9
  43. package/dist/dispatch-validate.d.ts +64 -0
  44. package/dist/dispatch-validate.d.ts.map +1 -0
  45. package/dist/dispatch-validate.js +81 -0
  46. package/dist/dispatch-validate.js.map +1 -0
  47. package/dist/errors.d.ts +11 -0
  48. package/dist/errors.d.ts.map +1 -1
  49. package/dist/errors.js +16 -0
  50. package/dist/errors.js.map +1 -1
  51. package/dist/help-content.d.ts.map +1 -1
  52. package/dist/help-content.js +92 -12
  53. package/dist/help-content.js.map +1 -1
  54. package/dist/index.d.ts +3 -0
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +3 -0
  57. package/dist/index.js.map +1 -1
  58. package/dist/lint.d.ts +11 -0
  59. package/dist/lint.d.ts.map +1 -1
  60. package/dist/lint.js +560 -104
  61. package/dist/lint.js.map +1 -1
  62. package/dist/mcp-server.d.ts.map +1 -1
  63. package/dist/mcp-server.js +53 -11
  64. package/dist/mcp-server.js.map +1 -1
  65. package/dist/parser.d.ts +27 -6
  66. package/dist/parser.d.ts.map +1 -1
  67. package/dist/parser.js +115 -11
  68. package/dist/parser.js.map +1 -1
  69. package/dist/runtime.d.ts +51 -2
  70. package/dist/runtime.d.ts.map +1 -1
  71. package/dist/runtime.js +126 -35
  72. package/dist/runtime.js.map +1 -1
  73. package/dist/scheduler.d.ts +20 -1
  74. package/dist/scheduler.d.ts.map +1 -1
  75. package/dist/scheduler.js +40 -3
  76. package/dist/scheduler.js.map +1 -1
  77. package/dist/testing/conformance.d.ts.map +1 -1
  78. package/dist/testing/conformance.js +16 -6
  79. package/dist/testing/conformance.js.map +1 -1
  80. package/examples/classify-support-ticket.skill.md +1 -1
  81. package/examples/cut-release-tag.skill.md +1 -1
  82. package/examples/doc-qa-with-citations.skill.md +1 -1
  83. package/examples/feedback-sentiment-scan.skill.md +1 -1
  84. package/examples/hello.skill.provenance.json +1 -1
  85. package/examples/morning-brief.skill.md +1 -1
  86. package/examples/queue-length-monitor.skill.md +1 -1
  87. package/examples/service-health-watch.skill.md +1 -1
  88. package/examples/youtrack-morning-sweep.skill.md +1 -1
  89. package/package.json +1 -1
  90. package/scaffold/examples/hello.skill.md +3 -2
package/dist/parser.d.ts CHANGED
@@ -104,6 +104,10 @@ export interface SkillOp {
104
104
  agent: string;
105
105
  message?: string;
106
106
  connectors?: string[];
107
+ /** v0.9.6 — adopter-defined routing vocab; flows to `meta.event_type`. */
108
+ event_type?: string;
109
+ /** v0.9.6 — reply-correlation primitive; flows to `meta.correlation_id`. */
110
+ correlation_id?: string;
107
111
  };
108
112
  /**
109
113
  * v0.7.0 — inline `approved="reason"` kwarg captured on mutation-class
@@ -166,6 +170,13 @@ export interface ParsedSkill {
166
170
  type: SkillType;
167
171
  /** `# Status:` header value. Null when omitted; lint defaults to `Draft` semantics. */
168
172
  status: SkillStatusLiteral | null;
173
+ /**
174
+ * v0.9.0 — approval token from the `# Status: Approved <vN:token>` form.
175
+ * Null when the header is omitted, Draft/Disabled, or naked `Approved`
176
+ * (no token suffix). Runtime rejects Approved-without-token at execution
177
+ * time; the human-approval dashboard stamps a real token via `f(body)`.
178
+ */
179
+ approvalToken: string | null;
169
180
  /**
170
181
  * `# Timeout:` header value in SECONDS. Number literal OR `$(VAR)` ref
171
182
  * string (resolved at runtime). Null when omitted; runtime resolves via
@@ -190,13 +201,23 @@ export interface ParsedSkill {
190
201
  triggers: TriggerDecl[];
191
202
  outputs: OutputDecl[];
192
203
  /**
193
- * `# Delivery-context:` value human-readable explanation routed to
194
- * the receiving agent alongside an augment/template delivery so the
195
- * agent knows *why* it was notified. Augmenting/Template skills only;
196
- * a `unused-augmenting-header` lint warning fires when set on a skill
197
- * without an agent-bound output declaration. v0.2.6 addition.
204
+ * v0.9.2 true iff the source contained an explicit `default: <target>`
205
+ * declaration. False when the parser's last-target fallback fired
206
+ * (legacy behavior preserved for back-compat; lint surfaces the
207
+ * absence as `missing-default-target` tier-1 per P0.9).
208
+ */
209
+ entryTargetExplicit: boolean;
210
+ /**
211
+ * `# Event-type:` value — author-defined routing vocabulary; flows to
212
+ * `meta.event_type` on lifecycle-hook deliveries as the frontmatter
213
+ * fallback. `notify(event_type=...)` kwarg takes precedence per-emit.
214
+ * Augmenting/Template skills only; a `unused-augmenting-header` lint
215
+ * warning fires when set on a skill without an agent-bound output
216
+ * declaration. v0.2.6 introduced as `# Delivery-context:`; renamed in
217
+ * v0.9.6 for vocab consistency between skill-author and receiver-agent
218
+ * surfaces.
198
219
  */
199
- deliveryContext: string | null;
220
+ eventType: string | null;
200
221
  /**
201
222
  * `# Templates:` value — comma-separated names of Template skills the
202
223
  * receiving agent may fetch as follow-on actions. Surfaced alongside
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
package/dist/parser.js CHANGED
@@ -58,6 +58,26 @@ const ELIF_OP_REGEX = /^elif\s+(.+?):\s*$/;
58
58
  // matched. Word-shape leading token plus optional args, ending in `:`.
59
59
  // Excludes target headers (those are matched at depth-0 elsewhere).
60
60
  const UNKNOWN_BLOCK_INTRODUCER_RE = /^[A-Za-z_][\w-]*(?:\s+.*)?:\s*$/;
61
+ /**
62
+ * v0.9.4 — N1 extract `approved="..."` kwarg from a `$` op body.
63
+ * Function-call op grammar extracts kwargs into the op AST; the `$`
64
+ * op grammar leaves kwargs in the body string by design. But the
65
+ * `approved=` kwarg has cross-cutting lint semantics
66
+ * (unconfirmed-mutation honors it per docs) so it needs explicit AST
67
+ * surface for `$` ops too. Returns the captured reason string, or
68
+ * undefined when no `approved=` kwarg is present.
69
+ */
70
+ function extractApprovedKwarg(body) {
71
+ // Match `approved="..."` (double-quoted) or `approved='...'` (single).
72
+ // Word-boundary on the left so we don't match `pre_approved=`.
73
+ const m = /\bapproved\s*=\s*(?:"([^"]*)"|'([^']*)')/.exec(body);
74
+ if (m === null)
75
+ return undefined;
76
+ return m[1] ?? m[2] ?? "";
77
+ }
78
+ // v0.9.2 — P0.5 detect missing-space dispatch: `$<word> args` where `<word>`
79
+ // isn't `set`/`append` (the only legitimate no-space `$`-prefix verbs).
80
+ const NO_SPACE_DISPATCH_RE = /^\$(?!set\b|append\b)\w+\s/;
61
81
  /**
62
82
  * `>` and `~` ops accept optional trailing `(fallback: <value>)` per
63
83
  * language reference §9 (Error Handling, Layer 3). Fires when the op
@@ -791,6 +811,7 @@ export function parse(source) {
791
811
  description: null,
792
812
  type: "procedural",
793
813
  status: null,
814
+ approvalToken: null,
794
815
  timeout: null,
795
816
  vars: [],
796
817
  requires: [],
@@ -798,10 +819,11 @@ export function parse(source) {
798
819
  useWhen: null,
799
820
  targets: new Map(),
800
821
  entryTarget: null,
822
+ entryTargetExplicit: false,
801
823
  onError: null,
802
824
  triggers: [],
803
825
  outputs: [],
804
- deliveryContext: null,
826
+ eventType: null,
805
827
  templates: [],
806
828
  autonomous: null,
807
829
  parseErrors: [],
@@ -855,12 +877,28 @@ export function parse(source) {
855
877
  }
856
878
  }
857
879
  else if (key === "status") {
858
- const norm = normalizeEnumValue(value, ["Draft", "Approved", "Disabled"]);
880
+ // v0.9.0 `# Status: Approved` MAY carry a trailing approval token
881
+ // of the form `vN:<hex>` (e.g. `Approved v1:a1b2c3d4`). Split on the
882
+ // first run of whitespace: first segment is the status enum, anything
883
+ // after is the token. Naked `Approved` parses cleanly here but is
884
+ // rejected at runtime as unapproved until a real token is stamped.
885
+ const parts = value.split(/\s+/);
886
+ const statusRaw = parts[0] ?? "";
887
+ const tokenRaw = parts.slice(1).join(" ").trim();
888
+ const norm = normalizeEnumValue(statusRaw, ["Draft", "Approved", "Disabled"]);
859
889
  if (norm !== null) {
860
890
  result.status = norm;
891
+ if (tokenRaw.length > 0) {
892
+ if (norm !== "Approved") {
893
+ result.parseErrors.push(`\`# Status:\` only 'Approved' may carry an approval token (got status '${norm}' with token '${tokenRaw}')`);
894
+ }
895
+ else {
896
+ result.approvalToken = tokenRaw;
897
+ }
898
+ }
861
899
  }
862
900
  else {
863
- result.parseErrors.push(`\`# Status:\` value must be 'Draft', 'Approved', or 'Disabled' (got '${value}')`);
901
+ result.parseErrors.push(`\`# Status:\` value must be 'Draft', 'Approved', or 'Disabled' (got '${statusRaw}')`);
864
902
  }
865
903
  }
866
904
  else if (key === "autonomous") {
@@ -986,12 +1024,14 @@ export function parse(source) {
986
1024
  result.outputs.push({ kind, target });
987
1025
  }
988
1026
  }
989
- else if (key === "delivery-context") {
990
- // Augmenting/Template-only — routed to the receiving agent alongside
991
- // the augment payload so they know *why* the delivery fired. Empty
992
- // value clears the field; the lint rule `unused-augmenting-header`
993
- // catches use on Headless skills. v0.2.6 addition.
994
- result.deliveryContext = value === "" ? null : value;
1027
+ else if (key === "event-type") {
1028
+ // Augmenting/Template-only — author-defined routing vocabulary
1029
+ // routed to the receiving agent as `meta.event_type` (frontmatter
1030
+ // fallback; notify(event_type=...) kwarg takes precedence per-emit).
1031
+ // Empty value clears the field; the lint rule
1032
+ // `unused-augmenting-header` catches use on Headless skills.
1033
+ // Renamed from `delivery-context` in v0.9.6 per audit Q9.
1034
+ result.eventType = value === "" ? null : value;
995
1035
  }
996
1036
  else if (key === "templates") {
997
1037
  // Comma-separated Template-skill names the receiving agent may fetch
@@ -1090,6 +1130,7 @@ export function parse(source) {
1090
1130
  const deps = depsStr === "" ? [] : depsStr.split(/[\s,]+/).filter((s) => s !== "");
1091
1131
  if (name === "default") {
1092
1132
  result.entryTarget = deps[0] ?? null;
1133
+ result.entryTargetExplicit = true;
1093
1134
  currentTarget = null;
1094
1135
  scopeStack = [];
1095
1136
  continue;
@@ -1430,11 +1471,21 @@ export function parse(source) {
1430
1471
  const approved = kwArgs["approved"];
1431
1472
  // Per-op dispatch — map function-call form to canonical AST shapes.
1432
1473
  if (fnName === "emit") {
1474
+ // v0.9.2 — P0.7 emit() doesn't return a value to bind. Pre-v0.9.2
1475
+ // the parser accepted `emit(text="hi") -> VAR` silently and the
1476
+ // runtime ignored the binding — qwen Test A surfaced this as a
1477
+ // silent-drop class issue. Reject explicitly with the canonical
1478
+ // fix in the message.
1479
+ if (outputVar !== undefined) {
1480
+ result.parseErrors.push(`\`emit(...)\` in target '${currentTarget.name}' cannot bind a result with \`-> ${outputVar}\`. ` +
1481
+ `\`emit\` writes to the skill's emission stream; it has no return value. ` +
1482
+ `Drop the \`-> ${outputVar}\` binding, or use a binding-shaped op like \`ask(...) -> R\` / \`$ tool ... -> R\` if you intended to capture a value.`);
1483
+ continue;
1484
+ }
1433
1485
  const text = kwArgs["text"] ?? "";
1434
1486
  opBucket.push({
1435
1487
  kind: "!",
1436
1488
  body: text,
1437
- ...(outputVar !== undefined ? { outputVar } : {}),
1438
1489
  ...(approved !== undefined ? { approved } : {}),
1439
1490
  sourceForm: "function-call",
1440
1491
  });
@@ -1525,6 +1576,12 @@ export function parse(source) {
1525
1576
  const agent = kwArgs["agent"] ?? "";
1526
1577
  const message = kwArgs["message"];
1527
1578
  const connectorsRaw = kwArgs["connectors"];
1579
+ // v0.9.6 — adopter-defined routing vocab + reply correlation per
1580
+ // audit Q8. Both are simple-string kwargs that flow verbatim into
1581
+ // DeliveryMeta. event_type takes precedence over the `# Event-type:`
1582
+ // frontmatter fallback at the runtime.
1583
+ const eventType = kwArgs["event_type"];
1584
+ const correlationId = kwArgs["correlation_id"];
1528
1585
  // `connectors` arrives as a JSON array literal string (per the v0.7.0
1529
1586
  // kwarg value grammar). Parse here; runtime sees a real string[].
1530
1587
  let connectors;
@@ -1549,6 +1606,8 @@ export function parse(source) {
1549
1606
  agent,
1550
1607
  ...(message !== undefined ? { message } : {}),
1551
1608
  ...(connectors !== undefined ? { connectors } : {}),
1609
+ ...(eventType !== undefined ? { event_type: eventType } : {}),
1610
+ ...(correlationId !== undefined ? { correlation_id: correlationId } : {}),
1552
1611
  },
1553
1612
  ...(outputVar !== undefined ? { outputVar } : {}),
1554
1613
  ...(fallback !== undefined ? { fallback } : {}),
@@ -1600,11 +1659,33 @@ export function parse(source) {
1600
1659
  const match = APPEND_OP_REGEX.exec(stripped);
1601
1660
  if (match) {
1602
1661
  const [, setName, rawValue] = match;
1662
+ // v0.9.2 — P0.8 detect `$append VAR = "value"` shape. The regex
1663
+ // matches because `= "value"` is a valid `[\s\S]+` token, but the
1664
+ // `=` was almost certainly meant as a `$set`-style assignment.
1665
+ // The canonical mutation form is `$append VAR <value>`. Surface
1666
+ // explicitly rather than letting `= "value"` become a literal
1667
+ // value the runtime would render verbatim.
1668
+ if (/^=\s/.test(rawValue)) {
1669
+ result.parseErrors.push(`\`$append\` op in target '${currentTarget.name}' has \`= ...\` value shape. ` +
1670
+ `Did you mean \`$set ${setName} = ...\` (replace) or \`$append ${setName} <...>\` (append)? ` +
1671
+ `The canonical append syntax is \`$append VAR <value>\`.`);
1672
+ continue;
1673
+ }
1674
+ // v0.9.4 — N2 strip the canonical `<...>` operator wrapper. Per
1675
+ // language reference, `$append VAR <value>` is the canonical
1676
+ // shape and the angle brackets are the OPERATOR, not part of
1677
+ // the value. Pre-v0.9.4 the brackets were captured verbatim and
1678
+ // string-concat targets received `<"line">` literally, producing
1679
+ // silent wrong output (per R8 minion #3, finding N2 in 9086b3f8).
1680
+ let unwrappedValue = rawValue;
1681
+ if (unwrappedValue.startsWith("<") && unwrappedValue.endsWith(">") && unwrappedValue.length >= 2) {
1682
+ unwrappedValue = unwrappedValue.slice(1, -1).trim();
1683
+ }
1603
1684
  opBucket.push({
1604
1685
  kind: "$append",
1605
1686
  body: stripped,
1606
1687
  setName: setName,
1607
- setValue: processSetValue(rawValue),
1688
+ setValue: processSetValue(unwrappedValue),
1608
1689
  });
1609
1690
  }
1610
1691
  else {
@@ -1620,12 +1701,20 @@ export function parse(source) {
1620
1701
  const bodyPart = dollarOutMatch[1].trim();
1621
1702
  const { connector, rest } = splitMcpConnectorPrefix(bodyPart);
1622
1703
  const dollarFallback = dollarOutMatch[3];
1704
+ // v0.9.4 — N1 extract `approved="..."` kwarg from `$` op body so
1705
+ // lint rules (unconfirmed-mutation) can honor it per docs. The
1706
+ // function-call op grammar extracts kwargs into op fields; the
1707
+ // `$` op grammar leaves the whole body as a string by design,
1708
+ // but `approved=` is the one kwarg with cross-cutting lint
1709
+ // semantics that needs explicit AST surface.
1710
+ const approvedKwarg = extractApprovedKwarg(rest);
1623
1711
  opBucket.push({
1624
1712
  kind: "$",
1625
1713
  body: rest,
1626
1714
  outputVar: dollarOutMatch[2],
1627
1715
  ...(connector !== undefined ? { mcpConnector: connector } : {}),
1628
1716
  ...(dollarFallback !== undefined ? { fallback: processSetValue(dollarFallback) } : {}),
1717
+ ...(approvedKwarg !== undefined ? { approved: approvedKwarg } : {}),
1629
1718
  });
1630
1719
  continue;
1631
1720
  }
@@ -1669,6 +1758,8 @@ export function parse(source) {
1669
1758
  body = stripped.slice(2).trim();
1670
1759
  }
1671
1760
  if (kind !== null) {
1761
+ // v0.9.4 — N1 also extract `approved=` for the no-binding `$` op path
1762
+ const approvedKwarg = kind === "$" ? extractApprovedKwarg(body) : undefined;
1672
1763
  opBucket.push({
1673
1764
  kind,
1674
1765
  body,
@@ -1676,6 +1767,7 @@ export function parse(source) {
1676
1767
  ...(atPolicy !== undefined ? { policy: atPolicy } : {}),
1677
1768
  ...(atOutputVar !== undefined ? { outputVar: atOutputVar } : {}),
1678
1769
  ...(atFallback !== undefined ? { fallback: atFallback } : {}),
1770
+ ...(approvedKwarg !== undefined ? { approved: approvedKwarg } : {}),
1679
1771
  });
1680
1772
  continue;
1681
1773
  }
@@ -1699,6 +1791,18 @@ export function parse(source) {
1699
1791
  depth: lineIndent + INDENT_STEP,
1700
1792
  });
1701
1793
  }
1794
+ else if (NO_SPACE_DISPATCH_RE.test(stripped0)) {
1795
+ // v0.9.2 — P0.5 detect `$<word> args` (no space between `$` and tool
1796
+ // name). The canonical external-dispatch shape is `$ <tool> args`;
1797
+ // the no-space form historically silent-dropped because no op-prefix
1798
+ // branch matched it. Now: parse error with the canonical fix. Per
1799
+ // qwen single-shot finding `a3a20593`.
1800
+ const m = /^\$(\w+)/.exec(stripped0);
1801
+ const word = m?.[1] ?? "";
1802
+ result.parseErrors.push(`Op line \`${stripped0}\` in target '${currentTarget.name}' — \`$${word}\` is missing the space between \`$\` and the tool/connector name. ` +
1803
+ `Did you mean \`$ ${word} ...\` (external MCP dispatch)? ` +
1804
+ `\`$set\` / \`$append\` are the only no-space \`$\`-prefix ops (mutation statements).`);
1805
+ }
1702
1806
  }
1703
1807
  if (result.entryTarget === null && result.targets.size > 0) {
1704
1808
  const names = Array.from(result.targets.keys());
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}