From 2e938d9da1589e1e00b9739c5e6c8dc72dda872a Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Mon, 26 May 2025 22:08:50 -0400 Subject: Standardize API parameters to camelCase and improve LSP client reliability MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Convert tool parameters from snake_case to camelCase for consistency - Add file existence check in LSP client before opening files - Fix version increment timing in LSP textDocument operations - Optimize session token tracking using onStepFinish callback - Add debugging logs for diagnostics troubleshooting 🤖 Generated with opencode Co-Authored-By: opencode --- js/src/session/session.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'js/src/session') diff --git a/js/src/session/session.ts b/js/src/session/session.ts index 1ab09d40d..8b3f990de 100644 --- a/js/src/session/session.ts +++ b/js/src/session/session.ts @@ -162,6 +162,13 @@ export namespace Session { msgs.push(system); state().messages.set(sessionID, msgs); generateText({ + onStepFinish: (step) => { + update(sessionID, (draft) => { + draft.tokens.input += step.usage.inputTokens || 0; + draft.tokens.output += step.usage.outputTokens || 0; + draft.tokens.reasoning += step.usage.reasoningTokens || 0; + }); + }, messages: convertToModelMessages([ { role: "system", @@ -293,11 +300,6 @@ export namespace Session { session.tokens.input += usage.inputTokens || 0; session.tokens.output += usage.outputTokens || 0; session.tokens.reasoning += usage.reasoningTokens || 0; - await update(sessionID, (draft) => { - draft.tokens.input += usage.inputTokens || 0; - draft.tokens.output += usage.outputTokens || 0; - draft.tokens.reasoning += usage.reasoningTokens || 0; - }); return next; } } -- cgit v1.2.3