@controllerai/cli 0.2.12 → 0.2.14

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 (50) hide show
  1. package/dist/api/client.js +239 -13
  2. package/dist/api/client.js.map +1 -1
  3. package/dist/commands/agent.js +84 -10
  4. package/dist/commands/agent.js.map +1 -1
  5. package/dist/commands/approval.js +34 -0
  6. package/dist/commands/approval.js.map +1 -0
  7. package/dist/commands/auth.js +5 -4
  8. package/dist/commands/auth.js.map +1 -1
  9. package/dist/commands/branch.js +32 -1
  10. package/dist/commands/branch.js.map +1 -1
  11. package/dist/commands/connection.js +41 -0
  12. package/dist/commands/connection.js.map +1 -1
  13. package/dist/commands/doctor.js +2 -2
  14. package/dist/commands/doctor.js.map +1 -1
  15. package/dist/commands/expr.js +125 -5
  16. package/dist/commands/expr.js.map +1 -1
  17. package/dist/commands/file.js +70 -0
  18. package/dist/commands/file.js.map +1 -0
  19. package/dist/commands/flow.js +143 -26
  20. package/dist/commands/flow.js.map +1 -1
  21. package/dist/commands/node.js +66 -7
  22. package/dist/commands/node.js.map +1 -1
  23. package/dist/commands/run.js +354 -40
  24. package/dist/commands/run.js.map +1 -1
  25. package/dist/commands/signup.js +10 -7
  26. package/dist/commands/signup.js.map +1 -1
  27. package/dist/commands/trigger.js +4 -1
  28. package/dist/commands/trigger.js.map +1 -1
  29. package/dist/commands/workflow.js +149 -35
  30. package/dist/commands/workflow.js.map +1 -1
  31. package/dist/config.js +7 -1
  32. package/dist/config.js.map +1 -1
  33. package/dist/errors.js +3 -4
  34. package/dist/errors.js.map +1 -1
  35. package/dist/index.js +4 -0
  36. package/dist/index.js.map +1 -1
  37. package/package.json +2 -2
  38. package/skills/controllerai-agents/SKILL.md +34 -32
  39. package/skills/controllerai-ai-nodes/SKILL.md +2 -0
  40. package/skills/controllerai-data/SKILL.md +2 -0
  41. package/skills/controllerai-expressions/SKILL.md +8 -0
  42. package/skills/controllerai-flow-control/SKILL.md +2 -0
  43. package/skills/controllerai-integration-actions/SKILL.md +2 -0
  44. package/skills/controllerai-node-config/SKILL.md +3 -1
  45. package/skills/controllerai-runs/SKILL.md +3 -1
  46. package/skills/controllerai-start/SKILL.md +3 -1
  47. package/skills/controllerai-triggers/SKILL.md +4 -0
  48. package/skills/controllerai-workflows/SKILL.md +12 -8
  49. package/skills/controllerai-workflows/references/command-map.md +1 -1
  50. package/skills/manifest.json +57 -57
@@ -3,6 +3,7 @@ import { CaiError, userError } from '../errors.js';
3
3
  import { resolveJsSource } from '../jsSource.js';
4
4
  import { nodePropsFromPayload } from '../nodeProps.js';
5
5
  import { emit, printKeyValues, printTable, warn } from '../output.js';
6
+ import { parseLiteral } from './node.js';
6
7
  import { parseFieldSpecs } from './schema.js';
7
8
  const toSnakeCase = (value) => value
8
9
  .trim()
@@ -17,19 +18,28 @@ const isUnknownToolError = (error, toolName) => error instanceof CaiError &&
17
18
  error.message.includes(toolName) &&
18
19
  /unknown tool|tool[^\n]*(?:not found|does not exist|unrecognized)/i.test(error.message);
19
20
  const FLOW_INPUT_NAME_UNAVAILABLE_WARNING = 'input name unavailable — read scope required';
