02 / Notes de l'établi
Notes de l'établi.
Des notes sur le logiciel, l'IA, les outils et ce que j'apprends en chemin.
- Apprendre Go en 2026Un développeur TypeScript apprend Go en construisant un petit backend de musculation. Ce qui surprend en venant de TypeScript : les unions absentes, les valeurs zéro, les erreurs comme valeurs, les goroutines. Les trois pièges qui m'ont eu, et une cheatsheet TypeScript vers Go.
- Cloudflare Workers AI : tout ce que le tier gratuit a décidéJe voulais faire tourner des modèles ouverts sans la machine pour les faire tourner, alors j'ai construit un scanner sur Cloudflare Workers AI en restant dans le tier gratuit. Le tier gratuit explique pourquoi il a existé, pourquoi il marchait, et pour finir pourquoi il est mort.
- Plonger dans HerdrUn gestionnaire d'espaces de travail dans le terminal qui reconnaît les agents de code lancés dans ses panes. Ce qu'il ajoute à tmux, comment le client et le serveur se partagent le travail, ce que veulent vraiment dire les cinq états d'un agent, et là où il arrête d'aider.
- Des contract tests sans lancer la stackUne suite qui vérifie que deux applications sont toujours d'accord sans démarrer ni l'une ni l'autre. Ce que Pact écrit, les deux réglages qui l'empêchent d'annoncer vert sur la moitié d'un contrat, la règle de pipeline qui admet son propre angle mort, et la partie du travail qui vaut le coup d'être confiée à un agent.
- Faire tourner Stryker sur un monorepo SvelteLa moitié pratique : comment on découpe les configs, ce qu'un mutant survivant raconte vraiment, les quatre correctifs qui règlent la plupart des cas et les détails qui coûtent du temps quand tout doit tourner sur chaque merge request.
- Qui vérifie les tests de l'agentLa coverage dit qu'une ligne a tourné, pas que quelque chose a été vérifié, et un agent à qui on demande des tests produira volontiers la différence. Le mutation testing sépare les deux. Le mettre dans la boucle de l'agent a échoué exactement de la façon qu'il était censé attraper, et réparer ça est ce qui donne à un check automatique le droit de bloquer.
- Le meilleur modèle a quand même besoin de règlesUn refactoring qu'on ne pouvait pas éviter est devenu un test honnête des agents de code, parce qu'il devait vraiment partir en production. Le modèle le plus fort a produit du code médiocre tout seul. Ce qui l'a rendu utile, c'est la structure construite autour, une correction à la fois, et la limite que cette structure n'a jamais levée, c'est de savoir que le travail est correct.
- Renovate : le coût d'un agent verrouilléLes montées majeures que l'automatisation n'ouvre pas d'elle-même. Un agent frontier sur un runner verrouillé a produit des merge requests sûres d'elles et fausses, parce que les garde-fous qui l'ont durci l'ont aussi coupé de ce dont il avait besoin. Sans ces contraintes, un autre agent a pu vérifier la même montée. Le problème n'a jamais été le modèle.
- Renovate : un petit agent pour les échecs courantsLes merge requests de dépendances automatiques échouent d'une poignée de façons prévisibles. Un petit modèle règle les échecs mécaniques, et quand il n'y arrive pas, il écrit ce qu'il a trouvé.
- Renovate : affiner l'automatisationLe grouping pour que la sortie reste lisible, des cooldowns qu'il a fallu empêcher de se contredire, le passage sur un swarm managé, et enfin le fait de laisser les mises à jour mineures et patch se merger toutes seules.
- Renovate : automatiser la gestion des dépendancesInstaller le bot a pris un après-midi. Lui apprendre ce qu'était vraiment notre dépôt a pris un an, et l'essentiel tient dans du grouping, une regex et un job de CI qui écrit les changesets à sa place.
- Dix mois de Svelte 5Des feuilles vers la racine, avec Svelte 4 et Svelte 5 côte à côte tout du long, pendant que le produit continuait de livrer. Presque rien n'a fait mal. Voici la partie qui a fait mal.