MCPcopy
hub / github.com/coder/mux / formatSendMessageError

Function formatSendMessageError

src/node/services/utils/sendMessageError.ts:46–122  ·  view source on GitHub ↗
(
  error: SendMessageError
)

Source from the content-addressed store, hash-verified

44 * for display in the chat UI as a stream-error event.
45 */
46export const formatSendMessageError = (
47 error: SendMessageError
48): { message: string; errorType: StreamErrorType } => {
49 switch (error.type) {
50 case "api_key_not_found": {
51 const displayName = getProviderDisplayName(error.provider);
52 return {
53 message: `API key not configured for ${displayName}. Please add your API key in settings.`,
54 errorType: "authentication",
55 };
56 }
57 case "oauth_not_connected": {
58 const displayName = getProviderDisplayName(error.provider);
59 return {
60 message:
61 `OAuth not connected for ${displayName}. ` +
62 `Please connect your account in Settings → Providers.`,
63 errorType: "authentication",
64 };
65 }
66 case "provider_disabled": {
67 const displayName = getProviderDisplayName(error.provider);
68 return {
69 message:
70 `Provider ${displayName} is disabled. ` +
71 `Enable it in Settings → Providers to send messages with this provider.`,
72 errorType: "authentication",
73 };
74 }
75 case "provider_not_supported": {
76 const displayName = getProviderDisplayName(error.provider);
77 return {
78 message: `Provider "${displayName}" is not supported.`,
79 errorType: "unknown",
80 };
81 }
82 case "model_not_available": {
83 const displayName = getProviderDisplayName(error.provider);
84 return {
85 message: `Model ${error.modelId} is not available for ${displayName}.`,
86 errorType: "model_not_found",
87 };
88 }
89 case "invalid_model_string":
90 return {
91 message: error.message,
92 errorType: "model_not_found",
93 };
94 case "incompatible_workspace":
95 return {
96 message: error.message,
97 errorType: "unknown",
98 };
99 case "runtime_not_ready":
100 return {
101 message:
102 `Workspace runtime unavailable: ${error.message}. ` +
103 `The container/workspace may have been removed or does not exist.`,

Callers 6

createWorkspaceTurnMethod · 0.90
createMethod · 0.90
streamMessageMethod · 0.90

Calls 1

getProviderDisplayNameFunction · 0.70

Tested by

no test coverage detected