@openai/agents-core
Version:
The OpenAI Agents SDK is a lightweight yet powerful framework for building multi-agent workflows.
66 lines • 2.67 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createInvalidToolInputFailure = createInvalidToolInputFailure;
exports.createInvalidToolInputDisposition = createInvalidToolInputDisposition;
exports.refreshInvalidToolInputFailure = refreshInvalidToolInputFailure;
exports.isRedactedInvalidToolInputError = isRedactedInvalidToolInputError;
exports.getInvalidToolInputFailure = getInvalidToolInputFailure;
const errors_1 = require("./errors.js");
const logger_1 = __importDefault(require("./logger.js"));
const redactedInvalidToolInputErrors = new WeakSet();
const invalidToolInputFailures = new WeakMap();
/**
* Constructs invalid tool input errors without retaining model-produced input
* or parser details when tool data is redacted.
*
* @internal
*/
function createInvalidToolInputFailure({ message, state, originalError, toolInvocation, disposition: requestedDisposition, fatal = false, }) {
const disposition = requestedDisposition ?? createInvalidToolInputDisposition();
if (logger_1.default.dontLogToolData) {
disposition.redacted = true;
}
const redacted = disposition.redacted;
const error = new errors_1.InvalidToolInputError(message, redacted ? undefined : state, redacted ? undefined : originalError, redacted ? undefined : toolInvocation);
if (redacted) {
redactedInvalidToolInputErrors.add(error);
}
const failure = {
error,
redacted,
disposition,
fatal,
};
invalidToolInputFailures.set(error, failure);
return failure;
}
/** @internal */
function createInvalidToolInputDisposition() {
return { redacted: logger_1.default.dontLogToolData };
}
/** @internal */
function refreshInvalidToolInputFailure(failure) {
if (logger_1.default.dontLogToolData) {
failure.disposition.redacted = true;
}
if (failure.disposition.redacted &&
!redactedInvalidToolInputErrors.has(failure.error)) {
failure.error = new errors_1.InvalidToolInputError(failure.error.message);
redactedInvalidToolInputErrors.add(failure.error);
invalidToolInputFailures.set(failure.error, failure);
}
failure.redacted = failure.disposition.redacted;
return failure.redacted;
}
/** @internal */
function isRedactedInvalidToolInputError(error) {
return redactedInvalidToolInputErrors.has(error);
}
/** @internal */
function getInvalidToolInputFailure(error) {
return invalidToolInputFailures.get(error);
}
//# sourceMappingURL=toolInputError.js.map