fix(sqlite): handle deleted_at TEXT column scanning properly
The deleted_at column was defined as TEXT in the schema but code was trying to scan into sql.NullTime. The ncruces/go-sqlite3 driver only auto-converts TEXT to time.Time for columns declared as DATETIME/DATE/ TIME/TIMESTAMP. For TEXT columns, it returns raw strings which sql.NullTime.Scan() cannot handle. Added parseNullableTimeString() helper that manually parses time strings and changed all deletedAt variables from sql.NullTime to sql.NullString. Fixes import failure: "sql: Scan error on column index 22, name deleted_at: unsupported Scan, storing driver.Value type string into type *time.Time" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -170,7 +170,7 @@ func (s *SQLiteStorage) GetStaleIssues(ctx context.Context, filter types.StaleFi
|
||||
var compactedAtCommit sql.NullString
|
||||
var originalSize sql.NullInt64
|
||||
var closeReason sql.NullString
|
||||
var deletedAt sql.NullTime
|
||||
var deletedAt sql.NullString // TEXT column, not DATETIME - must parse manually
|
||||
var deletedBy sql.NullString
|
||||
var deleteReason sql.NullString
|
||||
var originalType sql.NullString
|
||||
@@ -221,9 +221,7 @@ func (s *SQLiteStorage) GetStaleIssues(ctx context.Context, filter types.StaleFi
|
||||
if closeReason.Valid {
|
||||
issue.CloseReason = closeReason.String
|
||||
}
|
||||
if deletedAt.Valid {
|
||||
issue.DeletedAt = &deletedAt.Time
|
||||
}
|
||||
issue.DeletedAt = parseNullableTimeString(deletedAt)
|
||||
if deletedBy.Valid {
|
||||
issue.DeletedBy = deletedBy.String
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user