← Backend & Fullstack

Backend & Fullstack Daily — 20 Oct 2026: NestJS 12.2 ships safe default limits, Prisma fixes crossed transactions and pgBackRest gets strict

Lo nuevo hoy

Today's highlights

Points forts du jour

Click en cualquiera para ir al detalle

Click any item to jump to the full section

Cliquez un élément pour aller à la section complète

🔥

Top Stories

Breaking

NestJS 12.2.0: límites por defecto contra abuso de memoria y CPU

Es una minor, pero tratala como upgrade con lectura obligatoria. NestJS mete topes por defecto en casi todos los bordes: fieldNestingDepth 32 y fieldArrayIndexLimit 1000 en Express/Fastify, maxConcurrentMessages 1000 en WebSockets, 16 MiB por mensaje Kafka, maxPendingDataLength en SSE y drainTimeout de 30 s en TCP. Ojo con los cambios de comportamiento: ValidationPipe ya no expone error.target y responde 400 si mandás un array o un primitivo donde va una clase; FileTypeValidator deja de aceptar font/woff2 para font/woff; y un enhancer global que falla al instanciarse ahora tumba el arranque. Si tenés un exceptionFactory custom, revisalo antes de actualizar.

19 Oct 2026
github.com/nestjs →
Patch

Prisma 7.10.1: un $transaction anidado podía meter tus queries en la transacción de otro request

Bug feo y silencioso: si reusabas el mismo objeto de opciones (por ejemplo una constante TX_OPTIONS) en un tx.$transaction() anidado y después en uno top-level, Prisma escribía el id de la transacción externa en ese objeto. Resultado: las transacciones siguientes fallaban con P2028 o, peor, corrían como savepoint dentro de la transacción de otro request. Además, Migrate ahora rechaza con P3025 un shadow database que apunta a la base principal (antes te borraba el schema real) y se actualizan mysql2, fast-uri y mariadb por advisories. Actualizá YA si usás transacciones interactivas anidadas.

19 Oct 2026
github.com/prisma →
🧩

Frameworks & Libraries

Destacado

NestJS 12 en perspectiva: ESM, Standard Schema y observabilidad nativa

InfoQ hace el resumen de la major: los paquetes core pasan a ESM, pero las apps CommonJS siguen andando gracias a require(esm) de Node, y nest new te deja elegir. Los decoradores de body, query y params aceptan schemas de Zod, Valibot o ArkType vía Standard Schema, y llega @nestjs/observe, un SDK oficial que organiza traces por controllers y providers. Requiere Node 20.19+ o 22.12+. Es un golazo para la DX si venías peleando con class-validator.

19 Oct 2026
infoq.com →
Destacado

Zod 4.5/4.6: compilación de schemas en proceso y 9x menos memoria

z.compile() precompila schemas y hace el parseo entre 3 y 9 veces más rápido; un z.string() pelado pasa de 7.5 KB a unos 784 bytes de heap, y un safeParse() fallido sale 7.5 veces más barato. Zod 4.6 suma .validate(), booleano y hasta 35x más rápido que .safeParse().success con input inválido. Compilado, Zod llega a 47.5M ops/s en el benchmark de Moltar, apenas por encima de Typia. Si validás en hot paths de tu API, ponete las pilas y medilo.

16 Oct 2026
infoq.com →
🗄️

Databases & Data

Release

pgBackRest 2.60.0: restore y expire se frenan ante checksums de página inválidos

Cambio de comportamiento que te puede romper un runbook: restore y expire ahora cortan si encuentran checksums de página inválidos, salvo que pongas checksum-page-error=n. También suma Workload Identity Federation para GCS, prefetch de lecturas multi-archivo y por rango desde object stores, y soporte para OpenSSL 4. Probá un restore en staging antes de actualizar producción.

18 Oct 2026
postgresql.org →
☁️

Cloud & DevOps

Destacado

GuardDuty suma más de 50 reglas opcionales de Runtime Monitoring

Reglas que detectan actividad de procesos, archivos y red que es normal en un entorno pero sospechosa en otro, para EC2, EKS y ECS (en EC2 y Fargate), con 4 tipos de finding nuevos. Lo mejor: un modo dry-run para medir el ruido antes de activarlas en serio. Disponible en todas las regiones comerciales y GovCloud.

