Skip to content

Commit 1c3062d

Browse files
committed
fix: use PUT fallback for provider invalidation and clean up debug logs
1 parent f5da460 commit 1c3062d

2 files changed

Lines changed: 16 additions & 32 deletions

File tree

backend/app/utils/workforce.py

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -265,18 +265,10 @@ async def eigent_start(self, subtasks: list[Task]):
265265
# Push error event to SSE queue so frontend receives notification
266266
try:
267267
task_lock = get_task_lock(self.api_task_id)
268-
logger.info(
269-
f"[WF-LIFECYCLE] Pushing error to SSE queue, "
270-
f"task_lock={'found' if task_lock else 'None'}"
271-
)
272268
if task_lock is not None:
273269
message, error_code, _ = normalize_error_to_openai_format(
274270
e
275271
)
276-
logger.info(
277-
f"[WF-LIFECYCLE] Error normalized: "
278-
f"error_code={error_code}, message={message[:100]}"
279-
)
280272
await task_lock.put_queue(
281273
ActionErrorData(
282274
data={
@@ -285,9 +277,6 @@ async def eigent_start(self, subtasks: list[Task]):
285277
},
286278
)
287279
)
288-
logger.info(
289-
"[WF-LIFECYCLE] Error event pushed to SSE queue"
290-
)
291280
except Exception as queue_err:
292281
logger.error(
293282
"[WF-LIFECYCLE] Failed to push error to SSE queue: "

src/store/chatStore.ts

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ import {
1818
fetchPut,
1919
getBaseURL,
2020
proxyFetchGet,
21-
proxyFetchPatch,
2221
proxyFetchPost,
2322
proxyFetchPut,
2423
uploadFile,
@@ -2055,26 +2054,22 @@ const chatStore = (initial?: Partial<ChatStore>) =>
20552054
showModelErrorToast(errorMessage, errorCode);
20562055

20572056
// If API key is invalid, mark the provider as invalid on the server
2058-
if (errorCode === 'invalid_api_key' && preferredProviderId) {
2059-
proxyFetchPatch(
2060-
`/api/provider/${preferredProviderId}/invalidate`
2061-
).catch(() => {
2062-
// Fallback: PATCH endpoint may not be deployed yet,
2063-
// use PUT with full provider data to set is_vaild=1
2064-
if (preferredProvider) {
2065-
proxyFetchPut(`/api/provider/${preferredProviderId}`, {
2066-
provider_name: preferredProvider.provider_name,
2067-
model_type: preferredProvider.model_type,
2068-
api_key: preferredProvider.api_key,
2069-
endpoint_url: preferredProvider.endpoint_url || '',
2070-
encrypted_config: preferredProvider.encrypted_config,
2071-
is_vaild: 1,
2072-
prefer: preferredProvider.prefer ?? false,
2073-
}).catch((err: unknown) =>
2074-
console.error('Failed to invalidate provider:', err)
2075-
);
2076-
}
2077-
});
2057+
if (
2058+
errorCode === 'invalid_api_key' &&
2059+
preferredProviderId &&
2060+
preferredProvider
2061+
) {
2062+
proxyFetchPut(`/api/provider/${preferredProviderId}`, {
2063+
provider_name: preferredProvider.provider_name,
2064+
model_type: preferredProvider.model_type,
2065+
api_key: preferredProvider.api_key,
2066+
endpoint_url: preferredProvider.endpoint_url || '',
2067+
encrypted_config: preferredProvider.encrypted_config || null,
2068+
is_vaild: 1,
2069+
prefer: preferredProvider.prefer ?? false,
2070+
}).catch((err: unknown) =>
2071+
console.error('Failed to invalidate provider:', err)
2072+
);
20782073
}
20792074

20802075
// Mark all incomplete tasks as failed

0 commit comments

Comments
 (0)