on main help sign in
fix: check if token is expired before sending the request (#1641)

Signed-off-by: Carlos Alexandro Becker <caarlos0@users.noreply.github.com>

commit4529235c045074a14375727883f6ed52a1651d4e authorCarlos Alexandro Becker <caarlos0@users.noreply.github.com> dateTue 16 Dec 2025, 14:47 (1 year ago) parentb54c06b
1 file changed+7
internal/agent/coordinator.go+7
internal/agent/coordinator.go+7
@@ -132,6 +132,13 @@ func (c *coordinator) Run(ctx context.Context, sessionID string, prompt string,
132132
133133 mergedOptions, temp, topP, topK, freqPenalty, presPenalty := mergeCallOptions(model, providerCfg)
134134
135+ if providerCfg.OAuthToken != nil && providerCfg.OAuthToken.IsExpired() {
136+ slog.Info("Token needs to be refreshed", "provider", providerCfg.ID)
137+ if err := c.refreshOAuth2Token(ctx, providerCfg); err != nil {
138+ return nil, err
139+ }
140+ }
141+
135142 run := func() (*fantasy.AgentResult, error) {
136143 return c.currentAgent.Run(ctx, SessionAgentCall{
137144 SessionID: sessionID,