PROJ_SNAPSHOT était le dernier réglage qui gardait la conversation au
Go : la façade la tient désormais dans tous les cas (LOKI_CHAT=go reste
la porte de sortie). facadeChatBlocker et la décision prise une fois par
processus disparaissent.
Go (facade_projsnap.go) :
- /internal/v1/turn/view, avec la clé et l'agent : tête du tour portant
le bloc figé (ou le vivant à rafraîchir), préambule sans date ni
dossier, et la décision projsnap (rafraîchir, mise à jour à poser,
instantané à ranger, clé et système du tour) ; dry pour le
préchauffage ;
- /internal/v1/turn/projsnap/refresh : bloc vivant et instantané qu'il
devient, pour une compaction en plein tour.
Rust :
- ChatService::assemble_turn, partagé par le tour et la relance du
builder : instantané rangé avec la discussion, mise à jour posée en tête
du dernier message utilisateur (prependCtxUpdate), historique nettoyé
au rafraîchissement ;
- TurnHost::project_refresh après une compaction ou une réduction en
plein tour (replaceProjectHead) ; l'instantané posé devient celui de la
discussion ;
- le préchauffage demande la vue en dry et garde les mises à jour tant
que le bloc n'est pas rafraîchi.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016tcGfJWefW5kUGoC2wL8cv