@agentica/core 0.37.0 → 0.38.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.
- package/lib/MicroAgentica.js +7 -6
- package/lib/MicroAgentica.js.map +1 -1
- package/lib/index.mjs +27 -16
- package/lib/index.mjs.map +1 -1
- package/lib/orchestrate/call.js +0 -4
- package/lib/orchestrate/call.js.map +1 -1
- package/lib/structures/IMicroAgenticaConfig.d.ts +4 -3
- package/lib/utils/JsonUtil.js +19 -5
- package/lib/utils/JsonUtil.js.map +1 -1
- package/package.json +1 -1
- package/src/MicroAgentica.ts +7 -5
- package/src/orchestrate/call.ts +0 -4
- package/src/structures/IMicroAgenticaConfig.ts +4 -3
- package/src/utils/JsonUtil.ts +29 -5
- package/lib/utils/stringifyValidateFailure.spec.d.ts +0 -1
- package/lib/utils/stringifyValidateFailure.spec.js +0 -921
- package/lib/utils/stringifyValidateFailure.spec.js.map +0 -1
- package/src/utils/stringifyValidateFailure.spec.ts +0 -1034
package/lib/MicroAgentica.js
CHANGED
|
@@ -142,13 +142,8 @@ class MicroAgentica {
|
|
|
142
142
|
abortSignal: options.abortSignal,
|
|
143
143
|
});
|
|
144
144
|
const executes = yield (0, orchestrate_1.call)(ctx, this.operations_.array);
|
|
145
|
-
if (((_a = this.props.config) === null || _a === void 0 ? void 0 : _a.throw) === true) {
|
|
146
|
-
for (const execute of executes) {
|
|
147
|
-
(0, assertExecuteFailure_1.assertExecuteFailure)(execute);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
145
|
// eslint-disable-next-line
|
|
151
|
-
if (executes.length && !!((
|
|
146
|
+
if (executes.length && !!((_b = (_a = this.props.config) === null || _a === void 0 ? void 0 : _a.executor) === null || _b === void 0 ? void 0 : _b.describe)) {
|
|
152
147
|
const func = typeof this.props.config.executor.describe === "function"
|
|
153
148
|
? this.props.config.executor.describe
|
|
154
149
|
: orchestrate_1.describe;
|
|
@@ -156,6 +151,12 @@ class MicroAgentica {
|
|
|
156
151
|
}
|
|
157
152
|
const completed = yield Promise.all(histories.map((h) => __awaiter(this, void 0, void 0, function* () { return h(); })));
|
|
158
153
|
this.histories_.push(...completed);
|
|
154
|
+
// throw exception about failed execution
|
|
155
|
+
if (((_c = this.props.config) === null || _c === void 0 ? void 0 : _c.throw) !== false) {
|
|
156
|
+
for (const execute of executes) {
|
|
157
|
+
(0, assertExecuteFailure_1.assertExecuteFailure)(execute);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
159
160
|
return completed;
|
|
160
161
|
});
|
|
161
162
|
}
|
package/lib/MicroAgentica.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MicroAgentica.js","sourceRoot":"","sources":["../src/MicroAgentica.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MicroAgentica.js","sourceRoot":"","sources":["../src/MicroAgentica.ts"],"names":[],"mappings":"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"}
|
package/lib/index.mjs
CHANGED
|
@@ -925,20 +925,27 @@ function parse(str) {
|
|
|
925
925
|
}
|
|
926
926
|
|
|
927
927
|
function stringifyValidateFailure(failure) {
|
|
928
|
-
|
|
928
|
+
const usedErrors = new Set;
|
|
929
|
+
const jsonOutput = stringify({
|
|
929
930
|
value: failure.data,
|
|
930
931
|
errors: failure.errors,
|
|
931
932
|
path: "$input",
|
|
932
933
|
tab: 0,
|
|
933
934
|
inArray: false,
|
|
934
|
-
inToJson: false
|
|
935
|
+
inToJson: false,
|
|
936
|
+
usedErrors
|
|
935
937
|
});
|
|
938
|
+
const unmappableErrors = failure.errors.filter((e => !usedErrors.has(e)));
|
|
939
|
+
if (unmappableErrors.length > 0) {
|
|
940
|
+
return `\`\`\`json\n${jsonOutput}\n\`\`\`\n\n**Unmappable validation errors:**\n\n\`\`\`json\n${JSON.stringify(unmappableErrors, null, 2)}\n\`\`\``;
|
|
941
|
+
}
|
|
942
|
+
return `\`\`\`json\n${jsonOutput}\n\`\`\``;
|
|
936
943
|
}
|
|
937
944
|
|
|
938
945
|
function stringify(props) {
|
|
939
|
-
const {value, errors, path, tab, inArray, inToJson} = props;
|
|
946
|
+
const {value, errors, path, tab, inArray, inToJson, usedErrors} = props;
|
|
940
947
|
const indent = " ".repeat(tab);
|
|
941
|
-
const errorComment = getErrorComment(path, errors);
|
|
948
|
+
const errorComment = getErrorComment(path, errors, usedErrors);
|
|
942
949
|
if (inArray && value === undefined) {
|
|
943
950
|
return `${indent}undefined${errorComment}`;
|
|
944
951
|
}
|
|
@@ -956,7 +963,8 @@ function stringify(props) {
|
|
|
956
963
|
path: itemPath,
|
|
957
964
|
tab: tab + 1,
|
|
958
965
|
inArray: true,
|
|
959
|
-
inToJson: false
|
|
966
|
+
inToJson: false,
|
|
967
|
+
usedErrors
|
|
960
968
|
});
|
|
961
969
|
if (index < value.length - 1) {
|
|
962
970
|
const itemLines = itemStr.split("\n");
|
|
@@ -983,7 +991,8 @@ function stringify(props) {
|
|
|
983
991
|
path,
|
|
984
992
|
tab,
|
|
985
993
|
inArray,
|
|
986
|
-
inToJson: true
|
|
994
|
+
inToJson: true,
|
|
995
|
+
usedErrors
|
|
987
996
|
});
|
|
988
997
|
}
|
|
989
998
|
const existingEntries = Object.entries(value).filter((([_, val]) => val !== undefined));
|
|
@@ -999,7 +1008,7 @@ function stringify(props) {
|
|
|
999
1008
|
const propIndent = " ".repeat(tab + 1);
|
|
1000
1009
|
const val = missingKeys.includes(key) ? undefined : value[key];
|
|
1001
1010
|
if (val === undefined || val === null || typeof val === "boolean" || typeof val === "number" || typeof val === "string") {
|
|
1002
|
-
const propErrorComment = getErrorComment(propPath, errors);
|
|
1011
|
+
const propErrorComment = getErrorComment(propPath, errors, usedErrors);
|
|
1003
1012
|
const valueStr = val === undefined ? `${propIndent}"${key}": undefined` : `${propIndent}"${key}": ${JSON.stringify(val)}`;
|
|
1004
1013
|
const withComma = index < array.length - 1 ? `${valueStr},` : valueStr;
|
|
1005
1014
|
const line = withComma + propErrorComment;
|
|
@@ -1012,7 +1021,8 @@ function stringify(props) {
|
|
|
1012
1021
|
path: propPath,
|
|
1013
1022
|
tab: tab + 1,
|
|
1014
1023
|
inArray: false,
|
|
1015
|
-
inToJson: false
|
|
1024
|
+
inToJson: false,
|
|
1025
|
+
usedErrors
|
|
1016
1026
|
});
|
|
1017
1027
|
const valStrWithoutIndent = valStr.trimStart();
|
|
1018
1028
|
if (index < array.length - 1) {
|
|
@@ -1039,11 +1049,12 @@ function stringify(props) {
|
|
|
1039
1049
|
return `${indent}${valStr}${errorComment}`;
|
|
1040
1050
|
}
|
|
1041
1051
|
|
|
1042
|
-
function getErrorComment(path, errors) {
|
|
1052
|
+
function getErrorComment(path, errors, usedErrors) {
|
|
1043
1053
|
const pathErrors = errors.filter((e => e.path === path));
|
|
1044
1054
|
if (pathErrors.length === 0) {
|
|
1045
1055
|
return "";
|
|
1046
1056
|
}
|
|
1057
|
+
pathErrors.forEach((e => usedErrors.add(e)));
|
|
1047
1058
|
return ` // ❌ ${JSON.stringify(pathErrors.map((e => ({
|
|
1048
1059
|
path: e.path,
|
|
1049
1060
|
expected: e.expected,
|
|
@@ -1647,9 +1658,9 @@ async function correctTypeError(ctx, callEvent, validateEvent, previousValidatio
|
|
|
1647
1658
|
toolCall: {
|
|
1648
1659
|
id: callEvent.id,
|
|
1649
1660
|
arguments: JSON.stringify(callEvent.arguments),
|
|
1650
|
-
result: [ "🚨 VALIDATION FAILURE: Your function arguments do not conform to the required schema.", "", "The validation errors below represent computed absolute truth from rigorous type validation.", "Each error is marked with ❌ comments showing the exact location, expected type, and actual value.", "", "You must fix ALL errors to achieve 100% schema compliance.", "",
|
|
1661
|
+
result: [ "🚨 VALIDATION FAILURE: Your function arguments do not conform to the required schema.", "", "The validation errors below represent computed absolute truth from rigorous type validation.", "Each error is marked with ❌ comments showing the exact location, expected type, and actual value.", "", "You must fix ALL errors to achieve 100% schema compliance.", "", JsonUtil.stringifyValidateFailure(validateEvent.result) ].join("\n")
|
|
1651
1662
|
},
|
|
1652
|
-
systemPrompt: ctx.config?.systemPrompt?.validate?.(previousValidationErrors.slice(0, -1)) ?? [ AgenticaSystemPrompt.VALIDATE, ...previousValidationErrors.length > 1 ? [ "", AgenticaSystemPrompt.VALIDATE_REPEATED.replace("${{HISTORICAL_ERRORS}}", previousValidationErrors.slice(0, -1).map(((ve, i) => [ `### ${i + 1}. Previous Validation Error`, "",
|
|
1663
|
+
systemPrompt: ctx.config?.systemPrompt?.validate?.(previousValidationErrors.slice(0, -1)) ?? [ AgenticaSystemPrompt.VALIDATE, ...previousValidationErrors.length > 1 ? [ "", AgenticaSystemPrompt.VALIDATE_REPEATED.replace("${{HISTORICAL_ERRORS}}", previousValidationErrors.slice(0, -1).map(((ve, i) => [ `### ${i + 1}. Previous Validation Error`, "", JsonUtil.stringifyValidateFailure(ve.result) ].join("\n"))).join("\n\n")) ] : [] ].join("\n"),
|
|
1653
1664
|
life,
|
|
1654
1665
|
previousValidationErrors
|
|
1655
1666
|
});
|
|
@@ -45392,17 +45403,17 @@ class MicroAgentica {
|
|
|
45392
45403
|
abortSignal: options.abortSignal
|
|
45393
45404
|
});
|
|
45394
45405
|
const executes = await call(ctx, this.operations_.array);
|
|
45395
|
-
if (this.props.config?.throw === true) {
|
|
45396
|
-
for (const execute of executes) {
|
|
45397
|
-
assertExecuteFailure(execute);
|
|
45398
|
-
}
|
|
45399
|
-
}
|
|
45400
45406
|
if (executes.length && !!this.props.config?.executor?.describe) {
|
|
45401
45407
|
const func = typeof this.props.config.executor.describe === "function" ? this.props.config.executor.describe : describe;
|
|
45402
45408
|
await func(ctx, executes);
|
|
45403
45409
|
}
|
|
45404
45410
|
const completed = await Promise.all(histories.map((async h => h())));
|
|
45405
45411
|
this.histories_.push(...completed);
|
|
45412
|
+
if (this.props.config?.throw !== false) {
|
|
45413
|
+
for (const execute of executes) {
|
|
45414
|
+
assertExecuteFailure(execute);
|
|
45415
|
+
}
|
|
45416
|
+
}
|
|
45406
45417
|
return completed;
|
|
45407
45418
|
}
|
|
45408
45419
|
getConfig() {
|