mirror of
https://github.com/siteboon/claudecodeui.git
synced 2025-12-17 13:59:40 +00:00
fix(ui): stabilize token rate calculation in status component
Calculate token rate once per timing session instead of recalculating on every interval tick. This prevents the simulated token count from jumping erratically due to random value changes. Also remove noisy console warning in websocket utility that was cluttering development logs without providing actionable information.
This commit is contained in:
@@ -15,11 +15,14 @@ function ClaudeStatus({ status, onAbort, isLoading, provider = 'claude' }) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const startTime = Date.now();
|
const startTime = Date.now();
|
||||||
|
// Calculate random token rate once (30-50 tokens per second)
|
||||||
|
const tokenRate = 30 + Math.random() * 20;
|
||||||
|
|
||||||
const timer = setInterval(() => {
|
const timer = setInterval(() => {
|
||||||
const elapsed = Math.floor((Date.now() - startTime) / 1000);
|
const elapsed = Math.floor((Date.now() - startTime) / 1000);
|
||||||
setElapsedTime(elapsed);
|
setElapsedTime(elapsed);
|
||||||
// Simulate token count increasing over time (roughly 30-50 tokens per second)
|
// Simulate token count increasing over time
|
||||||
setFakeTokens(Math.floor(elapsed * (30 + Math.random() * 20)));
|
setFakeTokens(Math.floor(elapsed * tokenRate));
|
||||||
}, 1000);
|
}, 1000);
|
||||||
|
|
||||||
return () => clearInterval(timer);
|
return () => clearInterval(timer);
|
||||||
|
|||||||
@@ -41,7 +41,6 @@ export function useWebSocket() {
|
|||||||
|
|
||||||
// If the config returns localhost but we're not on localhost, use current host but with API server port
|
// If the config returns localhost but we're not on localhost, use current host but with API server port
|
||||||
if (wsBaseUrl.includes('localhost') && !window.location.hostname.includes('localhost')) {
|
if (wsBaseUrl.includes('localhost') && !window.location.hostname.includes('localhost')) {
|
||||||
console.warn('Config returned localhost, using current host with API server port instead');
|
|
||||||
const protocol = window.location.protocol === 'https:' ? 'wss:' : 'ws:';
|
const protocol = window.location.protocol === 'https:' ? 'wss:' : 'ws:';
|
||||||
// For development, API server is typically on port 3002 when Vite is on 3001
|
// For development, API server is typically on port 3002 when Vite is on 3001
|
||||||
const apiPort = window.location.port === '3001' ? '3002' : window.location.port;
|
const apiPort = window.location.port === '3001' ? '3002' : window.location.port;
|
||||||
|
|||||||
Reference in New Issue
Block a user