21
+ const EDGE_HANDLE_UNAVAILABLE_WARNING = 'edge sourceHandle unavailable — read scope required; branch wiring is not shown';
22
+ const EDGE_HANDLE_AMBIGUOUS_WARNING = 'Parallel edges share a source and target on this flow and carry no matching id, so ' +
23
+ 'sourceHandle was attached in document order and may be misattributed. Confirm branch ' +
24
+ 'wiring with `cai branch list <nodeId>`.';
25
+ const readPersistedFlow = async (api, workflowId, flowId) => {
26
+ const state = await api.rest(`/workflow-agent/development-version-state/${workflowId}`);
27
+ if (typeof state?.json !== 'string')
28
+ throw new Error('Missing development-state JSON.');
29
+ const document = JSON.parse(state.json);
30
+ if (!document || typeof document !== 'object' || !Array.isArray(document.flows)) {
31
+ throw new Error('Malformed development-state document.');
32
+ }
33
+ const flow = document.flows.find((candidate) => candidate?.id === flowId);
34
+ if (!flow)
35
+ throw new Error('Malformed development-state flow.');
36
+ return flow;
37
+ };
20
38
  const persistedFlowInputs = async (api, workflowId, flowId) => {
21
39
  try {
22
- const state = await api.rest(`/workflow-agent/development-version-state/${workflowId}`);
23
- if (typeof state?.json !== 'string')
24
- throw new Error('Missing development-state JSON.');
25
- const document = JSON.parse(state.json);
26
- if (!document || typeof document !== 'object' || !Array.isArray(document.flows)) {
27
- throw new Error('Malformed development-state document.');
28
- }
29
- const flow = document.flows.find((candidate) => candidate?.id === flowId);
30
- if (!flow || !Array.isArray(flow.flowInputs)) {
40
+ const flow = await readPersistedFlow(api, workflowId, flowId);
41
+ if (!Array.isArray(flow.flowInputs))
31
42
  throw new Error('Malformed development-state flow.');
32
- }
33
43
  return flow.flowInputs;
34
44
  }
35
45
  catch {
@@ -58,6 +68,45 @@ const enrichFlowInputNames = (flow, rawInputs) => {
58
68
  }),
59
69
  };
60
70
  };
