feat(usage): wire force flag through client + usage route
Manual refresh (↻) sends ?force=1 so it bypasses the Claude quota cache (dedup + TTL) added in cd4003bc. Auto-refresh and multi-tab stays cached, so Anthropic's usage endpoint is no longer hammered.
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
1 parent
cd4003bc8b
commit
456f2a2635
2 files changed
+7
-5
No files matched your search
@@ -123,6 +123,7 @@ export async function GET(request, { params }) {
|
||||
let connection;
|
||||
try {
|
||||
const { connectionId } = await params;
|
||||
const force = new URL(request.url).searchParams.get("force") === "1";
|
||||
|
||||
|
||||
// Get connection from database
|
||||
@@ -168,7 +169,7 @@ export async function GET(request, { params }) {
|
||||
}
|
||||
|
||||
// Fetch usage from provider API
|
||||
let usage = await getUsageForProvider(connection, proxyOptions);
|
||||
let usage = await getUsageForProvider(connection, proxyOptions, { force });
|
||||
|
||||
// If provider returned an auth-expired message instead of throwing,
|
||||
// force-refresh token and retry once (OAuth only)
|
||||
@@ -176,7 +177,7 @@ export async function GET(request, { params }) {
|
||||
try {
|
||||
const retryResult = await refreshAndUpdateCredentials(connection, true, proxyOptions);
|
||||
connection = retryResult.connection;
|
||||
usage = await getUsageForProvider(connection, proxyOptions);
|
||||
usage = await getUsageForProvider(connection, proxyOptions, { force });
|
||||
} catch (retryError) {
|
||||
console.warn(`[Usage] ${connection.provider}: force refresh failed: ${retryError.message}`);
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user