From aff60af8ba24c8d5330c706ddf26927d81436d79 Mon Sep 17 00:00:00 2001 From: Peter Stone Date: Mon, 26 Jan 2026 08:08:17 -1000 Subject: Phase 4: Extract magic numbers to constants Create config/constants.go with centralized configuration values: - Concurrency limits (MaxConcurrentTrelloRequests) - Timeouts (HTTP, Google Calendar, graceful shutdown, request) - Meal times (breakfast, lunch, dinner hours) - Database pool settings (connections, lifetime) - Session and rate limiting settings Update all files to use these constants instead of hardcoded values. Co-Authored-By: Claude Opus 4.5 --- internal/store/sqlite.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'internal/store/sqlite.go') diff --git a/internal/store/sqlite.go b/internal/store/sqlite.go index 12aa1ce..c2f6e98 100644 --- a/internal/store/sqlite.go +++ b/internal/store/sqlite.go @@ -13,6 +13,7 @@ import ( _ "github.com/mattn/go-sqlite3" + "task-dashboard/internal/config" "task-dashboard/internal/models" ) @@ -47,9 +48,9 @@ func New(dbPath, migrationDir string) (*Store, error) { // Configure connection pool for SQLite with WAL mode // WAL allows concurrent reads, but writes still need serialization - db.SetMaxOpenConns(5) - db.SetMaxIdleConns(2) - db.SetConnMaxLifetime(time.Hour) + db.SetMaxOpenConns(config.SQLiteMaxOpenConns) + db.SetMaxIdleConns(config.SQLiteMaxIdleConns) + db.SetConnMaxLifetime(config.SQLiteConnMaxLifetime) store := &Store{db: db, migrationDir: migrationDir} -- cgit v1.2.3