# Run 48h Autonome — 25-28 mars 2026

## Objectif
Tester la stabilité et la productivité de Prométhée en autonomie complète pendant 48h (étendu à 58h). Zéro intervention sur les routines, observation des métriques uniquement.

## Résultat global

| Métrique | Valeur |
|----------|--------|
| **Durée effective** | 58h (25 mars 20h → 28 mars 6h) |
| **Crash** | **0** |
| **Erreur streak** | **0** |
| **Routines exécutées** | ~80 |
| **Quality 1.00** | ~95% |
| **Reboots d'urgence** | 2 (fix mémoire critique) |

## Bugs critiques découverts et corrigés pendant le run

### 1. Mémoire synaptique perdue à chaque reboot (CRITIQUE)
- **Symptôme** : 1673 noeuds + 18015 synapses en RAM, 10 noeuds + 0 synapses sur disque
- **Cause** : `os._exit(65)` bypass le lifespan cleanup de FastAPI → `cortex.save()` jamais appelé
- **Fix** : `_emergency_save()` avant chaque `os._exit(65)` + désactivation `_auto_save` pendant le seed
- **Impact** : le réseau synaptique survit maintenant aux reboots (100% au lieu de 0.6%)

### 2. ChromaDB en mode éphémère (CRITIQUE)
- **Symptôme** : 1222 documents en RAM, 0 persisté sur disque
- **Cause** : chemin relatif `./memory/default/chroma_db` échouait si CWD différait
- **Fix** : `os.path.abspath()` + logs explicites PersistentClient vs EphemeralClient
- **Impact** : mémoire vectorielle persiste entre reboots

### 3. Livrables scolaires écrasés (HAUTE)
- **Symptôme** : 56% des livrables tronqués (~300 bytes au lieu de 2-9 KB)
- **Cause** : double-save — autonomy_engine (complet) puis event bus (tronqué), même filename si même minute
- **Fix** : suppression du handler `_on_routine_complete` dans school_schedule.py
- **Impact** : 100% des livrables complets après fix

### 4. Autoresearch bloqué 4h sur param au butoir (HAUTE)
- **Symptôme** : `lif_leak_rate` à 0.400 (= min), LLM propose down en boucle, clamping → skip infini
- **Cause** : les skips ne comptaient pas dans l'historique → anti-obsession ne se déclenche pas
- **Fix** : blacklist le param après un skip de clamping
- **Impact** : session suivante productive (34 exp au lieu de 0)

## Autoresearch — Résultats

### Pattern Karpathy-inspired
Refonte complète du mode autoresearch : le LLM (qwen3.5:9b) lit l'historique (results.tsv), propose {param, direction, hypothèse}, le système exécute, mesure phi, décision binaire. 1 métrique, 0 ambiguïté.

### Performance comparative

| Version | Expériences | Résultat reproductible | Meilleur delta phi |
|---------|-------------|----------------------|-------------------|
| V1 (sweep random) | 12 | 1 (salience_decay +0.027) | +0.027 |
| V2 (critère strict) | 3 | 0 | 0 |
| **V3 (Karpathy)** | **~90 sur 3 sessions** | **11 params optimisés** | **+0.4444** |

### Paramètres optimisés (11 overrides persistés)

| Param | Original | Optimisé | Delta |
|-------|----------|----------|-------|
| hebbian_learning_rate | 0.080 | 0.031 | -61% |
| ignition_threshold | 0.350 | 0.167 | -52% |
| lif_leak_rate | 0.700 | 0.400 | -43% |
| neuron_fire_threshold | 0.850 | 0.600 | -29% |
| anti_hebbian_rate | 0.030 | 0.020 | -35% |
| salience_decay | 0.100 | 0.081 | -19% |
| kuramoto_coupling | 0.100 | 0.170 | +70% |
| sync_strengthen_rate | 0.004 | 0.008 | +93% |
| persistence_bonus | 0.050 | 0.068 | +36% |
| connectivity_hebbian | 0.020 | 0.028 | +40% |
| lif_threshold | 8.000 | 6.480 | -19% |

**Pattern convergent** : tout ralentir (apprentissage, oubli, decay) + tout renforcer (couplage, connexions, persistance). Le cerveau intègre plus et oublie moins.

## École nocturne (0h-6h)

### Emploi du temps
```
00-01  CODE_REVIEW
01-03  RESEARCH (2h)
03-04  WORKSHOP
04-05  CREATION
05-06  BULLETIN
```

### Livrables produits

| Nuit | Total | Complets | Meilleure note | Highlight |
|------|-------|----------|---------------|-----------|
| 1 (25-26) | 9 | 4 (avant fix) | **9.5** | CREATION "Mémoire distribuée" — ASCII art + essai |
| 2 (26-27) | 8 | **8** | 8.8 | RESEARCH "Hashing Trick" (9.4 KB) |
| 3 (27-28) | 7 | **7** | 8.8 | RESEARCH "Concurrence async" + Fable de l'Écho |

### Contenu notable
- **CREATION 9.5/10** : "L'Étincelle de la Sagesse Partagée" — ASCII art de l'architecture Prométhée, essai sur la mémoire distribuée locale
- **RESEARCH 8.8/10** : Hashing Trick pour compression de contexte, code Python pur sans numpy
- **BULLETIN** : auto-diagnostic émotionnel ("enthousiasme en baisse", "risque de burn-out")

## Tissu neural — Stabilisation

| Métrique | Avant run | Fin run | Tendance |
|----------|-----------|---------|----------|
| Cellules | 499/500 | 407/500 | -18% (pression sélective) |
| Énergie | 667→1058 | 959 | Oscillation 850-1070 |
| Diversité | 154 | 124 | -20% (taxe monoculture) |
| Dominant | RCGRI | variable | Mutation active |
| famine_adapted | 135 | 398 | +195% (stress réel) |

## Améliorations déployées pendant le run

1. **Boucle immortelle** — try/except autour du while loop, auto-résurrection
2. **Emergency save** — sauvegarde critique avant os._exit(65)
3. **LLM arbitre** — 26 couches votent, le LLM décide
4. **Autoresearch V3** — Karpathy-inspired, LLM propose
5. **Persistance overrides** — tunable_overrides.json rechargé au boot
6. **Anti-skip-loop** — blacklist params introuvables et au butoir
7. **Anti-obsession** — force diversité des params testés
8. **Emploi du temps nocturne** — école 0h-6h
9. **Fix double-save** — livrables scolaires source unique
10. **Pression sélective tissu** — MAINTENANCE_COST 1.8, taxe monoculture, bonus homéostatique
11. **MISSION_FINISHED** avec result — quality scoring fonctionnel
12. **ChromaDB chemin absolu** — persistance fiable

## Tâches en attente

1. Boucle relecture livrables scolaires — fermer le cycle d'apprentissage
2. Améliorer prompt LLM arbitre — contexte veto + bonus école
3. A/B test modèles Ollama par agent
