@octaviaflow/flow-rules 0.19.1 → 0.21.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.
@@ -31,3 +31,26 @@ export interface NodeConfigStatusResult {
31
31
  * - "unconfigured" → Action definition not found (unknown action type)
32
32
  */
33
33
  export declare function getNodeConfigStatus(node: WorkflowNode): NodeConfigStatusResult;
34
+ /**
35
+ * Settings the action's CONFIG CONTRACT requires that its `inputSchema` does
36
+ * not (absent there, or declared optional), left empty on this node (DEV-629).
37
+ *
38
+ * `getNodeConfigStatus` reads `inputSchema` alone, and some actions keep a
39
+ * required setting only in the contract: Google Chat's `space` is one. A step
40
+ * with no space passed `check_flow` and the editor, then failed at run time.
41
+ * These are reported as WARNINGS (owner decision, 2026-11-09): they name a
42
+ * real gap without blocking activation of a flow that was valid before.
43
+ * The drift test pins the list of such keys, so a new one is a decision.
44
+ */
45
+ export declare function missingContractRequired(node: WorkflowNode): string[];
46
+ /**
47
+ * What the action's own contract check (`validate()`, the check its config
48
+ * panel runs) says is wrong with this node, deduplicated (DEV-643).
49
+ *
50
+ * `getNodeConfigStatus` only asks whether each required setting is filled in;
51
+ * a Variables step whose `fields` holds a row with no key passed it, so
52
+ * `check_flow` and the canvas called the flow fine while the panel and the
53
+ * MCP's `add_step` said "Each field needs a key". A validator that throws is
54
+ * treated as silent: a broken check must not invent a problem.
55
+ */
56
+ export declare function contractValidationErrors(node: WorkflowNode): string[];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@octaviaflow/flow-rules",
3
- "version": "0.19.1",
4
- "description": "The flow action catalog and the rules engine behind Flow Doctor — one definition of what a step accepts and what makes a flow valid, shared by the editor and the server",
3
+ "version": "0.21.0",
4
+ "description": "The flow action catalog and the rules engine behind Flow Doctor \u2014 one definition of what a step accepts and what makes a flow valid, shared by the editor and the server",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
7
7
  "module": "./dist/index.js",