fix: refactored linter errors

This commit is contained in:
Bohdan Triapitsyn
2025-12-25 02:55:08 +02:00
parent 5e6e6a91cf
commit 3c05fa4c4e
7 changed files with 18 additions and 20 deletions
+8
View File
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file.
## [Unreleased] ## [Unreleased]
- Updated OpenCode SDK to 1.0.185 across all app versions.
- VS Code extension: fixed startup, more reliable OpenCode CLI/API management, and stabilized API proxying/streaming.
- VS Code extension: added an animated loading screen and introduced command for status/debug output.
- Fixed session activity tracking so it correctly handles transitions through states (including worktree sessions).
- Fixed directory path handling (including `~` expansion) to prevent invalid paths and related Git/worktree errors.
- Chat UI: improved turn grouping/activity rendering and fixed message metadata/agent selection propagation.
- Chat UI: improved agent activity status behavior and reduced image thumbnail sizes for better readability.
## [1.3.2] - 2025-12-22 ## [1.3.2] - 2025-12-22
@@ -456,7 +456,7 @@ export const useTurnGrouping = (messages: ChatMessageEntry[]): UseTurnGroupingRe
next.set(turnId, { ...state, previewedPartIds: newPreviewed }); next.set(turnId, { ...state, previewedPartIds: newPreviewed });
return next; return next;
}); });
}, []); }, [defaultActivityExpanded]);
const getTurnForMessage = React.useCallback( const getTurnForMessage = React.useCallback(
(messageId: string): Turn | undefined => { (messageId: string): Turn | undefined => {
@@ -304,15 +304,12 @@ const AssistantMessageBody: React.FC<Omit<MessageBodyProps, 'isUser'>> = ({
syntaxTheme, syntaxTheme,
isMobile, isMobile,
hasTouchInput, hasTouchInput,
copiedCode,
onCopyCode,
expandedTools, expandedTools,
onToggleTool, onToggleTool,
onShowPopup, onShowPopup,
streamPhase: _streamPhase, streamPhase: _streamPhase,
allowAnimation: _allowAnimation, allowAnimation: _allowAnimation,
onContentChange, onContentChange,
shouldShowHeader = true,
hasTextContent = false, hasTextContent = false,
onCopyMessage, onCopyMessage,
copiedMessage = false, copiedMessage = false,
@@ -1013,17 +1010,12 @@ const AssistantMessageBody: React.FC<Omit<MessageBodyProps, 'isUser'>> = ({
}, [ }, [
activityPartsByPart, activityPartsByPart,
activityGroupSegmentsForMessage, activityGroupSegmentsForMessage,
copiedCode,
copiedMessage,
expandedTools, expandedTools,
hasTextContent,
isMessageAnimating, isMessageAnimating,
isMobile, isMobile,
isToolFinalized, isToolFinalized,
messageId, messageId,
onContentChange, onContentChange,
onCopyCode,
onCopyMessage,
onShowPopup, onShowPopup,
onToggleTool, onToggleTool,
previewableActivityPartIds, previewableActivityPartIds,
@@ -1031,14 +1023,11 @@ const AssistantMessageBody: React.FC<Omit<MessageBodyProps, 'isUser'>> = ({
shouldHoldReasoning, shouldHoldReasoning,
shouldHoldTools, shouldHoldTools,
shouldShowActivityGroup, shouldShowActivityGroup,
shouldShowHeader,
showReasoningTraces, showReasoningTraces,
syntaxTheme, syntaxTheme,
toolConnections, toolConnections,
turnGroupingContext, turnGroupingContext,
visibleActivityPartsForTurn,
visibleParts, visibleParts,
toolParts,
standaloneToolParts, standaloneToolParts,
shouldRenderActivityGroup, shouldRenderActivityGroup,
]); ]);
@@ -176,7 +176,7 @@ export function WorkingPlaceholder({
// IMPORTANT: When statusText becomes null, we do NOT clear the display // IMPORTANT: When statusText becomes null, we do NOT clear the display
// Only done/abort signals clear the display // Only done/abort signals clear the display
}, [statusText, isWaitingForPermission, wasAborted, isComplete, state, displayedText, displayedPermission, showStatus, showResult, scheduleQueueProcess]); }, [statusText, isWaitingForPermission, wasAborted, isComplete, state, displayedText, displayedPermission, showStatus, showResult, scheduleQueueProcess, isGenericStatus]);
// Cleanup on unmount // Cleanup on unmount
useEffect(() => { useEffect(() => {
@@ -259,7 +259,7 @@ const DiffViewerEntry = React.memo<DiffViewerEntryProps>(({
const diffData = React.useMemo(() => { const diffData = React.useMemo(() => {
if (!cachedDiff) return null; if (!cachedDiff) return null;
return { original: cachedDiff.original, modified: cachedDiff.modified }; return { original: cachedDiff.original, modified: cachedDiff.modified };
}, [cachedDiff?.original, cachedDiff?.modified]); }, [cachedDiff]);
if (!diffData) return null; if (!diffData) return null;
+6 -6
View File
@@ -1165,11 +1165,8 @@ export const useEventStream = () => {
checkConnection, checkConnection,
resyncMessages, resyncMessages,
requestSessionMetadataRefresh, requestSessionMetadataRefresh,
requestSessionListRefresh,
completeStreamingMessage,
handleEvent, handleEvent,
effectiveDirectory, effectiveDirectory,
updateSessionActivityPhase,
refreshSessionActivityStatus, refreshSessionActivityStatus,
waitForDesktopBridge, waitForDesktopBridge,
debugConnectionState, debugConnectionState,
@@ -1209,6 +1206,7 @@ export const useEventStream = () => {
}, [shouldHoldConnection, stopStream, publishStatus, startStream]); }, [shouldHoldConnection, stopStream, publishStatus, startStream]);
React.useEffect(() => { React.useEffect(() => {
const cooldownTimers = sessionCooldownTimersRef.current;
if (typeof window !== 'undefined') { if (typeof window !== 'undefined') {
window.__messageTracker = trackMessage; window.__messageTracker = trackMessage;
@@ -1387,8 +1385,6 @@ export const useEventStream = () => {
staleCheckIntervalRef.current = null; staleCheckIntervalRef.current = null;
} }
const cooldownTimers = sessionCooldownTimersRef.current;
cooldownTimers.forEach((timer) => clearTimeout(timer)); cooldownTimers.forEach((timer) => clearTimeout(timer));
cooldownTimers.clear(); cooldownTimers.clear();
messageCache.clear(); messageCache.clear();
@@ -1416,8 +1412,12 @@ export const useEventStream = () => {
scheduleReconnect, scheduleReconnect,
loadMessages, loadMessages,
requestSessionMetadataRefresh, requestSessionMetadataRefresh,
requestSessionListRefresh,
updateSessionActivityPhase, updateSessionActivityPhase,
refreshSessionActivityStatus, refreshSessionActivityStatus,
shouldHoldConnection shouldHoldConnection,
loadSessions,
maybeBootstrapIfStale,
resyncMessages
]); ]);
}; };
@@ -167,6 +167,7 @@ export const useSessionAutoCleanup = (options?: CleanupOptions) => {
autoDeleteLastRunAt, autoDeleteLastRunAt,
autoRun, autoRun,
isLoading, isLoading,
sessions.length,
runCleanup, runCleanup,
]); ]);