aboutsummaryrefslogtreecommitdiff
path: root/internal/claude
diff options
context:
space:
mode:
Diffstat (limited to 'internal/claude')
-rw-r--r--internal/claude/session.go10
1 files changed, 7 insertions, 3 deletions
diff --git a/internal/claude/session.go b/internal/claude/session.go
index e541586..c2f191b 100644
--- a/internal/claude/session.go
+++ b/internal/claude/session.go
@@ -69,7 +69,7 @@ func LoadAllSessions() ([]Session, error) {
indexPath := filepath.Join(projectDirectory, "sessions-index.json")
sessions, loadError := loadSessionsFromIndex(indexPath, directoryEntry.Name(), false)
- if loadError != nil {
+ if loadError != nil || len(sessions) == 0 {
sessions = loadSessionsFromJsonlFiles(projectDirectory, directoryEntry.Name(), false)
}
@@ -91,7 +91,7 @@ func LoadAllSessions() ([]Session, error) {
indexPath := filepath.Join(projectDirectory, "sessions-index.json")
sessions, loadError := loadSessionsFromIndex(indexPath, directoryEntry.Name(), true)
- if loadError != nil {
+ if loadError != nil || len(sessions) == 0 {
sessions = loadSessionsFromJsonlFiles(projectDirectory, directoryEntry.Name(), true)
}
@@ -453,7 +453,11 @@ func removeFromIndex(projectDirectory, sessionID string) error {
return unmarshalError
}
- filteredEntries := make([]Session, 0, len(sessionIndex.Entries)-1)
+ if len(sessionIndex.Entries) == 0 {
+ return nil
+ }
+
+ filteredEntries := make([]Session, 0, len(sessionIndex.Entries))
for _, entry := range sessionIndex.Entries {
if entry.SessionID != sessionID {