Skip to content

Commit b1b49b0

Browse files
committed
fix: align warning and action error classification
Addresses chatgpt-codex-connector[bot] P2 review feedback: The warning and action fields in buildMemorySearchUnavailableResult now use the same error classification logic (resolveEmbeddingErrorKind). Previously, warning used a regex that didn't include "rate limit", while action used resolveEmbeddingErrorHint which does include it, causing inconsistent diagnostics for "rate limit exceeded" errors. Now both fields correctly classify rate limit errors as quota failures, ensuring consistent messaging to users and callers. No functional changes to the actual remediation logic - purely fixing the internal consistency of warning text.
1 parent 45d7369 commit b1b49b0

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

extensions/memory-core/src/tools.shared.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,9 @@ function resolveEmbeddingErrorHint(error: string | undefined): string | undefine
166166

167167
export function buildMemorySearchUnavailableResult(error: string | undefined) {
168168
const reason = (error ?? "memory search unavailable").trim() || "memory search unavailable";
169-
const isQuotaError = /insufficient_quota|quota|429/.test(reason.toLowerCase());
169+
// Use resolveEmbeddingErrorKind for consistent classification across warning and action
170+
const kind = resolveEmbeddingErrorKind(reason);
171+
const isQuotaError = kind === "quota";
170172
const warning = isQuotaError
171173
? "Memory search is unavailable because the embedding provider quota is exhausted."
172174
: "Memory search is unavailable due to an embedding/provider error.";

0 commit comments

Comments
 (0)