Le proche est net, le lointain s'estompe. Chaque abeille regarde son passé comme un paysage.
Spec du 2026-07-12 - commit 911259d - tag de retour AVANT_CONTEXTE - en relecture par l'apicultrice
Le voyage d'un échange
Deux journaux : l'intégral, sacré, et l'horizon, la vue de travail que le moteur injecte dans le prompt. Rien n'est jamais réécrit dans l'intégral ; l'horizon n'est qu'une couche de lecture.
Journal intégral window/mia-messages.jsonl
jamais résumé, jamais réécrit
Chaque échange y entre entier et y reste. Rotation d'archive à 500 entrées (déplace, ne détruit pas). C'est la source de vérité : l'horizon peut toujours être reconstruit depuis lui.
chaque écriture est copiée en zone nette
Zone nette
Les échanges récents, intégraux. Garde toujours au moins le dernier échange, même s'il déborde seul le budget.
12 000 car.
budget_net
déborde (budget ou âge > 24 h) -> éviction : le condensé LLM est fabriqué à ce moment
Zone condensée
Chaque échange évincé, condensé par LLM en 2 à 4 phrases factuelles. Reste adressable : date, type, outil. La question reste intégrale.
6 000 car.
budget_condense
déborde -> fondu par fournée : un seul appel LLM roulant
Le récit de soi
Résumé roulant structuré (gabarit strict : mission, décisions, fichiers, erreurs, paroles de l'apicultrice, travail en cours, prochaine étape). Rien ne sort de la vue : le passé lointain vit fondu ici.
3 000 car.
budget_recit
lecture sous budget, coupe dure au point d'injection
Le prompt du cycle
garantie dure
Récit d'abord, puis condensés, puis nets (ordre chronologique), avec la mention déclarée : « [horizon : le passé plus ancien est condensé ci-dessus ; l'historique intégral vit au journal] ». L'abeille sait qu'il lui manque du volume et où il vit - elle n'invente pas.
Le budget, la seule vraie monnaie
Fini le « 3 entrées peu importe leur taille » : chaque zone a un plafond en caractères, réglable par ruche et par abeille.
Ce qui compte dans le budget : les caractères effectivement injectés - question + réponse + enrobage de rendu. Une consigne très longue consomme du budget, elle ne le contourne pas. Même définition partout : zones, coupe dure, critères.
net12 000
condensé6 000
récit3 000
contexte mémoire maximal injecté par cycle : 21 000 caractères
12 000
6 000
3 000
Essaie les profils : c'est exactement ce que la cascade de config permet de régler, à chaud, sans rebuild.
La coupe dure : l'ordre de sacrifice
Si l'horizon est en retard d'entretien, le moteur coupe au budget à l'injection. On sacrifie du moins précieux au plus précieux :
Les condensés non-phares, du plus ancien au plus récent
Le récit de soi, sauf sa section « Paroles de l'apicultrice »
Les échanges nets non-phares, du plus ancien au plus récent
En tout dernier : les phares et tes paroles
Les phares
Un phare se voit de loin, malgré la brume. Tout échange où tu parles à l'abeille (type « conversation ») est phare d'office ; tu peux aussi flaguer n'importe quelle entrée à la main (persistant, survit à tout). Ta question reste intégrale à travers TOUTES les zones - seule la réponse s'estompe.
en zone nette
« mia, compose la page fromagerie » - réponse complète de mia : le template entier, 84 000 caractères
en zone condensée
« mia, compose la page fromagerie » - condensé : a composé template-fromagerie.html (84 ko) dans honey/, style ardoise et lin, le 2026-07-10
dans le récit
« mia, compose la page fromagerie »- recopiée telle quelle dans la section « Paroles de l'apicultrice » du récit de soi
Deux cascades
Qui résume, et qui règle : toujours du plus spécifique au filet de sécurité.
Le résumeur
Modèle dédié configuré - ex. ollama/qwen3, respecte les interrupteurs
fermé ou en erreur ↓
Le modèle de l'abeille elle-même - défaut
fermé ou en erreur ↓
Troncature déterministe - fonctionne TOUJOURS, même tout fermé, zéro LLM
Désactivable à chaud : avec actif = false (le défaut au déploiement), comportement IDENTIQUE à l'existant - retour à ce qui marchait par abeille, par ruche ou globalement
Le contexte injecté ne dépasse jamais la somme des budgets, quel que soit l'historique
Un journal intégral de 66 Mo donne un horizon de quelques dizaines de Ko
Ta consigne reste intégrale après 100 cycles ; à saturation, condensée avec mention, jamais en silence
Tous les fournisseurs fermés : l'horizon fonctionne quand même (troncature)
Fichier horizon supprimé ou empoisonné : reconstruit proprement depuis l'intégral au cycle suivant