19 Oct 2026
aws.amazon.com →
Beta

AWS lanza en preview un Well-Architected Agent que revisa tu IaC antes del deploy

Un agente que contrasta tus entornos con las prácticas Well-Architected y prioriza recomendaciones de costo, seguridad, performance y confiabilidad; también revisa infrastructure-as-code antes de desplegar. Por ahora solo en tres regiones de EE.UU. y pide plan Business Support+ o superior.

18 Oct 2026
infoq.com →
Minor

Buildkite suma secrets por pipeline y herramientas MCP para CI

Los secrets de cluster se pueden limitar a un pipeline y, además, por branch, queue, origen del build o autor: menos radio de explosión si un job se compromete. También hay tools MCP para validar YAML de pipelines, comparar builds fallidos con exitosos y agregar webhooks de GitHub faltantes, más soporte Linux arm64 en Agent v4.1.0.

19 Oct 2026
infoq.com →
🏗️

Architecture & Best Practices

Destacado

Pinterest cierra particiones CDC por event time con watermarks en Iceberg

Caso de estudio para cualquiera que alimente analítica desde CDC: Flink mide el progreso de event time en cada checkpoint y publica un watermark monótono «safe-to-read» como propiedad de la tabla Iceberg. Los jobs downstream esperan esa señal en vez de adivinar cuándo una partición está completa. Patrón simple y portable.

19 Oct 2026
infoq.com →
Beta

Vitest 5.1.0-beta.1: --last-failed, --since-last-run y fake timers para node:timers

Para el loop TDD es oro: --last-failed corre solo lo que falló y --since-last-run lo que cambió desde la última corrida. Los fake timers ahora cubren node:timers y node:timers/promises, vi.setSystemTime() acepta Temporal.Instant y ZonedDateTime, y el trace view del modo browser deja de ser experimental. Ojo: el puerto por defecto del modo browser pasa a 23315.

19 Oct 2026
github.com/vitest-dev →
🔥

Top Stories

Breaking

NestJS 12.2.0: default limits against memory and CPU abuse

It is a minor, but treat it as a must-read upgrade. NestJS adds default caps on nearly every edge: fieldNestingDepth 32 and fieldArrayIndexLimit 1000 on Express/Fastify, maxConcurrentMessages 1000 on WebSockets, 16 MiB per Kafka message, maxPendingDataLength on SSE and a 30 s drainTimeout on TCP. Watch the behaviour changes: ValidationPipe no longer exposes error.target and returns 400 when an array or primitive is sent for a class; FileTypeValidator stops accepting font/woff2 for font/woff; and a global enhancer that fails to instantiate now fails startup. Review any custom exceptionFactory before upgrading.

19 Oct 2026
github.com/nestjs →
Patch

Prisma 7.10.1: a nested $transaction could put your queries inside another request's transaction

Nasty, silent bug: if you reused the same options object (say a TX_OPTIONS constant) in a nested tx.$transaction() and later in a top-level one, Prisma wrote the outer transaction id into that object. Later transactions then failed with P2028 or, worse, ran as a savepoint inside another request's transaction. Migrate now also refuses with P3025 a shadow database pointing at the main database (it used to drop the real schema), and mysql2, fast-uri and mariadb are bumped for advisories. Upgrade now if you use nested interactive transactions.

19 Oct 2026
github.com/prisma →
🧩

Frameworks & Libraries

Notable

NestJS 12 in perspective: ESM, Standard Schema and native observability

InfoQ recaps the major: core packages move to ESM, while CommonJS apps keep working through Node's require(esm), and nest new lets you pick. Body, query and param decorators accept Zod, Valibot or ArkType schemas via Standard Schema, and @nestjs/observe arrives as an official SDK that groups traces by controllers and providers. Requires Node 20.19+ or 22.12+.

19 Oct 2026
infoq.com →
Notable

Zod 4.5/4.6: in-process schema compilation and 9x less memory

