HN Digest
Briefing personnel.

Lire vite.
Garder l'essentiel.

Les meilleurs longs formats de Hacker News, relus plus calmement.

11978 articles Page 304/1198 Sans filtre

Malicious Rust crate Arrayref runs a build-time payload

Le 20 août 2026 une version compromise du paquet Rust arrayref (0.3.10) publiée sur crates.io a introduit une dépendance malveillante proc-macro1 dont le script de compilation télécharge et exécute un binaire distant lors de la compilation. Les versions malveillantes ont été retirées de crates.io et les comptes du mainteneur droundy semblent compromis, les dépôts GitHub correspondants retournant des 404. Le paquet proc-macro1 est un typosquat qui copie le code légitime de proc-macro2 mais forge les métadonnées pour impersoner dtolnay et contient un build.rs qui recompose en base64 des adresses IP (23.254.165.112:9089 et :443), accepte tout certificat TLS, télécharge un binaire adapté à l'OS/architecture et l'exécute détaché. L'attaque s'est propagée en yankant les versions antérieures pour pousser les développeurs vers la seule version non yanked et, étant donné la large utilisation transitive d'arrayref, de nombreux builds ont potentiellement été exposés. Les indicateurs d'atteinte incluent l'adresse réseau 23.254.165.112, les fichiers /tmp/rust-setup et les scripts dans %TEMP% sur Windows, ainsi que les sommes de contrôle publiées pour les artefacts supprimés.

HTML Can Do That

L'article présente des nouveautés HTML permettant d'implémenter des interactions autrefois confiées à JavaScript, comme popover, dialog et commandes d'invocation. Il décrit également des éléments et attributs natifs supplémentaires tels que les details groupés, loading="lazy", hidden="until-found", datalist et des contrôles de formulaire (color, date, range, meter, progress). L'auteur précise que le support navigateur est inégal et que certaines implémentations sont incomplètes ou posent des problèmes d'accessibilité. Des extraits montrent comment ouvrir et fermer des popovers et dialogues sans JavaScript et comment utiliser command/commandfor pour que plusieurs boutons contrôlent un même élément. Rédigé pour HTML Day 2026 et mis à jour le 20 août 2026, le texte encourage à tester ces fonctionnalités avec prudence, à améliorer l'accessibilité et à proposer des corrections.

I like 'em thick: an apology to my English teachers

L'auteur explique qu'il a longtemps sous-estimé la "grande" littérature avant de comprendre qu'il existe une qualité réelle, qu'il appelle l'épaisseur, par laquelle les œuvres se déplient et révèlent davantage selon le temps et l'attention qu'on leur accorde. Il illustre cette épaisseur par des exemples concrets, comme le triptyque de Bosch où une notation peinte sur les fesses d'une figure sert d'avertissement plutôt que de partition jouable, et par des œuvres qui montrent des traces d'essais abandonnés et laissent de la place à l'apport du lecteur. Il oppose cette densité à la minceur de nombreuses productions contemporaines — livres d'auto-assistance bâclés, images ou musiques générées par IA et autres objets culturels qui n'offrent que l'apparence sans profondeur — qu'il qualifie de Potemkine. Il soutient que l'épaisseur est aussi liée au coût temporel et personnel investi par les créateurs et qu'elle se mesure à la longévité et à la capacité d'une œuvre à susciter réinterprétation et engagement sur la durée. Enfin, il met en garde contre la tentation d'externaliser ce travail aux outils automatisés et affirme que transformer une idée en œuvre dense et durable exige effort, risque et engagement humain.

Codex on AWS bedrock bug causing 10x charges

