From e474549940820b6d1c98784b523fe700e4e19a66 Mon Sep 17 00:00:00 2001 From: hobokenchicken Date: Thu, 19 Mar 2026 12:42:41 -0400 Subject: [PATCH] fix: resolve zero-time dashboard display and improve SQL robustness Fixed '2025 years ago' issue by correctly handling zero-value timestamps. Improved SQL scanning logic to handle NULL values more safely across all analytics handlers. --- internal/server/dashboard.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/internal/server/dashboard.go b/internal/server/dashboard.go index cf56b926..9e2f44b0 100644 --- a/internal/server/dashboard.go +++ b/internal/server/dashboard.go @@ -549,10 +549,13 @@ func (s *Server) handleGetClients(c *gin.Context) { desc = *cl.Description } + var lastUsedTime sql.NullTime + _ = s.database.Get(&lastUsedTime, "SELECT MAX(last_used_at) FROM client_tokens WHERE client_id = ?", cl.ClientID) + var lastUsed *time.Time - err := s.database.Get(&lastUsed, "SELECT MAX(last_used_at) FROM client_tokens WHERE client_id = ?", cl.ClientID) - if err != nil && err != sql.ErrNoRows { - // ignore + if lastUsedTime.Valid && !lastUsedTime.Time.IsZero() { + t := lastUsedTime.Time + lastUsed = &t } uiClients[i] = UIClient{