fix(api): map upstream timeouts to 504 responses
This commit is contained in:
@@ -24,6 +24,13 @@ export type TModelPullProgress = (progress: {
|
||||
percent?: number;
|
||||
}) => void;
|
||||
|
||||
export class UpstreamTimeoutError extends Error {
|
||||
constructor(message: string = 'Upstream request timed out') {
|
||||
super(message);
|
||||
this.name = 'UpstreamTimeoutError';
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Abstract base class for AI model containers
|
||||
*/
|
||||
@@ -181,6 +188,11 @@ export abstract class BaseContainer {
|
||||
});
|
||||
|
||||
return response;
|
||||
} catch (error) {
|
||||
if (error instanceof Error && error.name === 'AbortError') {
|
||||
throw new UpstreamTimeoutError();
|
||||
}
|
||||
throw error;
|
||||
} finally {
|
||||
clearTimeout(timeoutId);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user