@forestadmin/workflow-executor 1.31.8 → 1.31.9
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.
|
@@ -25,6 +25,23 @@ Important rules:
|
|
|
25
25
|
- If neither the request nor the workflow context gives you a field's value, LEAVE IT OUT — never guess or assume.
|
|
26
26
|
- For Enum fields, use exactly one of the allowed values, otherwise leave the field out.
|
|
27
27
|
- Do not invent identifiers, dates, amounts, or file contents that are absent from both the request and the context.`;
|
|
28
|
+
function isMissing(value) {
|
|
29
|
+
return value === undefined || value === null || value === '';
|
|
30
|
+
}
|
|
31
|
+
// An empty list the AI sends is a deliberate answer (clear a checkbox group); one the agent sends back
|
|
32
|
+
// means it dropped the value.
|
|
33
|
+
function isEmptyValue(value) {
|
|
34
|
+
return isMissing(value) || (Array.isArray(value) && value.length === 0);
|
|
35
|
+
}
|
|
36
|
+
// An Enum value outside the options is rejected rather than kept: a field without a change hook
|
|
37
|
+
// keeps it as is, and the AI could never correct it once its options show up. Choice widgets are
|
|
38
|
+
// not checked, a dynamic-search dropdown only lists the current suggestions.
|
|
39
|
+
function isAmongOptions(field, value) {
|
|
40
|
+
if (!field.enumValues)
|
|
41
|
+
return true;
|
|
42
|
+
const candidates = Array.isArray(value) ? value : [value];
|
|
43
|
+
return candidates.every(candidate => field.enumValues.some(option => String(option) === String(candidate)));
|
|
44
|
+
}
|
|
28
45
|
class TriggerRecordActionStepExecutor extends record_step_executor_1.default {
|
|
29
46
|
// approvalRequest lives here, off the shared record builder; super spreads it onto the outcome.
|
|
30
47
|
buildOutcomeResult(outcome) {
|
|
@@ -133,6 +150,10 @@ class TriggerRecordActionStepExecutor extends record_step_executor_1.default {
|
|
|
133
150
|
}
|
|
134
151
|
// Full AI: submit if all required fields are filled, else fallback (pause) with what was filled.
|
|
135
152
|
if (!filledForm.canExecute) {
|
|
153
|
+
this.context.logger('Info', 'Full AI left required fields empty', {
|
|
154
|
+
...this.logCtx,
|
|
155
|
+
requiredFields: filledForm.requiredFields,
|
|
156
|
+
});
|
|
136
157
|
return this.pauseForConfirmation(target, reviewState, { reason: 'required-fields-missing' });
|
|
137
158
|
}
|
|
138
159
|
const values = Object.fromEntries(aiFilledValues.map(v => [v.field, v.value]));
|
|
@@ -178,11 +199,14 @@ class TriggerRecordActionStepExecutor extends record_step_executor_1.default {
|
|
|
178
199
|
// change hooks reveal dependent fields. Bounded by max iterations + no-progress detection so an
|
|
179
200
|
// oscillating dynamic form can't loop forever. Returns the values in fill order + the final form.
|
|
180
201
|
async fillFormWithAi(recordRef, action, initialForm, isGlobal) {
|
|
181
|
-
const MAX_ITERATIONS =
|
|
202
|
+
const MAX_ITERATIONS = 10;
|
|
182
203
|
const accumulator = {};
|
|
183
204
|
const ordered = [];
|
|
205
|
+
const refilledFields = new Set();
|
|
206
|
+
let fieldsShownToAi = new Set();
|
|
184
207
|
let form = initialForm;
|
|
185
|
-
|
|
208
|
+
let pass = 0;
|
|
209
|
+
for (; pass < MAX_ITERATIONS; pass += 1) {
|
|
186
210
|
// eslint-disable-next-line no-await-in-loop
|
|
187
211
|
const aiValues = await this.askAiToFillForm(form);
|
|
188
212
|
let progressed = false;
|
|
@@ -191,11 +215,22 @@ class TriggerRecordActionStepExecutor extends record_step_executor_1.default {
|
|
|
191
215
|
// replayed in fill order, so each pass is recorded in the form's order, not the AI's.
|
|
192
216
|
const valuesInFormOrder = Object.entries(aiValues).sort(([a], [b]) => formOrder.indexOf(a) - formOrder.indexOf(b));
|
|
193
217
|
for (const [field, value] of valuesInFormOrder) {
|
|
194
|
-
const
|
|
195
|
-
const
|
|
196
|
-
|
|
197
|
-
//
|
|
198
|
-
|
|
218
|
+
const formField = form.fields.find(f => f.name === field);
|
|
219
|
+
const filledByAi = Object.prototype.hasOwnProperty.call(accumulator, field);
|
|
220
|
+
// The AI gets one more try on a value the form no longer holds (emptied by the agent, or out of
|
|
221
|
+
// options a hook swapped); without that bound, such a hook would run the loop to the cap.
|
|
222
|
+
const noLongerHeld = formField !== undefined &&
|
|
223
|
+
(isEmptyValue(formField.value) || !isAmongOptions(formField, formField.value));
|
|
224
|
+
const reopened = filledByAi &&
|
|
225
|
+
noLongerHeld &&
|
|
226
|
+
!refilledFields.has(field) &&
|
|
227
|
+
!(0, util_1.isDeepStrictEqual)(accumulator[field], value);
|
|
228
|
+
if (!isMissing(value) &&
|
|
229
|
+
formField &&
|
|
230
|
+
isAmongOptions(formField, value) &&
|
|
231
|
+
(!filledByAi || reopened)) {
|
|
232
|
+
if (filledByAi)
|
|
233
|
+
refilledFields.add(field);
|
|
199
234
|
accumulator[field] = value;
|
|
200
235
|
ordered.push({ field, value });
|
|
201
236
|
progressed = true;
|
|
@@ -204,7 +239,8 @@ class TriggerRecordActionStepExecutor extends record_step_executor_1.default {
|
|
|
204
239
|
// No-progress guard: the AI added nothing new this pass → it has no more context to offer.
|
|
205
240
|
if (!progressed)
|
|
206
241
|
break;
|
|
207
|
-
const
|
|
242
|
+
const shownThisPass = new Set(form.fields.map(f => f.name));
|
|
243
|
+
fieldsShownToAi = shownThisPass;
|
|
208
244
|
// Re-apply so change hooks reveal/adjust dependent fields for the next pass.
|
|
209
245
|
// eslint-disable-next-line no-await-in-loop
|
|
210
246
|
form = await this.context.agent.getActionForm({
|
|
@@ -213,10 +249,20 @@ class TriggerRecordActionStepExecutor extends record_step_executor_1.default {
|
|
|
213
249
|
...(isGlobal ? {} : { id: recordRef.recordId }),
|
|
214
250
|
values: accumulator,
|
|
215
251
|
});
|
|
216
|
-
const revealedFields = form.fields.some(f => !
|
|
252
|
+
const revealedFields = form.fields.some(f => !shownThisPass.has(f.name));
|
|
217
253
|
if (form.canExecute && !revealedFields)
|
|
218
254
|
break;
|
|
219
255
|
}
|
|
256
|
+
if (pass === MAX_ITERATIONS) {
|
|
257
|
+
this.context.logger('Warn', 'AI form-fill stopped at the pass limit', {
|
|
258
|
+
...this.logCtx,
|
|
259
|
+
passes: MAX_ITERATIONS,
|
|
260
|
+
requiredFields: form.requiredFields,
|
|
261
|
+
fieldsNeverShownToAi: form.fields
|
|
262
|
+
.map(f => f.name)
|
|
263
|
+
.filter(name => !fieldsShownToAi.has(name)),
|
|
264
|
+
});
|
|
265
|
+
}
|
|
220
266
|
// Drop any value whose field no longer exists after the hooks (state drift) — fail-safe.
|
|
221
267
|
const finalFieldNames = new Set(form.fields.map(f => f.name));
|
|
222
268
|
const aiFilledValues = ordered.filter(v => finalFieldNames.has(v.field));
|
|
@@ -434,4 +480,4 @@ class TriggerRecordActionStepExecutor extends record_step_executor_1.default {
|
|
|
434
480
|
}
|
|
435
481
|
}
|
|
436
482
|
exports.default = TriggerRecordActionStepExecutor;
|
|
437
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpZ2dlci1yZWNvcmQtYWN0aW9uLXN0ZXAtZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXhlY3V0b3JzL3RyaWdnZXItcmVjb3JkLWFjdGlvbi1zdGVwLWV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBWUEsb0RBQTJGO0FBQzNGLCtCQUF5QztBQUN6Qyw2QkFBd0I7QUFFeEIsc0NBT21CO0FBQ25CLGtGQUF3RDtBQUN4RCx3RUFBdUU7QUFFdkUsTUFBTSw0QkFBNEIsR0FBRzs7Ozs7O3NGQU1pRCxDQUFDO0FBRXZGLE1BQU0sdUJBQXVCLEdBQUc7Ozs7Ozs7O3FIQVFxRixDQUFDO0FBUXRILE1BQXFCLCtCQUFnQyxTQUFRLDhCQUErQztJQUMxRyxnR0FBZ0c7SUFDN0Usa0JBQWtCLENBQUMsT0FNckM7UUFDQyxPQUFPLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRWtCLEtBQUssQ0FBQyxnQkFBZ0I7UUFDdkMsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQzlDLGdCQUFnQixDQUNqQixDQUFDO1FBRUYsSUFBSSxRQUFRLEVBQUUsZ0JBQWdCLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDMUMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQztZQUN4QyxNQUFNLGlCQUFpQixHQUNyQixNQUFNLElBQUksQ0FBQyxDQUFDLFNBQVMsSUFBSSxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsaUJBQWlCLEtBQUssa0JBQWtCLENBQUM7WUFDdEYsTUFBTSxlQUFlLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUUvRSxJQUFJLGlCQUFpQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFB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
|
|
483
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJpZ2dlci1yZWNvcmQtYWN0aW9uLXN0ZXAtZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXhlY3V0b3JzL3RyaWdnZXItcmVjb3JkLWFjdGlvbi1zdGVwLWV4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBWUEsb0RBQTJGO0FBQzNGLCtCQUF5QztBQUN6Qyw2QkFBd0I7QUFFeEIsc0NBT21CO0FBQ25CLGtGQUF3RDtBQUN4RCx3RUFBdUU7QUFFdkUsTUFBTSw0QkFBNEIsR0FBRzs7Ozs7O3NGQU1pRCxDQUFDO0FBRXZGLE1BQU0sdUJBQXVCLEdBQUc7Ozs7Ozs7O3FIQVFxRixDQUFDO0FBRXRILFNBQVMsU0FBUyxDQUFDLEtBQWM7SUFDL0IsT0FBTyxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQztBQUMvRCxDQUFDO0FBRUQsdUdBQXVHO0FBQ3ZHLDhCQUE4QjtBQUM5QixTQUFTLFlBQVksQ0FBQyxLQUFjO0lBQ2xDLE9BQU8sU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBQzFFLENBQUM7QUFFRCxnR0FBZ0c7QUFDaEcsaUdBQWlHO0FBQ2pHLDZFQUE2RTtBQUM3RSxTQUFTLGNBQWMsQ0FBQyxLQUFzQixFQUFFLEtBQWM7SUFDNUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFbkMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTFELE9BQU8sVUFBVSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUNs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
|