diff --git a/internal/routing/router.go b/internal/routing/router.go index c808f66..b5615c6 100644 --- a/internal/routing/router.go +++ b/internal/routing/router.go @@ -46,7 +46,7 @@ func (r *Router) Run(ctx context.Context, in RunInput) (string, int64, error) { } out, ms, err := r.Complete(ctx, model, in.System, in.User) - _ = r.Logger.LogDecision(ctx, LogEntry{ + if lerr := r.Logger.LogDecision(ctx, LogEntry{ SessionID: in.SessionID, Skill: in.Skill, Decision: decision.String(), @@ -54,12 +54,14 @@ func (r *Router) Run(ctx context.Context, in RunInput) (string, int64, error) { ProjectRoot: in.ProjectRoot, DurationMs: ms, Failed: err != nil, - }) + }); lerr != nil { + slog.Warn("router: log decision failed", "skill", in.Skill, "err", lerr) + } if err != nil && decision == DecideLocal { slog.Warn("router: local failed, falling open to claude", "skill", in.Skill, "err", err) out, ms, err = r.Complete(ctx, r.ClaudeModel, in.System, in.User) - _ = r.Logger.LogDecision(ctx, LogEntry{ + if lerr := r.Logger.LogDecision(ctx, LogEntry{ SessionID: in.SessionID, Skill: in.Skill, Decision: "claude_fallback", @@ -67,7 +69,9 @@ func (r *Router) Run(ctx context.Context, in RunInput) (string, int64, error) { ProjectRoot: in.ProjectRoot, DurationMs: ms, Failed: err != nil, - }) + }); lerr != nil { + slog.Warn("router: log decision failed", "skill", in.Skill, "err", lerr) + } } return out, ms, err }