NestJS: un message pattern anidado tira abajo el proceso de microservices
CVE-2026-102281 (high, CVSS 7.5) en @nestjs/microservices: un pattern de mensaje con anidamiento profundo termina el proceso de forma remota. Si tu transport (TCP, Redis, NATS, Kafka) recibe mensajes de clientes que no controlás, es un kill switch gratis. Parcheado en 12.0.2 y 11.2.4 — ojo que la línea 12 ya va por 12.1.x, así que si estás al día ya estás cubierto.
Hono 4.13.11: serveStatic decodificaba dos veces y salteaba middleware
serveStatic decodificaba un path ya decodificado: un request armado se ruteaba como un path y se servía como otro, salteando el middleware montado sobre el prefijo estático (auth incluida). Advisory medium (CVSS 5.3), afecta hono/bun, hono/deno, hono/cloudflare-workers y los @hono/*. Ahora rechaza paths con % tras decodificar; si servís archivos con % literal, activá allowPercentInPath: true. En Node el fix viene en @hono/node-server 2.1.3.
Archivos comprimidos, mala semana: decompress (crítico), adm-zip y brace-expansion
CVE-2026-101894 (critical, CVSS 9.1): @xhmikosr/decompress permite path traversal con una cadena de symlinks — fix en 11.1.4/10.2.2, y el decompress original no tiene parche, así que migrá. En la misma tanda, adm-zip sumó siete advisories: preserva bits SUID/SGID al extraer (CVE-2026-102282, escalada local), el anti zip-bomb se saltea declarando tamaño 0 y un error async crashea el proceso — actualizá a 0.6.1. Y brace-expansion (dependencia transitiva de medio npm vía minimatch) tiene tres DoS por recursión; parches desde 1.1.19 hasta 5.0.10. Si aceptás uploads comprimidos, esto no es opcional.
Socket.IO / engine.io: DoS por mismatch de revisión de protocolo
CVE-2026-102599 (high, CVSS 7.5): un cliente que negocia una revisión de protocolo que no coincide puede tumbar el server engine.io 6.6.x. Fix en 6.6.10. Si tenés sockets expuestos a Internet (chat, dashboards en vivo), revisá el lockfile — engine.io viene transitivo con socket.io.
joi: ReDoS en Joi.string().isoDate()
Backtracking cuadrático en la regex de isoDate() (high). Es la validación que ponés justamente en el borde, contra input no confiable — o sea, el peor lugar. Parcheado en 17.13.7 y 18.2.6. Mismo día: webpack-dev-middleware path traversal (high, fix 8.3.0/7.4.6) — dev-only, pero ojo si exponés el dev server.
ElastiCache Serverless para Valkey suma endpoints públicos con IAM sobre TLS 1.3
Con Valkey 9.0+ ya podés pegarle al cache desde afuera de la VPC — tu laptop, una function en otro cloud — sin bastion ni túnel SSH. Auth por IAM sobre TLS 1.3, sin passwords, con Valkey GLIDE 2.2+. Sin costo extra y en todas las regiones comerciales. Golazo para la DX en prototipos; en prod, pensalo dos veces antes de sacar el cache de la red privada.
Aurora PostgreSQL soporta 18.6, 17.11, 16.15, 15.19 y 14.24
Aurora se pone al día con los últimos minors de la comunidad PostgreSQL en todas las ramas soportadas. Son bug fixes, pero agendá el upgrade en tu próxima ventana de mantenimiento.
Cloudflare Worker Previews: un entorno aislado y con URL estable por cada branch
Sale de beta privada: cada branch de Git tiene su entorno production-like con URL estable, vía npx wrangler preview. Lo interesante es el estado: Wrangler crea namespaces de Durable Objects y apps de Containers separadas por preview, así un cambio de schema no te rompe prod. Cientos de previews conviven bajo el mismo Worker. Esto es lo que Vercel te daba para el frontend, ahora para el backend en el edge.
Python Workers llega a GA en Cloudflare, con debate sobre cold starts
Tras dos años de preview, Python queda a la par de JS/TS en Workers, sobre Pyodide (paquetes nativos compilados a WASM, estandarizado vía PEP 783). Anda con FastAPI, Django y Flask y bindings a D1, R2 y Hyperdrive. El punto flojo: Cloudflare reporta cold starts de ~1 s y la comunidad cuestiona el mantenimiento upstream de Pyodide. Para equipos mixtos TS/Python es interesante; para latencia crítica, medí antes.
Amazon CloudWatch Omni: observabilidad para apps y agentes, OpenTelemetry nativo
AWS reposiciona CloudWatch para la era de los agentes: traces end-to-end que además evalúan correctitud, retrieval y selección de tools, con soporte nativo de OpenTelemetry, OpenInference y ADOT. Integra LangChain, LangGraph, CrewAI y evaluadores como Braintrust o Ragas. Si ya instrumentás con OTel, no tenés que reconfigurar nada — ese es el verdadero argumento de venta.
Atlassian reconstruye su pipeline de métricas sobre OpenTelemetry: 4.8B puntos por minuto
Migraron de gostatsd (UDP) al OpenTelemetry Collector con distribuciones propias para colección, ingesta, agregación y forwarding: ~100.000 hosts, 14 regiones, y la agregación recorta el almacenamiento un 96%. Meter las métricas en el sidecar de tracing que ya existía bajó ~30% de CPU en toda la flota. Dos lecciones de arquitectura de manual: mantener la interfaz y reconstruir todo detrás convirtió una migración de toda la org en una del equipo de plataforma (puertos y adaptadores, ¿vieron?), y los benchmarks chicos no alcanzaron — el profiling continuo en prod fue lo que marcó dónde optimizar.
SvelteKit 3 llega a RC: la config se muda a Vite y $lib pasa a #lib
Chau svelte.config.js: la configuración vive en vite.config.ts. El alias $lib se reemplaza por #lib usando subpath imports nativos de Node — con extensión obligatoria (#lib/foo.js), así que preparate para un codemod. Todos los errores pasan por handleError con stack traces con sourcemaps, y requiere Vite 8 + Rolldown. Remote Functions (RPC type-safe cliente-servidor) siguen experimentales. Apostar a estándares de Node en vez de aliases mágicos es la decisión correcta.
Tendencias Destacadas
Semana de auditoría masiva en npm: undici, adm-zip, brace-expansion, nodemailer, fast-uri e ip-address recibieron tandas de advisories el mismo día. Parece un barrido coordinado de parsers y descompresores — revisá el lockfile completo, no solo tus dependencias directas.
El edge se vuelve plataforma completa: previews por branch con estado aislado y Python en GA acercan Workers a lo que antes solo daban los PaaS tradicionales.
OpenTelemetry ya es el contrato por defecto: Atlassian migra métricas a escala masiva y AWS diseña CloudWatch Omni alrededor de OTel. Instrumentá contra el estándar, no contra el vendor.
NestJS: a deeply nested message pattern kills the microservices process
CVE-2026-102281 (high, CVSS 7.5) in @nestjs/microservices: a deeply nested message pattern remotely terminates the process. If your transport (TCP, Redis, NATS, Kafka) receives messages from clients you don't control, that's a free kill switch. Fixed in 12.0.2 and 11.2.4 — the 12 line is already at 12.1.x, so current installs are covered.
Hono 4.13.11: serveStatic decoded twice and skipped middleware
serveStatic decoded an already-decoded path: a crafted request could be routed as one path and served as another, skipping middleware mounted on a static prefix (auth included). Medium (CVSS 5.3), affects hono/bun, hono/deno, hono/cloudflare-workers and the @hono/* adapters. It now rejects paths still containing % after decoding; set allowPercentInPath: true for literal % filenames. On Node the fix ships in @hono/node-server 2.1.3.
Bad week for archive handling: decompress (critical), adm-zip and brace-expansion
CVE-2026-101894 (critical, CVSS 9.1): @xhmikosr/decompress allows path traversal via a symlink chain — fixed in 11.1.4/10.2.2, and the original decompress has no patch, so migrate. Same batch: adm-zip got seven advisories — it preserves SUID/SGID bits on extraction (CVE-2026-102282, local privilege escalation), its zip-bomb guard is bypassed by declaring size 0, and an async error crashes the process; update to 0.6.1. And brace-expansion (transitive in half of npm via minimatch) has three recursion DoS bugs, patched from 1.1.19 through 5.0.10. If you accept compressed uploads, this is not optional.
Socket.IO / engine.io: DoS via protocol revision mismatch
CVE-2026-102599 (high, CVSS 7.5): a client negotiating a mismatched protocol revision can take down an engine.io 6.6.x server. Fixed in 6.6.10. If you expose sockets to the Internet (chat, live dashboards), check your lockfile — engine.io comes in transitively with socket.io.
joi: ReDoS in Joi.string().isoDate()
Quadratic backtracking in the isoDate() regex (high). This is validation you put right at the edge, against untrusted input — the worst place for it. Fixed in 17.13.7 and 18.2.6. Same day: webpack-dev-middleware path traversal (high, fixed in 8.3.0/7.4.6) — dev-only, but careful if you expose the dev server.
ElastiCache Serverless for Valkey adds public endpoints with IAM over TLS 1.3
With Valkey 9.0+ you can now reach the cache from outside the VPC — your laptop, a function in another cloud — without a bastion or SSH tunnel. Auth via IAM over TLS 1.3, no passwords, using Valkey GLIDE 2.2+. No extra cost, all commercial regions. Great DX for prototyping; in production, think twice before moving your cache off the private network.
Aurora PostgreSQL supports 18.6, 17.11, 16.15, 15.19 and 14.24
Aurora catches up with the latest PostgreSQL community minors across every supported branch. Bug fixes only, but schedule the upgrade in your next maintenance window.
Cloudflare Worker Previews: an isolated environment with a stable URL per branch
Out of private beta: every Git branch gets a production-like environment with a stable URL, via npx wrangler preview. The interesting part is state: Wrangler creates separate Durable Object namespaces and Container apps per preview, so a schema change can't break production. Hundreds of previews can run under one Worker. What Vercel gave you for the frontend, now for edge backends.
Python Workers reach GA on Cloudflare, amid debate over cold starts
After two years in preview, Python joins JS/TS as a first-class Workers language, built on Pyodide (native packages cross-compiled to WASM, standardized via PEP 783). Works with FastAPI, Django and Flask, with bindings to D1, R2 and Hyperdrive. The weak spot: Cloudflare reports ~1 s cold starts, and the community questions upstream Pyodide maintenance funding. Interesting for mixed TS/Python teams; for latency-critical paths, measure first.
Amazon CloudWatch Omni: observability for apps and agents, native OpenTelemetry
AWS repositions CloudWatch for the agent era: end-to-end traces that also evaluate correctness, retrieval and tool selection, with native OpenTelemetry, OpenInference and ADOT support. Integrates LangChain, LangGraph, CrewAI and evaluators like Braintrust or Ragas. If you already instrument with OTel, there's nothing to reconfigure — that's the real selling point.
Atlassian rebuilds its metrics pipeline on OpenTelemetry: 4.8B points per minute
They moved from gostatsd (UDP) to the OpenTelemetry Collector with purpose-built distributions for collection, ingest, aggregation and forwarding: ~100,000 hosts, 14 regions, with aggregation cutting stored data by 96%. Folding metrics into the existing tracing sidecar saved ~30% CPU fleet-wide. Two textbook architecture lessons: keep the interface and rebuild everything behind it turned an org-wide migration into a platform-team one (ports and adapters, anyone?), and small benchmarks weren't enough — continuous profiling in production showed where to optimize.
SvelteKit 3 hits RC: config moves to Vite and $lib becomes #lib
Goodbye svelte.config.js: configuration lives in vite.config.ts. The $lib alias is replaced by #lib using Node's native subpath imports — with mandatory extensions (#lib/foo.js), so expect a codemod. All errors flow through handleError with sourcemapped stack traces, and it requires Vite 8 + Rolldown. Remote Functions (type-safe client-server RPC) remain experimental. Betting on Node standards over magic aliases is the right call.
Notable Trends
Mass-audit week on npm: undici, adm-zip, brace-expansion, nodemailer, fast-uri and ip-address all got advisory batches on the same day. It looks like a coordinated sweep of parsers and decompressors — review your whole lockfile, not just direct dependencies.
The edge is becoming a full platform: per-branch previews with isolated state and Python GA bring Workers closer to what only traditional PaaS offered.
OpenTelemetry is now the default contract: Atlassian migrates metrics at massive scale and AWS builds CloudWatch Omni around OTel. Instrument against the standard, not the vendor.
NestJS : un message pattern profondément imbriqué tue le processus microservices
CVE-2026-102281 (high, CVSS 7.5) dans @nestjs/microservices : un pattern de message profondément imbriqué termine le processus à distance. Corrigé en 12.0.2 et 11.2.4.
Hono 4.13.11 : serveStatic décodait deux fois et contournait le middleware
serveStatic décodait un chemin déjà décodé, permettant de contourner le middleware monté sur un préfixe statique. Medium (CVSS 5.3). Les chemins contenant encore % sont désormais rejetés (allowPercentInPath: true pour l'autoriser). Pour Node : @hono/node-server 2.1.3.
Mauvaise semaine pour les archives : decompress (critique), adm-zip et brace-expansion
CVE-2026-101894 (critique, CVSS 9.1) : path traversal via chaîne de symlinks dans @xhmikosr/decompress (corrigé en 11.1.4/10.2.2 ; decompress original sans correctif). adm-zip : sept advisories dont la préservation des bits SUID/SGID (CVE-2026-102282), corrigé en 0.6.1. brace-expansion : trois DoS par récursion, corrigés de 1.1.19 à 5.0.10.
Socket.IO / engine.io : DoS via incohérence de révision de protocole
CVE-2026-102599 (high, CVSS 7.5) : une révision de protocole incohérente peut faire tomber un serveur engine.io 6.6.x. Corrigé en 6.6.10.
joi : ReDoS dans Joi.string().isoDate()
Backtracking quadratique dans la regex de isoDate() (high). Corrigé en 17.13.7 et 18.2.6.
ElastiCache Serverless pour Valkey ajoute des endpoints publics avec IAM sur TLS 1.3
Avec Valkey 9.0+, le cache est accessible hors VPC sans bastion, via IAM sur TLS 1.3 et Valkey GLIDE 2.2+. Sans surcoût, toutes régions commerciales.
Aurora PostgreSQL prend en charge 18.6, 17.11, 16.15, 15.19 et 14.24
Aurora rattrape les dernières versions mineures de PostgreSQL sur toutes les branches supportées.
Cloudflare Worker Previews : un environnement isolé avec URL stable par branche
Fin de la bêta privée : chaque branche Git obtient un environnement proche de la prod avec URL stable (npx wrangler preview), avec des namespaces Durable Objects et apps Containers séparés par preview.
Python Workers en GA chez Cloudflare, sur fond de débat sur les cold starts
Après deux ans de preview, Python rejoint JS/TS sur Workers via Pyodide (PEP 783). Compatible FastAPI, Django, Flask. Point faible : cold starts d'environ 1 s et questions sur la maintenance amont de Pyodide.
Amazon CloudWatch Omni : observabilité pour apps et agents, OpenTelemetry natif
CloudWatch se repositionne pour les agents : traces de bout en bout avec évaluation (exactitude, retrieval, choix d'outils), support natif d'OpenTelemetry, OpenInference et ADOT.
Atlassian reconstruit son pipeline de métriques sur OpenTelemetry : 4,8 Md de points par minute
Migration de gostatsd (UDP) vers l'OpenTelemetry Collector : ~100 000 hôtes, 14 régions, 96 % de données stockées en moins, ~30 % de CPU économisé. Leçon clé : garder l'interface et tout reconstruire derrière, et s'appuyer sur le profiling continu en production.
SvelteKit 3 en RC : la config passe dans Vite et $lib devient #lib
Fin de svelte.config.js : la config vit dans vite.config.ts. $lib devient #lib via les subpath imports natifs de Node (extension obligatoire). Requiert Vite 8 + Rolldown ; les Remote Functions restent expérimentales.
Tendances Notables
Semaine d'audit massif sur npm : undici, adm-zip, brace-expansion, nodemailer, fast-uri et ip-address ont reçu des séries d'advisories le même jour. Vérifiez tout le lockfile, pas seulement les dépendances directes.
L'edge devient une plateforme complète : previews par branche avec état isolé et Python en GA.
OpenTelemetry devient le contrat par défaut : instrumentez contre le standard, pas contre le fournisseur.