#!/usr/bin/env python3
"""
Test du chargement automatique des tâches au démarrage.
"""

import sys
import os
sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'geniusia2'))

from core.logger import Logger
from core.embeddings_manager import EmbeddingsManager
from core.learning_manager import LearningManager
from core.config import get_config, ensure_directories


def test_auto_load():
    """Test du chargement automatique."""
    print("🧪 TEST DU CHARGEMENT AUTOMATIQUE DES TÂCHES")
    print("=" * 60)
    
    ensure_directories()
    config = get_config()
    logger = Logger()
    
    print("\n1️⃣ Initialisation de l'EmbeddingsManager...")
    embeddings_manager = EmbeddingsManager(logger=logger)
    print(f"   Index FAISS avant: {embeddings_manager.faiss_index.ntotal} embeddings")
    
    print("\n2️⃣ Initialisation du LearningManager (avec auto-load)...")
    learning_manager = LearningManager(
        embeddings_manager=embeddings_manager,
        logger=logger,
        config=config
    )
    
    print(f"\n📊 Résultats:")
    print(f"   - Tâches chargées: {len(learning_manager.tasks)}")
    print(f"   - Index FAISS après: {embeddings_manager.faiss_index.ntotal} embeddings")
    
    if len(learning_manager.tasks) > 0:
        print(f"\n✅ SUCCESS! {len(learning_manager.tasks)} tâches chargées")
        print(f"\n📋 Quelques tâches:")
        for i, (task_id, task) in enumerate(list(learning_manager.tasks.items())[:5], 1):
            print(f"   {i}. {task_id}: {task.task_name} (mode: {task.mode})")
    else:
        print(f"\n⚠️  Aucune tâche chargée")
    
    if embeddings_manager.faiss_index.ntotal > 0:
        print(f"\n✅ Index FAISS contient {embeddings_manager.faiss_index.ntotal} embeddings")
        print(f"   Les suggestions devraient maintenant fonctionner!")
    else:
        print(f"\n❌ Index FAISS toujours vide")
    
    print(f"\n" + "=" * 60)
    print(f"✅ TEST TERMINÉ")
    print(f"=" * 60)


if __name__ == "__main__":
    test_auto_load()
