100 000 lignes de Rust avec l'IA : contrats, développement piloté par les spécifications et performance

✍️ OpenClawRadar📅 Publié: May 20, 2026🔗 Source
100 000 lignes de Rust avec l'IA : contrats, développement piloté par les spécifications et performance
Ad

Cheng Huang a passé environ 6 semaines à construire un moteur de consensus multi-Paxos en Rust destiné à moderniser la Replicated State Library (RSL) d'Azure. Le projet implique plus de 130 000 lignes de code Rust (~100 000 écrites en 4 semaines par des agents IA, plus 3 semaines d'optimisation) et a réalisé un bond de débit de 23 000 à 300 000 opérations par seconde.

Huang a utilisé plusieurs agents de codage IA : GitHub Copilot, Claude Code, Codex CLI, Augment Code, Kiro et Trae. Sa configuration principale est désormais Claude Code + Codex CLI depuis le terminal, avec VS Code uniquement pour les diffs et les modifications mineures. Il maintient deux abonnements ChatGPT pour gérer les limites de débit (un du lundi au mercredi, un du jeudi au dimanche).

Contrats de code — écrits par l'IA

La stratégie de correction fondamentale : des contrats de code générés par IA qui spécifient les préconditions, postconditions et invariants pour les fonctions critiques, convertis en assertions d'exécution lors des tests. Huang a constaté que GPT-5 High écrit d'excellents contrats ; Opus 4.1 est bon mais nécessite plus de révision. Par exemple, la méthode process_2a (gérant les messages de la phase 2a de Paxos) a 16 contrats. Les contrats sont ensuite utilisés pour générer des cas de test ciblés et des tests basés sur les propriétés qui explorent des entrées aléatoires — un contrat a détecté une subtile violation de sécurité Paxos qui aurait pu causer des problèmes de cohérence de réplication.

Ad

Développement dirigé par spécifications léger

Huang a d'abord essayé une approche rigide dirigée par les spécifications : cahier des charges en markdown → conception en markdown → liste de tâches en markdown. Il l'a trouvée trop inflexible pour les changements itératifs. Il utilise désormais une approche SDD plus légère : commencer par une spécification concise, laisser l'IA générer le code, puis affiner les contrats et les tests de manière itérative. Le système complet comprend plus de 1 300 tests couvrant des tests unitaires, d'intégration et d'injection de pannes multi-répliques.

Optimisation des performances

La phase d'optimisation (3 semaines) a augmenté le débit de 23 000 à 300 000 opérations par seconde. Changements architecturaux clés : ajout du pipelining (les requêtes n'attendent plus les votes en cours), prise en charge de la mémoire non volatile (NVM) pour réduire le temps de validation, et sensibilité à RDMA pour le matériel moderne des datacenters Azure.

Prochaines étapes

Huang souhaite un meilleur support IA pour la génération de tests basés sur les propriétés à partir des contrats et une gestion plus transparente des changements cassants dans les bases de code de plus de 100 000 lignes.

📖 Read the full source: HN AI Agents

Ad

👀 See Also

Claude Agent envoie des mèmes via Discord en utilisant des GIFs Tenor — Protocole complet
Tips

Claude Agent envoie des mèmes via Discord en utilisant des GIFs Tenor — Protocole complet

Un agent Claude code configuré ajoute des réactions emoji contextuelles, des messages d'état d'une phrase et des URL Tenor GIF validées à chaque message de transport Discord, avec des étapes explicites de recherche web et de récupération pour éviter les liens morts.

OpenClawRadar
Arrêtez les tirets cadratins de Claude avec une ligne dans les Préférences ou Claude.md
Tips

Arrêtez les tirets cadratins de Claude avec une ligne dans les Préférences ou Claude.md

Ajoutez une phrase spécifique aux préférences de votre profil Claude.ai ou à Claude.md pour réduire les tirets cadratins d'environ 98 %. Il s'agit d'une astuce pratique testée par la communauté.

OpenClawRadar
Gestion de la consommation de tokens de Claude IA : conseils pratiques issus de l'expérience des développeurs
Tips

Gestion de la consommation de tokens de Claude IA : conseils pratiques issus de l'expérience des développeurs

Un développeur rapporte avoir consommé 94 000 tokens en 3 minutes en utilisant la fonction Explore de Claude, ce qui a entraîné une limitation de débit pendant 4 heures, et partage des stratégies concrètes incluant le maintien d'un fichier ARCHITECTURE.md et l'utilisation de prompts ciblés pour contrôler l'utilisation des tokens.

OpenClawRadar
Pourquoi la plupart des échecs de pipeline Claude remontent aux invites, pas aux modèles — et comment les corriger avec des compétences
Tips

Pourquoi la plupart des échecs de pipeline Claude remontent aux invites, pas aux modèles — et comment les corriger avec des compétences

Un post Reddit avance que la cause profonde des échecs de pipelines dans les workflows Claude est de traiter les prompts comme des compétences. La solution : définir des contrats d'entrée, des schémas de sortie et un fichier d'apprentissage — faisant d'une compétence ce que vous promouvez en v1.

OpenClawRadar