diff options
| author | uttamkanodia14 <[email protected]> | 2025-07-10 00:19:30 +0530 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-07-09 18:49:30 +0000 |
| commit | 063481faa4b1c86868689580ff0fbd8cb04141e3 (patch) | |
| tree | f7b38f46a95cd22bbf15a7454963ba834e15d134 /packages/cli/src/ui/contexts/SessionContext.tsx | |
| parent | 6c12f9e0d902c60fa5e01422018ce773c405da8d (diff) | |
Adding TurnId to Tool call and API responses and error logs. (#3039)
Co-authored-by: Scott Densmore <[email protected]>
Diffstat (limited to 'packages/cli/src/ui/contexts/SessionContext.tsx')
| -rw-r--r-- | packages/cli/src/ui/contexts/SessionContext.tsx | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/packages/cli/src/ui/contexts/SessionContext.tsx b/packages/cli/src/ui/contexts/SessionContext.tsx index 320df324..942af8b5 100644 --- a/packages/cli/src/ui/contexts/SessionContext.tsx +++ b/packages/cli/src/ui/contexts/SessionContext.tsx @@ -6,6 +6,7 @@ import React, { createContext, + useCallback, useContext, useState, useMemo, @@ -26,6 +27,7 @@ export interface SessionStatsState { sessionStartTime: Date; metrics: SessionMetrics; lastPromptTokenCount: number; + promptCount: number; } export interface ComputedSessionStats { @@ -46,6 +48,8 @@ export interface ComputedSessionStats { // and the functions to update it. interface SessionStatsContextValue { stats: SessionStatsState; + startNewPrompt: () => void; + getPromptCount: () => number; } // --- Context Definition --- @@ -63,6 +67,7 @@ export const SessionStatsProvider: React.FC<{ children: React.ReactNode }> = ({ sessionStartTime: new Date(), metrics: uiTelemetryService.getMetrics(), lastPromptTokenCount: 0, + promptCount: 0, }); useEffect(() => { @@ -92,11 +97,25 @@ export const SessionStatsProvider: React.FC<{ children: React.ReactNode }> = ({ }; }, []); + const startNewPrompt = useCallback(() => { + setStats((prevState) => ({ + ...prevState, + promptCount: prevState.promptCount + 1, + })); + }, []); + + const getPromptCount = useCallback( + () => stats.promptCount, + [stats.promptCount], + ); + const value = useMemo( () => ({ stats, + startNewPrompt, + getPromptCount, }), - [stats], + [stats, startNewPrompt, getPromptCount], ); return ( |
