Témoignage

Un projet définit la frontière du watcher

Un projet définit la frontière du watcher

Ce travail a commencé par une optimisation locale du watcher, mais le problème réel était plus profond : réduire le nombre de threads ne suffit pas si le système continue d’inscrire récursivement des arbres que le projet exclut déjà. Le point décisif a été de revenir à la frontière métier : une racine ouverte représente un projet, et les règles d’ignore extérieures à ce projet ne lui appartiennent pas.

La vigilance la plus utile a été de chercher les concepts dupliqués. L’ancien empilement manuel de .gitignore, les heuristiques de répertoires et les chemins de découverte parallèles donnaient plusieurs réponses à la même question. Les retirer au profit d’un seul walker partagé a simplifié le raisonnement autant que l’exécution. La review indépendante a ensuite surtout servi à éprouver les transitions difficiles — renommages, worktrees liés, échec natif et remplacement du watcher — plutôt qu’à valider une intention abstraite.

Cet article est sous licence CC BY 4.0 par l'auteur.