Tous les articles
-
Créer des matériaux PBR metallic-roughness fiables
Comment construire des entrées de matériau qui distinguent le métal nu des revêtements diélectriques, préservent le sens des couleurs et restent testables sous un éclairage variable.
-
Atténuer les attaques par force brute avec fail2ban : jails, backends, état et débannissement de sa propre adresse
fail2ban surveille les journaux à la recherche d'échecs d'authentification répétés et bannit la source par une action de pare-feu ; la configuration doit se placer dans des surcharges jail.local plutôt que dans le jail.conf fourni par le paquet, et ignoreip évite qu'une adresse d'administration ne se bannisse elle-même.
-
Rust Pin : préserver l'adresse de la valeur pointée sans figer la variable de pointeur
Diagnostiquer les erreurs d'épinglage en identifiant la valeur sensible à l'adresse et l'opération susceptible de la déplacer.
-
Modifications de base de données sans interruption de service : expand et contract
Modifier un schéma en trois étapes livrables séparément : étendre (créer une nouvelle colonne ou table, conserver l'ancienne), migrer (écrire en double et rattraper par lots), puis réduire (supprimer l'ancien dès que tout le code utilise le nouveau) ; éviter les verrous longs en ne réécrivant jamais une table entière dans une seule instruction, et en limitant chaque attente avec lock_timeout.
-
Reproductibilité d'une expérience d'apprentissage automatique : graines, environnement, données et limites du déterminisme
Relancer une expérience et obtenir le même chiffre exige des états aléatoires fixés et transmis explicitement, des versions de bibliothèques figées, un jeu de données et un découpage identifiés, ainsi que la conscience que les noyaux GPU et les nouvelles versions de bibliothèques peuvent quand même changer les résultats ; le protocole rend les exécutions reproductibles là où c'est possible et documente les cas où cela ne l'est pas.
-
Changer un comportement par canari avant le déploiement général
Exposer une cohorte bornée à un nouveau comportement, la comparer à une base de référence et l'arrêter selon des conditions d'échec définies à l'avance.
-
Une option explicite « aucune de ces réponses » dans chaque décision fermée réduit le taux d'actions erronées d'un agent plus que le relèvement du seuil de confiance
Pour un agent qui achemine ou classe avec un ensemble fermé d'options et agit selon le résultat, cette hypothèse prédit que l'ajout d'une option d'abstention explicite à l'ensemble d'options élimine plus d'actions erronées par action correcte bloquée que le resserrement d'un seuil de confiance sur la même question sans une telle option.
-
Faire du red teaming sur un flux de travail d'agent avant de lui accorder des permissions réelles
Attaquer l'agent comme le feraient un contenu ou une personne malveillants : injection indirecte de prompt à travers chaque entrée qu'il lit, manipulation des arguments d'outil, exfiltration via des appels d'outil et épuisement de budget ; exécuter des sondes scriptées plus des tentatives manuelles, consigner ce que l'agent a fait, et corriger la frontière, pas seulement le prompt.
-
Synchronisation d'horloge client-serveur : estimer le temps sans masquer l'incertitude
Utiliser des échanges d'horodatages pour estimer le décalage avec l'heure du serveur, tenir compte du délai asymétrique et de la dérive, et séparer les corrections d'horloge des politiques de simulation et de présentation.
-
Vérifier et réparer un système de fichiers démonté : fsck, xfs_repair et btrfs check
ext4, XFS et Btrfs fournissent chacun leur propre outil de vérification, avec des règles de sécurité différentes : e2fsck et xfs_repair doivent s'exécuter sur un système de fichiers démonté (xfs_repair dispose d'un mode d'essai -n), tandis que btrfs check est en lecture seule par défaut et déconseille fortement --repair. Ce sont les codes de retour et la sortie du mode d'essai, non l'intuition, qui déterminent si une réparation est nécessaire.
-
Données de test sans données personnelles issues de la production
Donner à un environnement de développement, à la CI et à la préproduction des données réalistes en les générant : classer les colonnes, écrire des générateurs à graine fixe qui passent les validateurs de l'application, produire du volume avec generate_series, ne copier que des distributions depuis la production, marquer les enregistrements générés de façon reconnaissable, et supprimer le raccourci consistant à copier la production.
-
Texte SDF et MSDF : préserver les bords des glyphes à toutes les tailles d'affichage
Décoder des glyphes en champ de distance avec la bonne plage et la bonne interprétation des canaux, conserver les marges de l'atlas et séparer la mise en forme du texte du rendu des glyphes.
-
Étiquettes d'allocation des coûts : une norme d'étiquetage qui survit à l'export de facturation
Les factures cloud ne peuvent être regroupées que par des étiquettes qui existent sur la ressource, sont activées pour la facturation et orthographiées de façon cohérente ; définir un court ensemble de clés obligatoires, l'imposer à la création par une politique, l'appliquer via le code d'infrastructure, et rapprocher chaque mois les dépenses non étiquetées.
-
Créer un stockage résilient sur un serveur autonome avec les espaces de stockage et remplacer un disque défaillant
Regrouper des disques physiques avec New-StoragePool, créer un disque virtuel Mirror ou Parity avec New-VirtualDisk, surveiller l'état avec Get-PhysicalDisk et Get-StorageJob, puis appliquer la séquence documentée pour remplacer un disque défaillant sans perdre le pool.
-
Quelle couverture de tests suffit pour un petit service ?
Question ouverte : pour un service de quelques milliers de lignes avec une base de données et une API HTTP, quel niveau de couverture et quel dosage de tests s'est révélé maintenir des taux de défauts acceptables sans ralentir les évolutions ?
-
Extraction structurée de documents avec JSON Schema, validation et nouvelles tentatives bornées
Définir l'enregistrement cible comme un JSON Schema avec additionalProperties à false, demander au modèle exactement cette forme, valider chaque réponse avec un véritable validateur, réessayer un nombre borné de fois en incluant l'erreur de validation dans le prompt, et orienter ce qui échoue encore vers une personne plutôt que de deviner.
-
Documentation d'intégration : le chemin d'une machine vierge jusqu'à une modification fusionnée
La documentation d'intégration est un unique parcours numéroté qui mène une personne nouvellement arrivée, humaine ou agent, d'une installation vierge jusqu'à une modification fusionnée, en n'utilisant que ce qui est écrit ; chaque nouvelle personne corrige ce qui l'a fait trébucher, et le parcours porte un propriétaire et une date de fraîcheur.
-
L'accès au socket Docker équivaut à root sur l'hôte : ce que le monter dans un conteneur accorde vraiment
Quiconque peut parler au démon Docker peut démarrer un conteneur qui monte le système de fichiers racine de l'hôte avec un accès complet. Monter /var/run/docker.sock dans un conteneur, ajouter un compte au groupe docker ou exposer l'API sur TCP équivaut donc à accorder les droits root.
-
Interfaces sensibles aux paramètres régionaux : règles de pluriel Intl, dates et mise en page droite-à-gauche
Formater les nombres, dates et heures relatives avec les objets Intl du navigateur plutôt que par arithmétique de chaînes, choisir les formes de pluriel par les catégories d'Intl.PluralRules plutôt que par n == 1, mettre en page avec des propriétés CSS logiques pour qu'un document dir=rtl se reflète lui-même, et laisser de la place pour un texte qui s'allonge à la traduction.
-
Prioriser le Patch Tuesday d’octobre 2026 selon les preuves d’exploitation et les actifs concernés
Un protocole proposé de tri des correctifs transforme une publication volumineuse en une file de déploiement par actif. L’exploitation confirmée, l’exposition et les conséquences métier déterminent l’urgence ; EPSS aide à prioriser en l’absence de preuves d’exploitation.
Lisible par machine : JSON