earendil-works/pi · error
${error.code || "unknown"}: ${error.message || "no message"}
Error message
${error.code || "unknown"}: ${error.message || "no message"} What it means
Error "${error.code || "unknown"}: ${error.message || "no message"}" thrown in earendil-works/pi.
Source
Thrown at packages/ai/src/api/openai-responses-shared.ts:754
partial: output,
});
outputSlots.delete(event.output_index);
}
} else if (event.type === "response.completed" || event.type === "response.incomplete") {
finalizeResponse(event.response);
} else if (event.type === "error") {
throw new Error(`Error Code ${event.code}: ${event.message}` || "Unknown error");
} else if (event.type === "response.failed") {
sawTerminalResponseEvent = true;
output.rawStopReason = event.response?.status;
const error = event.response?.error;
const details = event.response?.incomplete_details;
const msg = error
? `${error.code || "unknown"}: ${error.message || "no message"}`
: details?.reason
? `incomplete: ${details.reason}`
: "Unknown error (no error details in response)";
throw new Error(msg);
}
}
if (!sawTerminalResponseEvent) {
throw new Error("OpenAI Responses stream ended before a terminal response event");
}
}
function mapStopReason(
status: OpenAI.Responses.ResponseStatus | undefined,
incompleteReason?: string,
): { stopReason: StopReason; errorMessage?: string } {
if (!status) return { stopReason: "stop" };
switch (status) {
case "completed":
return { stopReason: "stop" };
case "incomplete":
if (incompleteReason === "max_output_tokens") {
return { stopReason: "length" };View on GitHub (pinned to 4af9d21d3b)
Solutions
- Inspect error.code and error.message in the stream event for the failure detail.
When it happens
Trigger: Thrown at packages/ai/src/api/openai-responses-shared.ts:754 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of earendil-works/pi@4af9d21d3b (2026-08-24).
Data as JSON: /api/errors/773260dd14706284.
Report an issue: GitHub.