paperclipai/paperclip · error · ToolGatewayHttpError
message
Error message
message
What it means
Not a literal throw message: this is the audit details block for tool_gateway.call_failed / call_deferred. The referenced field is the normalized error 'message' variable — the upstream/tool error text captured after a failed or deferred tool call, recorded with invocationId, reasonCode, durationMs, and execution audit metadata for diagnosis.
Solutions
- The tool call failed with the wrapped error message; address the reported cause (often a validation or provider error) and retry.
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at server/src/services/tool-gateway.ts:6017 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of paperclipai/paperclip@3f1d897a7c (2026-09-18).
Data as JSON: /api/errors/a9593674469a65cb.
Report an issue: GitHub.
Appendix: source
Thrown at server/src/services/tool-gateway.ts:10783
session: sessionLike,
companyId: input.runContext.companyId,
agentId: input.runContext.agentId,
runId: input.runContext.runId,
issueId: context.issueId,
action: "tool_gateway.call_failed",
details: {
invocationId,
decision: "deny",
reasonCode,
tool: input.tool,
...toolAuditMetadata(tool),
argumentsSummary: argumentValidation.summary,
durationMs: Date.now() - startedAt,
error: message,
},
});
if (err instanceof ToolContentValidationError) {
throw new ToolGatewayHttpError(422, message, reasonCode, {
findings: err.findings,
});
}
throw err;
}
},
async revokeSession(input: {
companyId: string;
sessionId: string;
revokedAt?: Date;
actor?: {
actorType?: LogActivityInput["actorType"];
actorId?: string;
agentId?: string | null;
runId?: string | null;
};
agentScope?: { agentId: string; runId?: string | null } | null;View on GitHub (pinned to 3f1d897a7c)