Le CLI Codex envoyant des requêtes à Amazon Bedrock Mantle ne peut pas activer la mise en cache explicite des prompts pour GPT-5.6 Sol, ce qui a généré beaucoup d'écritures de cache et des coûts significativement supérieurs sur une charge de travail agentique de codage. Entre le 5 et le 8 août 2026, des estimations basées sur Cost Explorer et le tarif Bedrock indiquent 3 656 requêtes, 171,94 millions de tokens d'écriture de cache et un coût estimé d'environ 1 182,09 $ pour les écritures de cache, soit 1 386,46 $ au total. L'enquête note que Codex émet une clé de session prompt_cache_key mais que les types de requête Responses HTTP et WebSocket ne prennent pas en charge prompt_cache_options ni prompt_cache_breakpoint, et que la configuration du provider natif Bedrock n'autorise pas la transformation structurée du corps de requête. Les demandes incluent d'ajouter la sérialisation de prompt_cache_options pour les providers Responses compatibles GPT-5.6, d'introduire un champ typé prompt_cache_breakpoint dans les blocs d'entrée, d'ajouter une gate de capacité provider/modèle et une stratégie de placement sûre, ainsi que de faire remonter les lectures et écritures de cache dans la télémétrie par tour. Le rapport précise que toutes les écritures de cache ne sont pas nécessairement des défauts, mais que l'absence du mécanisme explicite de cache pour le préfixe stable empêche d'optimiser ce cas d'usage sur le provider natif Bedrock.

Collaborative Human Agent Protocol (CHAP)

CHAP définit un format unique pour consigner et retrouver les décisions humaines sur les productions d'agents en stockant chaque modification dans une enveloppe interrogeable, rejouable et vérifiable. Chaque enveloppe relie l'artefact produit par l'agent et la modification humaine via un override structuré contenant un diff, une justification, des balises contrôlées et un indicateur distinguant raffinement (intention préservée) et substitution (changement de décision). Des implémentations de référence en TypeScript et Python, des passerelles MCP et A2A, des adaptateurs pour cadres d'agents et un harnais de conformité sont fournis pour intégration et vérification. L'adoption produit une chaîne d'audit signée et résiliente, des données de supervision structurées issues du travail quotidien, et des options pour signatures OIDC et ancrage dans des journaux de transparence externes. La spécification, des scénarios pratiques, des analyses d'overrides et des instructions d'installation figurent dans le dépôt avec des licences permissives et une citation recommandée pour le rapport technique.

Activation Energy is a good model for a lot of things

Le texte illustre le concept d'énergie d'activation par des exemples physiques simples comme chauffer du papier jusqu'à la combustion, la différence entre friction statique et cinétique, et le seuil cumulatif nécessaire pour qu'un neurone s'active. L'auteur souligne que beaucoup de processus demandent un effort initial élevé pour démarrer mais bien moins pour être maintenus, ce qui explique la dynamique des relations et des habitudes quotidiennes. Il montre aussi qu'on peut manipuler ces seuils intentionnellement — par exemple en rendant un comportement plus difficile (mettre des cookies en hauteur) ou plus visible (placer un vélo dans le salon) — et applique l'idée aux conversations difficiles en couple. Le texte examine l'origine de cette énergie chez chacun (introversion versus extraversion, état physiologique, motivation positive ou négative) et se questionne sur sa fungibilité et ses coupures possibles. Enfin, l'auteur ne propose pas de tout réduire à ce cadre mais encourage un exercice d'observation d'une semaine pour repérer quelles activités coûtent peu ou beaucoup d'énergie et comment ajuster ces seuils.

How Kubernetes Probes Work

L'article explique, avec des démonstrations interactives basées sur webernetes, le fonctionnement des probes dans Kubernetes et signale qu'un bug a été trouvé en testant contre k3s. Les probes se divisent en startup, readiness et liveness, les startup probes retardant le début des probes de readiness et liveness pour empêcher qu'un conteneur non initialisé ne reçoive du trafic. Des exemples montrent que l'absence ou la mauvaise configuration des probes peut provoquer des CrashLoopBackOff, des requêtes échouées lors de redémarrages brusques et des pannes en cascade alimentées par des retries. L'article décrit aussi l'interaction des probes avec ReplicaSets, Services et Deployments, expliquant comment la condition Ready contrôle le routage et comment les paramètres de probe influent sur la vitesse des rollouts. Il fournit enfin des conseils pratiques pour concevoir des endpoints de probe fiables — garder les vérifications peu coûteuses et locales, régler correctement periodSeconds et failureThreshold, et éviter de dépendre d'éléments partagés pour liveness ou readiness — et propose un environnement de test pour expérimenter.