z.compile() precompiles schemas and makes parsing 3 to 9 times faster; a bare z.string() drops from 7.5 KB to about 784 bytes of heap, and a failed safeParse() is 7.5 times cheaper. Zod 4.6 adds .validate(), boolean-only and up to 35x faster than .safeParse().success on invalid input. Compiled Zod reaches 47.5M ops/s on the Moltar benchmark, just ahead of Typia.

16 Oct 2026
infoq.com →
🗄️

Databases & Data

Release

pgBackRest 2.60.0: restore and expire stop on invalid page checksums

A behaviour change that can break a runbook: restore and expire now stop when they hit invalid page checksums unless you set checksum-page-error=n. It also adds GCS Workload Identity Federation, prefetching of multi-file and range reads from object stores, and OpenSSL 4 support. Rehearse a restore in staging before upgrading production.

18 Oct 2026
postgresql.org →
☁️

Cloud & DevOps

Notable

GuardDuty adds 50+ optional Runtime Monitoring rules

Rules that flag process, file and network activity that is normal in one environment but suspicious in another, covering EC2, EKS and ECS (on EC2 and Fargate), with 4 new finding types. The best part: a dry-run mode to measure noise before turning them on for real. Available in all commercial Regions and GovCloud.

19 Oct 2026
aws.amazon.com →
Beta

AWS previews a Well-Architected Agent that reviews your IaC before deploy

An agent that checks your environments against Well-Architected practices and ranks cost, security, performance and reliability recommendations; it can also review infrastructure-as-code before deployment. Limited to three US Regions for now and requires Business Support+ or higher.

18 Oct 2026
infoq.com →
Minor

Buildkite adds pipeline-scoped secrets and MCP tools for CI

Cluster secrets can now be restricted to a single pipeline and further by branch, queue, build source or creator, shrinking the blast radius of a compromised job. New MCP tools validate pipeline YAML, diff failed builds against successful ones and add missing GitHub webhooks, plus Linux arm64 support in Agent v4.1.0.

19 Oct 2026
infoq.com →
🏗️

Architecture & Best Practices

Notable

Pinterest finalizes CDC partitions by event time with Iceberg watermarks

A case study for anyone feeding analytics from CDC: Flink measures event-time progress at each checkpoint and publishes a monotonic “safe-to-read” watermark as an Iceberg table property. Downstream jobs wait for that signal instead of guessing when a partition is complete.

19 Oct 2026
infoq.com →
Beta

Vitest 5.1.0-beta.1: --last-failed, --since-last-run and fake timers for node:timers

Gold for the TDD loop: --last-failed runs only what failed and --since-last-run runs what changed since the last run. Fake timers now cover node:timers and node:timers/promises, vi.setSystemTime() accepts Temporal.Instant and ZonedDateTime, and browser-mode trace view drops its experimental label. Note: the browser-mode default port moves to 23315.

19 Oct 2026
github.com/vitest-dev →
🔥

Top Stories

Breaking

NestJS 12.2.0 : limites par défaut contre l'abus de mémoire et de CPU

C'est une mineure, mais lisez les notes avant de mettre à jour. NestJS ajoute des plafonds par défaut presque partout : fieldNestingDepth 32 et fieldArrayIndexLimit 1000 sur Express/Fastify, maxConcurrentMessages 1000 sur WebSockets, 16 Mio par message Kafka, maxPendingDataLength sur SSE et un drainTimeout de 30 s en TCP. Attention aux changements : ValidationPipe n'expose plus error.target et répond 400 pour un tableau ou un primitif à la place d'une classe ; FileTypeValidator n'accepte plus font/woff2 pour font/woff ; un enhancer global qui échoue fait désormais échouer le démarrage.

19 Oct 2026
github.com/nestjs →
Patch

Prisma 7.10.1 : un $transaction imbriqué pouvait placer vos requêtes dans la transaction d'une autre requête

Bug silencieux et sérieux : si vous réutilisiez le même objet d'options (une constante TX_OPTIONS) dans un tx.$transaction() imbriqué puis dans un appel de premier niveau, Prisma y écrivait l'id de la transaction externe. Les transactions suivantes échouaient avec P2028 ou s'exécutaient comme savepoint dans la transaction d'une autre requête. Migrate refuse aussi avec P3025 une shadow database identique à la base principale, et mysql2, fast-uri et mariadb sont mis à jour pour des advisories.

