Le personnage-globe d’Eco², retravaillé pour ce portfolio à partir du dernier personnage principal officiel : un globe bleu ciel aux terres vertes, une pousse sur le dessus et un visage souriant brun
Retour à la salle

Eco²

Backend · Cloud infrastructure

Le tri des déchets, à partir d’une photo et d’une conversation.

Un assistant IA tout-en-un qui comprend le fonctionnement du tri des déchets en Corée.

2025.10.31 — 2026.02.10

Projet d’équipe · socle d’infrastructure et de déploiement → backend métier → traitement asynchrone, agent conversationnel, vérification

2025 새싹 해커톤 (hackathon Saessak)Prix d’excellence · 2025.12.02

  • Application webService fermé

Un correctif tenu à l’écart d’un autre agent, une revue répartie par angle

Deux cas corrigés avec des agents de code dans le backend d’Eco². Un modèle n’est nommé que là où une mention de co-auteur Claude Opus 4.5 ou 4.6 le consigne.

Légende complète

Mode de lecture · une même grammaire pour chaque cas

  • Les colonnes indiquent qui a agi ; de haut en bas, le temps
  • Trait plein : une passation consignée ou une étape suivante
  • ↩ lapis épais : un constat qui a renvoyé le travail
  • Tirets : pas une exécution consignée (une règle écrite, un conseil sans autorité, une frontière non vérifiée)
  • Rectangle : une action
  • Arrondi : un état observé ou un constat
  • Coin plié : un artefact ou une preuve
  • Colonne hachurée : parties du produit en développement (pas les agents qui ont servi à le construire)

Cas 1 / 2 · Tenu à l’écart de la branche develop qu’utilisait un autre agent, le streaming des tokens a été corrigé en deux passes

January 2026

Tenu à l’écart de la branche develop qu’utilisait un autre agent, le streaming des tokens a été corrigé en deux passes

  1. Agent de codeUn autre agent

    ActionAutre travail en cours sur develop

    • passationArbre occupé → séparation→ Worktree séparé · note d’analyse d’abord (Worktree du correctif)
  2. En développementFlux Chat

    Observation · constatSeuls les événements d’étape arrivent, pas de tokens

    • passationPérimètre : émission du flux→ Worktree séparé · note d’analyse d’abord (Worktree du correctif)
  3. Agent de codeWorktree du correctif

    ActionWorktree séparé · note d’analyse d’abord

    • passationFichiers à modifier→ Envelopper le SDK OpenAI dans un adaptateur LangChain (Worktree du correctif)
  4. Agent de codeWorktree du correctif

    ActionEnvelopper le SDK OpenAI dans un adaptateur LangChain

    • passation→ PR #437 → fusionnée dans develop (Artefacts)
  5. ArtefactsArtefacts

    ArtefactPR #437 → fusionnée dans develop

    • passation→ Worktree · étapes d’analyse dans la skill git-workflow (Artefacts)
    • passationE2E après fusion→ Tokens de réponse dupliqués · fuite de l’intent « general » (Flux Chat)
  6. En développementFlux Chat

    Observation · constatTokens de réponse dupliqués · fuite de l’intent « general »

  7. ArtefactsArtefacts

    ArtefactWorktree · étapes d’analyse dans la skill git-workflow

  8. Agent de codeWorktree du correctif

    ActionDistinguer les deux émetteurs par node · seq → ignorer les tokens capturés (deux passes)

    • passationAvant / après→ Extraits SSE enregistrés, avant et après (Flux Chat)
    • passationContrôle au niveau commande→ Contrôle de commande local : 0 token du notifier (Artefacts)
  9. En développementFlux Chat

    Observation · constatExtraits SSE enregistrés, avant et après

  10. ArtefactsArtefacts

    ArtefactContrôle de commande local : 0 token du notifier

    • passation→ PR #448 · fusionnée après résolution des conflits avec develop (Artefacts)
  11. ArtefactsArtefacts

    ArtefactPR #448 · fusionnée après résolution des conflits avec develop

Contexte
Le SSE de Chat livrait les événements d’étape mais aucun token. Un autre agent travaillait sur develop ; le travail a donc commencé par une note d’analyse dans un worktree séparé, et après la fusion du premier correctif, la duplication et la fuite alors observées ont été circonscrites par un second correctif.
Résultat
La responsabilité d’émettre les tokens a été restreinte au seul nœud qui les produit réellement. Le contrôle de commande montre seulement que le notifier n’envoie aucun token ; les extraits SSE enregistrés montrent l’observation E2E qui a suivi. Ce sont des preuves différentes.
Limite
L’identité et le modèle de l’autre agent, ainsi que le nombre d’agents de code, ne sont pas consignés. Aucune des deux PR n’a reçu d’approbation formelle de revue, et cet enregistrement n’est ni le service actuel ni une nouvelle exécution E2E.
Sources et limites restantes
  • Au sein de la PR #448, le premier patch ignorait les tokens de réponse ; un suivi a fait ignorer à ProcessChatCommand tous les tokens de message capturés. Ils ne sont pas fusionnés en un seul correctif qui aurait marché du premier coup.
  • La note d’analyse et les extraits SSE avant/après sont des enregistrements de rapport internes au dépôt.

February 10, 2026

L’évaluateur a été revu angle par angle, et seuls les constats concrets sont devenus du code

  1. Agent de codeImplémentation

    ActionPipeline d’évaluation candidat

    • passationRevue angle par angle→ Constats : pas d’échantillonnage · de garde de coût / résultats mutables / config hors de la closure (Cinq angles de revue)
  2. Revue · vérificationCinq angles de revue

    Observation · constatConstats : pas d’échantillonnage · de garde de coût / résultats mutables / config hors de la closure

  3. Agent de codeImplémentation

    ActionÉchantillonner et vérifier le coût quotidien avant d’évaluer

  4. Agent de codeImplémentation

    ActionObjets résultat figés · liaison de config explicite

    • passationContrôles→ Contrôles unitaires · de câblage (local · mocké) (Artefacts)
  5. ArtefactsArtefacts

    ArtefactContrôles unitaires · de câblage (local · mocké)

    • pas une exécution consignéeNe va pas jusque-là→ E2E Redis + PG réel : non écrit à l’époque (Artefacts)
    • passation→ PR #546 fusionnée · procédure versée dans la skill eval-feedback-loop (Artefacts)
  6. ArtefactsArtefacts

    Règle · non vérifiéeE2E Redis + PG réel : non écrit à l’époque

  7. ArtefactsArtefacts

    ArtefactPR #546 fusionnée · procédure versée dans la skill eval-feedback-loop

Contexte
Le rapport d’implémentation du pipeline d’évaluation des conversations consigne cinq angles de revue et deux séries de correctifs. Le nombre d’angles n’est pas un nombre de sessions ou d’agents.
Résultat
Le code comporte une branche qui échantillonne et vérifie le coût quotidien avant d’évaluer, des objets résultat figés et une liaison de config explicite. Si la consultation du coût échoue, l’évaluation L2 se poursuit quand même ; ce n’est donc pas un plafond strict des dépenses.
Limite
Les cinq angles sont une manière de répartir la revue ; ils ne signifient ni cinq sessions de modèle indépendantes ni une approbation par des experts humains. Les scores internes proches de 100 du rapport ne sont pas une mesure de qualité et ne sont pas repris.
Sources et limites restantes
  • La PR liée en tête du rapport est la #545 ; la PR publique qui a fusionné les Phases 1–4 est la #546.
  • Le stub de recalibration encore ouvert est lui aussi mentionné tel quel dans le rapport.