71
+ /**
72
+ * `get_flow` projects an edge as `{id, source, target}` and drops
73
+ * `sourceHandle`, which is where a Router route or If/Else branch records which
74
+ * arm the edge leaves from (`output-<routeId>`). Without it an unwired branch is
75
+ * indistinguishable from a wired one: the run stays green and simply stops.
76
+ * The development-state document keeps the full record, and both sides carry the
77
+ * same edge id, so the merge is exact. The (source,target) fallback exists only
78
+ * for an edge the document does not identify.
79
+ */
80
+ export const mergeEdgeSourceHandles = (edges, rawEdges) => {
81
+ const pairKey = (edge) => `${edge?.source}\u0000${edge?.target}`;
82
+ const byId = new Map();
83
+ const byPair = new Map();
84
+ for (const edge of rawEdges) {
85
+ if (edge?.id !== undefined && edge?.id !== null && !byId.has(edge.id))
86
+ byId.set(edge.id, edge);
87
+ byPair.set(pairKey(edge), [...(byPair.get(pairKey(edge)) ?? []), edge]);
88
+ }
89
+ const consumed = new Map();
90
+ let ambiguous = false;
91
+ const merged = edges.map((edge) => {
92
+ let match = edge?.id === undefined || edge?.id === null ? undefined : byId.get(edge.id);
93
+ if (!match) {
94
+ const key = pairKey(edge);
95
+ const candidates = byPair.get(key) ?? [];
96
+ const index = consumed.get(key) ?? 0;
97
+ consumed.set(key, index + 1);
98
+ if (candidates.length > 1)
99
+ ambiguous = true;
100
+ match = candidates[index];
101
+ }
102
+ if (!match)
103
+ return edge;
104
+ const sourceHandle = match.sourceHandle ?? null;
105
+ const branch = typeof sourceHandle === 'string' ? /^output-(.+)$/.exec(sourceHandle) : null;
106
+ return { ...edge, sourceHandle, ...(branch ? { branchId: branch[1] } : {}) };
107
+ });
108
+ return { edges: merged, ambiguous };
109
+ };
61
110
  export const resolveFlowInputDisplayName = (displayName, legacyName) => {
62
111
  const value = String(displayName ?? legacyName ?? '').trim();
63
112
  if (!value) {
@@ -135,7 +184,25 @@ export const registerFlow = (program) => {
135
184
  const data = await api.tool(workflowId, 'get_flow', { flowId });
136
185
  const hasEnrichableInput = Array.isArray(data?.flowInputs) &&
137
186
  data.flowInputs.some((input) => input?.id !== null && input?.id !== undefined);
138
- const result = enrichFlowInputNames(data, hasEnrichableInput ? await persistedFlowInputs(api, workflowId, flowId) : undefined);
187
+ const hasEdges = Array.isArray(data?.edges) && data.edges.length > 0;
188
+ // Both enrichments read the same raw document; read it once.
189
+ const persisted = hasEnrichableInput || hasEdges
190
+ ? await readPersistedFlow(api, workflowId, flowId).catch(() => undefined)
191
+ : undefined;
192
+ const rawInputs = Array.isArray(persisted?.flowInputs) ? persisted.flowInputs : undefined;
193
+ if (hasEnrichableInput && rawInputs === undefined)
194
+ warn(FLOW_INPUT_NAME_UNAVAILABLE_WARNING);
195
+ const rawEdges = Array.isArray(persisted?.edges) ? persisted.edges : undefined;
196
+ if (hasEdges && rawEdges === undefined)
197
+ warn(EDGE_HANDLE_UNAVAILABLE_WARNING);
198
+ const withInputNames = enrichFlowInputNames(data, rawInputs);
199
+ let result = withInputNames;
200
+ if (hasEdges && rawEdges) {
201
+ const merged = mergeEdgeSourceHandles(withInputNames.edges, rawEdges);
202
+ if (merged.ambiguous)
203
+ warn(EDGE_HANDLE_AMBIGUOUS_WARNING);
204
+ result = { ...withInputNames, edges: merged.edges };
205
+ }
139
206
  emit(result, () => {
140
207
  printKeyValues([
141
208
  ['flow', `${result.id ?? flowId} — ${result.name ?? ''}`],
@@ -362,10 +429,11 @@ export const registerFlow = (program) => {
362
429
  flow
363
430
  .command('for-each')
364
431
  .requiredOption('--flow <flowId>', 'parent flow holding the list-producing node')
365
- .requiredOption('--from <nodeId>', 'node whose output carries the list')
366
- .requiredOption('--source-output <outputId>', 'exact opaque outputs[].id from `cai node get <nodeId> --json`; never a label')
432
+ .option('--from <nodeId>', 'node whose output carries the list; optional with --list-js')
433
+ .option('--source-output <outputId>', 'exact opaque outputs[].id from `cai node get <nodeId> --json`; never a label')
367
434
  .requiredOption('--name <bodyFlowName>', 'name for the new per-item flow')
368
- .requiredOption('--item-type <type>', 'one item: a primitive (text|number|date|boolean) or an existing/new custom.* type')
435
+ .requiredOption('--item-type <type>', 'one item: a primitive (text|number|date|boolean), an existing/new custom.* type, ' +
436
+ 'or a dataRecord.custom.* record')
369
437
  .option('--item-field <id:type[:display]>', 'field of a NEW custom item type; repeatable. Omit to reuse an existing custom type', (value, previous = []) => [...previous, value])
370
438
  .option('--list-js <expr>', 'JS selecting the list from the wired input')
371
439
  .option('--js-file <path|->', 'read the list-selection JS from a UTF-8 file or stdin')
@@ -377,14 +445,35 @@ export const registerFlow = (program) => {
377
445
  .action(async (opts, command) => {
378
446
  let listJs = resolveJsSource({ js: opts.listJs, jsFile: opts.jsFile }, { required: false, inlineFlag: '--list-js' });
379
447
  const { api, workflowId } = requireContext(command);
380
- const isPrimitive = !opts.itemType.startsWith('custom.');
381
- if (isPrimitive && opts.itemField?.length) {
448
+ // Convenience only, keyed on the two namespaces the server treats as
449
+ // field-bearing item types. An unrecognized namespace is forwarded as-is
450
+ // so the server's own validation message is the one the caller reads.
451
+ const isCustomItemType = opts.itemType.startsWith('custom.') || opts.itemType.startsWith('dataRecord.custom.');
452
+ const isPrimitiveItemType = !isCustomItemType && !opts.itemType.includes('.');
453
+ if (opts.itemField?.length && isPrimitiveItemType) {
382
454
  throw userError(`--item-field is only for custom.* item types; "${opts.itemType}" is a primitive, ` +
383
455
  'and a list of plain values needs no wrapper type.', 'FIELDS_ON_PRIMITIVE');
384
456
  }
385
457
  if (listJs !== undefined && opts.listField) {
386
458
  throw userError('--list-field is mutually exclusive with --list-js and --js-file.', 'CONFLICTING_LIST_PATH');
387
459
  }
460
+ // The list comes either from a node output (--from + --source-output, and
461
+ // --list-field resolves its path against that node) or from an expression.
462
+ // Only the expression path can stand alone.
463
+ if (opts.listField || listJs === undefined) {
464
+ const missing = [
465
+ ...(opts.from ? [] : ['--from']),
466
+ ...(opts.sourceOutput ? [] : ['--source-output']),
467
+ ];
468
+ if (missing.length > 0) {
469
+ const subject = `${missing.join(' and ')} ${missing.length === 1 ? 'is' : 'are'} required`;
470
+ throw userError(opts.listField
471
+ ? `--list-field builds its path from the source node's output, so ${subject}. ` +
472
+ 'Use --list-js instead to select the list with a standalone expression.'
473
+ : `${subject} to take the list from a node output; pass --list-js or --js-file ` +
474
+ 'to select the list with an expression instead.', 'MISSING_LIST_SOURCE');
475
+ }
476
+ }
388
477
  if (opts.listField) {
389
478
  const source = await api.tool(workflowId, 'get_node', { nodeId: opts.from });
390
479
  const sourceOutput = selectSourceOutput(opts.from, source, opts.sourceOutput);
@@ -399,8 +488,10 @@ export const registerFlow = (program) => {
399
488
  const maxItems = parseLoopMaxItems(opts.maxItems);
400
489
  const data = await api.mutate(workflowId, () => api.tool(workflowId, 'scaffold_for_each', {
401
490
  flowId: opts.flow,
402
- sourceNodeId: opts.from,
403
- sourceOutputId: opts.sourceOutput,
491
+ // Absent on the pure --list-js path. Sending explicit undefined would
492
+ // still serialize the keys out, so omit them.
493
+ ...(opts.from ? { sourceNodeId: opts.from } : {}),
494
+ ...(opts.sourceOutput ? { sourceOutputId: opts.sourceOutput } : {}),
404
495
  bodyFlowName: opts.name,
405
496
  itemType: {
406
497
  name: opts.itemType,
@@ -530,13 +621,30 @@ export const registerFlow = (program) => {
530
621
  .option('--display <name>', 'new human label; recomputes jsBinding while legacyBinding stays diagnostic')
531
622
  .option('--type <ctype>')
532
623
  .option('--description <text>')
624
+ .option('--optional', 'the input may be omitted by callers')
625
+ .option('--required', 'the input must be supplied by callers')
626
+ .option('--default-value <literal>', 'stored default metadata (JSON when it parses, else a string); an omitted optional input ' +
627
+ 'still resolves to null at run time')
533
628
  .description('Update a flow input')
534
629
  .action(async (flowId, opts, command) => {
535
630
  const { api, workflowId } = requireContext(command);
536
631
  const displayName = opts.display ?? opts.name;
537
- if (!displayName && !opts.type && !opts.description) {
538
- throw userError('Pass at least one of --display, --type, or --description. --name is a legacy alias ' +
539
- 'for --display; display changes recompute compiler-current jsBinding.', 'NO_FLOW_INPUT_UPDATE');
632
+ if (opts.optional && opts.required) {
633
+ throw userError('--optional and --required are mutually exclusive; nothing was written.', 'CONFLICTING_FLOW_INPUT_OPTIONAL');
634
+ }
635
+ // Absent must stay `undefined` so the update leaves the persisted flag
636
+ // alone; `input add` can default to false only because it creates the row.
637
+ const optional = opts.optional ? true : opts.required ? false : undefined;
638
+ const hasDefaultValue = opts.defaultValue !== undefined;
639
+ const defaultValue = hasDefaultValue ? parseLiteral(String(opts.defaultValue)) : undefined;
640
+ if (!displayName &&
641
+ !opts.type &&
642
+ !opts.description &&
643
+ optional === undefined &&
644
+ !hasDefaultValue) {
645
+ throw userError('Pass at least one of --display, --type, --description, --optional/--required, or ' +
646
+ '--default-value. --name is a legacy alias for --display; display changes recompute ' +
647
+ 'compiler-current jsBinding.', 'NO_FLOW_INPUT_UPDATE');
540
648
  }
541
649
  const data = await api.mutate(workflowId, () => api.tool(workflowId, 'update_flow_input', {
542
650
  flowId,
@@ -544,6 +652,8 @@ export const registerFlow = (program) => {
544
652
  ...(displayName ? { displayName } : {}),
545
653
  ...(opts.type ? { dataType: opts.type } : {}),
546
654
  ...(opts.description ? { description: opts.description } : {}),
655
+ ...(optional !== undefined ? { optional } : {}),
656
+ ...(hasDefaultValue ? { defaultValue } : {}),
547
657
  }));
548
658
  const flowState = await api.tool(workflowId, 'get_flow', { flowId });
549
659
  const flowInput = (flowState?.flowInputs ?? []).find((item) => item.id === opts.input);
@@ -553,11 +663,18 @@ export const registerFlow = (program) => {
553
663
  flowInput: flowInput ?? null,
554
664
  jsBinding: flowInput?.jsBinding ?? flowInput?.name ?? null,
555
665
  };
556
- emit(result, () => printKeyValues([
557
- ['updated', opts.input],
558
- ['displayName', flowInput?.displayName ?? displayName ?? '-'],
559
- ['jsBinding', result.jsBinding ?? '(read with expr context)'],
560
- ]));
666
+ emit(result, () => {
667
+ const rows = [
668
+ ['updated', opts.input],
669
+ ['displayName', flowInput?.displayName ?? displayName ?? '-'],
670
+ ['jsBinding', result.jsBinding ?? '(read with expr context)'],
671
+ ];
672
+ if (optional !== undefined)
673
+ rows.push(['optional', flowInput?.optional ?? optional]);
674
+ if (hasDefaultValue)
675
+ rows.push(['defaultValue', flowInput?.defaultValue ?? defaultValue]);
676
+ printKeyValues(rows);
677
+ });
561
678
  });
562
679
  input
563
680
  .command('delete')
@@ -1 +1 @@
1
- {"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/commands/flow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/commands/flow.ts"],"names":[],"mappings":"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"}
@@ -199,6 +199,35 @@ export const readNodeOutputSample = (source, reader = readUtf8) => {
199
199
  }
200
200
  return sample;
201
201
  };
202
+ /**
203
+ * Escape hatch for expression shapes the DSL cannot author — advanced
204
+ * constraints, injected chips, loop traversals. `update_node_prop.value`
205
+ * accepts a complete raw expression object, and the server validates it, so the
206
+ * CLI only guarantees that what it forwards is parsed JSON of a plausible shape.
207
+ */
208
+ export const readRawExpressionJson = (source, reader = readUtf8) => {
209
+ let raw;
210
+ try {
211
+ raw = reader(source === '-' ? 0 : source, 'utf8');
212
+ }
213
+ catch (error) {
214
+ throw userError(`--raw-expression-json "${source}" is not a readable UTF-8 file: ` +
215
+ `${error instanceof Error ? error.message : error}; nothing was written.`, 'BAD_RAW_EXPRESSION');
216
+ }
217
+ let value;
218
+ try {
219
+ value = JSON.parse(raw);
220
+ }
221
+ catch (error) {
222
+ throw userError(`--raw-expression-json must contain valid JSON: ` +
223
+ `${error instanceof Error ? error.message : error}; nothing was written.`, 'BAD_RAW_EXPRESSION');
224
+ }
225
+ if (value === null || typeof value !== 'object') {
226
+ throw userError('--raw-expression-json must contain a raw expression object or array, not a bare scalar. ' +
227
+ 'Use --value <literal> for a static scalar; nothing was written.', 'BAD_RAW_EXPRESSION');
228
+ }
229
+ return value;
230
+ };
202
231
  const nodeProcessOutput = (record) => record.processOutput ?? record.data?.processOutput;
203
232
  const renderNodeOutputType = (dataType, declared) => declared && typeof dataType === 'string'
204
233
  ? `${dataType} (declared — unverified)`
@@ -927,28 +956,44 @@ export const registerNode = (program) => {
927
956
  .option('--value <literal>', 'static value (JSON when it parses, else a string)')
928
957
  .option('--js <src>', 'expression DSL source, compiled server-side before writing')
929
958
  .option('--js-file <path|->', 'read expression DSL source from a UTF-8 file or stdin')
959
+ .option('--raw-expression-json <path|->', 'raw expression object as JSON from a UTF-8 file or stdin, written verbatim — the escape ' +
960
+ 'hatch for advanced constraints, injected chips, and loop traversals the DSL cannot author')
930
961
  .option('--label <labels...>', 'live option label(s), one per value; used to search providers that do not index opaque ids')
931
962
  .option('--expression', 'deprecated compatibility flag; storage is selected automatically', false)
932
963
  .description('Set a prop, selecting and verifying the correct storage shape automatically')
933
964
  .action(async (nodeId, opts, command) => {
934
965
  const js = resolveJsSource(opts, { required: false });
966
+ // Decide the conflict from flag PRESENCE, before the file is read, so a
967
+ // contradictory invocation reports the contradiction rather than an
968
+ // unreadable path.
969
+ if (opts.rawExpressionJson !== undefined && (js !== undefined || opts.value !== undefined)) {
970
+ throw userError('--raw-expression-json is mutually exclusive with --value, --js, and --js-file; ' +
971
+ 'nothing was written.', 'CONFLICTING_VALUE');
972
+ }
973
+ const rawExpression = opts.rawExpressionJson === undefined
974
+ ? undefined
975
+ : readRawExpressionJson(String(opts.rawExpressionJson));
935
976
  const { api, workflowId } = requireContext(command);
936
- if (js === undefined && opts.value === undefined) {
937
- throw userError('Pass --value <literal>, --js <expression>, or --js-file <path|->.', 'MISSING_VALUE');
977
+ if (js === undefined && opts.value === undefined && rawExpression === undefined) {
978
+ throw userError('Pass --value <literal>, --js <expression>, --js-file <path|->, or ' +
979
+ '--raw-expression-json <path|->.', 'MISSING_VALUE');
938
980
  }
939
981
  if (js !== undefined && opts.value !== undefined) {
940
982
  throw userError('--value is mutually exclusive with --js and --js-file.', 'CONFLICTING_VALUE');
941
983
  }
942
984
  let compiledJs = js;
943
985
  const prop = (await prepareWritableProp(api, workflowId, nodeId, opts.prop, candidate => {
944
- if (compiledJs === undefined && String(candidate.inputType ?? '') === 'CUSTOM_DATA') {
986
+ if (compiledJs === undefined &&
987
+ rawExpression === undefined &&
988
+ String(candidate.inputType ?? '') === 'CUSTOM_DATA') {
945
989
  const literal = parseLiteral(opts.value);
946
990
  const supported = typeof literal === 'string' ||
947
991
  typeof literal === 'boolean' ||
948
992
  (typeof literal === 'number' && Number.isFinite(literal));
949
993
  if (!supported) {
950
994
  throw userError(`--value for CUSTOM_DATA only supports string, finite number, or boolean literals. ` +
951
- 'Use a typed --js expression for null, arrays, or objects; nothing was written.', 'CUSTOM_DATA_LITERAL_UNSUPPORTED');
995
+ 'Use --raw-expression-json <file> to write a raw expression object, or a typed ' +
996
+ '--js expression; nothing was written.', 'CUSTOM_DATA_LITERAL_UNSUPPORTED');
952
997
  }
953
998
  compiledJs = JSON.stringify(literal);
954
999
  }
@@ -986,6 +1031,12 @@ export const registerNode = (program) => {
986
1031
  // into value or expressionValue as appropriate.
987
1032
  payload.valueJs = compiledJs;
988
1033
  }
1034
+ else if (rawExpression !== undefined) {
1035
+ // Deliberately unparsed and unvalidated client-side: this channel exists
1036
+ // precisely for expression shapes the CLI cannot model. The server is
1037
+ // the validator.
1038
+ payload.value = rawExpression;
1039
+ }
989
1040
  else if (isTextExpressionBackedProp(prop)) {
990
1041
  // These props persist as a TextExpression wrapping the raw TEXT. The backend does
991
1042
  // that wrapping only when it receives a string — hand it a parsed object and it
@@ -1011,7 +1062,7 @@ export const registerNode = (program) => {
1011
1062
  // caller-supplied --label is used only as the search query; the returned value must still
1012
1063
  // match before anything is persisted.
1013
1064
  let skippedDynamicOptionValidation = false;
1014
- if (compiledJs === undefined) {
1065
+ if (compiledJs === undefined && rawExpression === undefined) {
1015
1066
  const selected = Array.isArray(payload.value) ? payload.value : [payload.value];
1016
1067
  const metadataBlockedBy = typeof prop.blockedBy === 'string' && prop.blockedBy.trim()
1017
1068
  ? prop.blockedBy.trim()
@@ -1111,13 +1162,21 @@ export const registerNode = (program) => {
1111
1162
  if (compiledJs === undefined && readback?.value === undefined) {
1112
1163
  throw userError(`The write returned successfully but ${opts.prop}.value did not read back.`, 'READBACK_MISMATCH');
1113
1164
  }
1114
- const mode = js !== undefined ? 'js' : compiledJs !== undefined ? 'literal (compiled)' : 'static';
1165
+ const mode = js !== undefined
1166
+ ? 'js'
1167
+ : compiledJs !== undefined
1168
+ ? 'literal (compiled)'
1169
+ : rawExpression !== undefined
1170
+ ? 'raw expression'
1171
+ : 'static';
1115
1172
  const humanMode = js !== undefined ? 'expression (compiled)' : mode;
1116
1173
  const source = js !== undefined
1117
1174
  ? 'explicit --js'
1118
1175
  : compiledJs !== undefined
1119
1176
  ? 'synthesized from --value'
1120
- : 'explicit --value';
1177
+ : rawExpression !== undefined
1178
+ ? 'explicit --raw-expression-json'
1179
+ : 'explicit --value';
1121
1180
  const rawDynamicSelectorNote = result && typeof result === 'object' && !Array.isArray(result)
1122
1181
  ? result.dynamicSelectorNote
1123
1182
  : undefined;