19 Oct 2026
github.com/prisma →
🧩

Frameworks & Libraries

Notable

NestJS 12 en perspective : ESM, Standard Schema et observabilité native

InfoQ résume la majeure : les paquets core passent en ESM, les applications CommonJS continuant de fonctionner grâce à require(esm) de Node, et nest new laisse le choix. Les décorateurs de body, query et params acceptent des schémas Zod, Valibot ou ArkType via Standard Schema, et @nestjs/observe arrive comme SDK officiel qui organise les traces par contrôleurs et providers. Node 20.19+ ou 22.12+ requis.

19 Oct 2026
infoq.com →
Notable

Zod 4.5/4.6 : compilation des schémas en processus et 9x moins de mémoire

z.compile() précompile les schémas et rend le parsing 3 à 9 fois plus rapide ; un simple z.string() passe de 7,5 Ko à environ 784 octets de heap, et un safeParse() en échec coûte 7,5 fois moins. Zod 4.6 ajoute .validate(), booléen et jusqu'à 35x plus rapide que .safeParse().success sur une entrée invalide. Compilé, Zod atteint 47,5M ops/s sur le benchmark Moltar, juste devant Typia.

16 Oct 2026
infoq.com →
🗄️

Databases & Data

Release

pgBackRest 2.60.0 : restore et expire s'arrêtent sur des checksums de page invalides

Un changement qui peut casser un runbook : restore et expire s'arrêtent désormais sur des checksums de page invalides, sauf avec checksum-page-error=n. La version ajoute aussi Workload Identity Federation pour GCS, le prefetch des lectures multi-fichiers et par plage depuis les object stores, et le support d'OpenSSL 4.

18 Oct 2026
postgresql.org →
☁️

Cloud & DevOps

Notable

GuardDuty ajoute plus de 50 règles optionnelles de Runtime Monitoring

Des règles qui signalent une activité de processus, fichiers et réseau normale dans un environnement mais suspecte dans un autre, pour EC2, EKS et ECS (sur EC2 et Fargate), avec 4 nouveaux types de findings. Un mode dry-run permet de mesurer le bruit avant activation. Disponible dans toutes les régions commerciales et GovCloud.

19 Oct 2026
aws.amazon.com →
Bêta

AWS lance en preview un Well-Architected Agent qui vérifie votre IaC avant le déploiement

Un agent qui compare vos environnements aux pratiques Well-Architected et priorise les recommandations de coût, sécurité, performance et fiabilité ; il peut aussi relire l'infrastructure-as-code avant le déploiement. Limité à trois régions américaines et réservé au plan Business Support+ ou supérieur.

18 Oct 2026
infoq.com →
Mineur

Buildkite ajoute des secrets par pipeline et des outils MCP pour la CI

Les secrets de cluster peuvent être limités à un pipeline, puis par branche, file, source du build ou auteur, ce qui réduit l'impact d'un job compromis. De nouveaux outils MCP valident le YAML des pipelines, comparent les builds en échec aux builds réussis et ajoutent les webhooks GitHub manquants, avec le support Linux arm64 dans Agent v4.1.0.

19 Oct 2026
infoq.com →
🏗️

Architecture & Best Practices

Notable

Pinterest finalise ses partitions CDC par event time avec des watermarks Iceberg

Une étude de cas pour qui alimente l'analytique depuis du CDC : Flink mesure la progression de l'event time à chaque checkpoint et publie un watermark monotone «safe-to-read» comme propriété de table Iceberg. Les jobs en aval attendent ce signal au lieu de deviner quand une partition est complète.

19 Oct 2026
infoq.com →
Bêta

Vitest 5.1.0-beta.1 : --last-failed, --since-last-run et fake timers pour node:timers

Idéal pour la boucle TDD : --last-failed ne relance que les échecs et --since-last-run ce qui a changé depuis la dernière exécution. Les fake timers couvrent node:timers et node:timers/promises, vi.setSystemTime() accepte Temporal.Instant et ZonedDateTime, et le trace view du mode navigateur n'est plus expérimental. Le port par défaut du mode navigateur passe à 23315.

19 Oct 2026
github.com/vitest-dev →