Skip to content

[Bug] Deleted sessions remain in manifest forever (orphaned entries) #10

@ngmks

Description

@ngmks

🏷️ Priorité : MOYENNE | Type : Bug

Problème

Le manifest (indexed_sessions.json) accumule les sessions indéfiniment. Si un fichier .jsonl est supprimé du disque, son entrée dans le manifest reste orpheline. L'index contient des chunks de sessions supprimées — pollution silencieuse.

Localisation

Fichier : apps/claude_code_rag.py
Méthode : _save_manifest() (lignes 173-186) et le flow dans run() (lignes 343-356)

# Lignes 343-356 : merge sans nettoyage
all_sessions = {**manifest.get("sessions", {})}
for sid, info in new_sessions.items():
    all_sessions[sid] = {...}
self._save_manifest(index_dir, all_sessions, args.embedding_model)
# ← Les sessions supprimées du disque restent dans all_sessions

Correction attendue

Ajouter un nettoyage optionnel dans run() :

# Après scan des sessions actuelles :
current_sessions = self._scan_current_sessions(args.session_dirs, args.project_filter)

# Nettoyer les orphelines
manifest_sessions = manifest.get("sessions", {})
orphaned = [sid for sid in manifest_sessions if sid not in current_sessions]
if orphaned:
    print(f"Cleaning {len(orphaned)} deleted session(s) from manifest")
    for sid in orphaned:
        del manifest_sessions[sid]

Note : les chunks orphelins dans l'index FAISS ne peuvent pas être facilement supprimés (FAISS ne supporte pas la suppression). Documenter cette limitation et recommander un --rebuild périodique.

Critères de succès

  • Sessions supprimées du disque → retirées du manifest au prochain run
  • Log informatif quand des sessions orphelines sont nettoyées
  • Documentation de la limitation FAISS (chunks restent dans l'index jusqu'au rebuild)
  • Test unitaire vérifiant le nettoyage

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions