5.0 KB · updated 2026-07-31 · md

v0.26.0.fr.md

docs/i18n/release-notes/v0.26.0.fr.md

Tesserae v0.26.0 — les compilations qui se terminent et racontent ce qu'elles ont fait

<!-- translations:start -->

English · 한국어 · 中文 · 日本語 · Русский · Español · Deutsch

<!-- translations:end -->

Released 2026-07-26 · PyPI · GitHub release · pip install --upgrade tesserae==0.26.0

v0.25.1 a arrêté les compilations qui se bloquaient. Cette version les rend rapides, les rend honnêtes sur ce qu'elles ont couvert, et arrête l'ingestion d'ordures.

Plus rapide

  • Extraction parallèle. La boucle de lot a généré un sous-processus CLI et l'a bloqué, un document à la fois — le temps réel était la somme littérale de chaque aller-retour du modèle, mesuré à environ 2 heures 40 minutes pour 161 documents. L'extraction s'exécute désormais 4 documents en parallèle par défaut (TESSERAE_EXTRACT_CONCURRENCY=1 restaure l'exécution séquentielle).

La concurrence change la vitesse, jamais la sortie : la liste de travail est fixée dans l'ordre des chemins et les résultats sont collectés par index. merge_graphs résout les ID de nœuds dupliqués de manière positionnelle, donc la collection par ordre d'achèvement créerait silencieusement un graphique différent — épinglé par un test dont l'extracteur se termine dans l'ordre de chemin inverse.

  • Le cache de réponse met réellement en cache. complete_json a toujours pris cache_key, et les deux clients CLI l'ont accepté et l'ont jeté — seul le client Anthropic l'a jamais utilisé. Le contenu identique a été à nouveau payé au prix fort à chaque compilation. Les deux lisent et écrivent désormais un cache adressé par contenu sous ~/.tesserae/llm_cache, avec clé sur le contenu plus modèle et effort de raisonnement, donc changer de modèles redemande au lieu de servir les réponses du modèle précédent. Seules les réponses analysables sont stockées. TESSERAE_LLM_CACHE=0 désactive.

Honnête

  • Les échecs d'extraction sont nommés, pas avalés. Une taxonomie des défaillances distingue les défaillances transitoires (réessayées) des vraies, --limit n'abandonne plus la couverture du graphique, et la portée d'authentification par domicile empêche un mauvais profil d'empoisonner une exécution.
  • Les marqueurs d'intégrité graphed. Une ligne de manifeste n'est tamponnée qu'après que son contenu atteint réellement graph.json — donc une compilation qui s'arrête à mi-chemin ne peut plus laisser de lignes prétendant une couverture que le graphique n'a pas. Les documents supprimés et renommés sont marqués comme supprimés plutôt que de persister indéfiniment.
  • La portée --retry-fallbacks maintenant réessaye exactement les documents dont l'extraction typée a échoué, et rien d'autre.

Plus propre

  • Les répertoires d'ordures restent en dehors du corpus. Les répertoires temporaires de pytest (pytest-of-<user>/pytest-N/) et les répertoires temporaires pip atterrissent dans une racine source configurée lorsque TMPDIR se résout en dépôt, plantant des milliers de fichiers d'accessoires jetables qui changent à chaque exécution de test — donc l'ensemble de candidats ne se répète jamais et --changed-only ne peut jamais ne rien faire. Un manifeste de projet réel avait 25,269 entrées dont 16,110 (63%) pointaient vers des fichiers qui n'existent plus.

Le marcheur ignore maintenant ces familles lors de la descente récursive. C'est une règle de répertoire : docs/pip-install-guide.md est un document ordinaire et reste indexé — le slugificateur de concept propre de Tesserae produit exactement cette forme de nom de fichier à partir de n'importe quel en-tête "pip install x".

Aussi

  • Le modèle Codex par défaut est gpt-5.6-luna.
  • Nouvelle référence de tuning documentant les 29 variables d'environnement TESSERAE_* — valeurs par défaut, ce que chacun contrôle et quand le changer. Plusieurs, y compris le délai d'attente d'extraction envoyé dans v0.25.1, n'avaient pas du tout de documentation.

Mise à niveau à partir de v0.25.1

Installation directe. Deux choses à savoir :

L'extraction s'exécute maintenant 4 de large. Si votre compte de fournisseur a une limite de taux stricte, définissez TESSERAE_EXTRACT_CONCURRENCY=1.

La première compilation après la mise à niveau peut faire plus de travail que d'habitude — les marqueurs graphed n'existent pas dans les anciens manifestes, donc les lignes qui les précèdent sont traitées comme non prouvées et re-tamponnées. C'est une recompilation corrective, pas un coût permanent.