Prometheus 3.13.3: un regex case-insensitive te estaba descartando valores en silencio
El bugfix que más importa: los label matchers con regex case-insensitive en PromQL descartaban valores que sí matcheaban. Traducido al turno de guardia: una query que creías que cubría todo tu fleet devolvía menos series de las que hay, y una alerta basada en ese matcher simplemente no dispara. Los peores bugs de observabilidad no son los que rompen el dashboard, son los que te lo dejan verde.
Vienen varios más del mismo calibre: queries out-of-order bloqueando la compaction por horas con la memoria creciendo, series borradas que causaban samples faltantes y errores tras un restart, 100% de CPU en shutdown tanto en el scrape manager como en alerting —lo que demoraba el graceful shutdown hasta gatillar kills por timeout—, y leaks de goroutines y file handles al fallar al abrir un TSDB corrupto (en Windows el handle filtrado además impedía borrar el directorio). Sumale bumps de seguridad de klauspost/compress y golang.org/x/crypto.
Azure APIM: zone redundancy baja a Standard v2, pero no la podés activar en lo que ya tenés
La redundancia de zona deja de ser exclusiva de Premium: Standard v2 la soporta a $700/mes por unidad, contra $2.801 de Premium v2. Diferencia de SLA: 99,95% en Standard v2 contra 99,99% en Premium — aunque ese 99,99% exige desplegar en al menos dos zonas o regiones.
Ahora, la limitación que te arruina el plan: no se puede habilitar sobre una instancia Standard v2 existente. Hay que crear un deployment nuevo, con re-import de APIs, reconfiguración de policies, cambios de DNS y migración de subscription keys. Y si venís bajando de Premium, perdés multi-region, self-hosted gateways, VNET injection y workspaces, más el tope de 50 millones de requests mensuales contra ilimitado.
O sea: el ahorro es real pero el costo de migración también. Hacé la cuenta completa antes de festejar el número de la etiqueta.
workerd v1.20260908.1: release de build, sin cambios de API
Día tranquilo en el runtime de Workers: tres PRs, todos de build. Optimizaciones internas de JSG —keyear los wrappers de campos por tipo en vez de por campo, y guardarlos en un array plano— más un fix del build interno para forks de miembros de la org. Nada que te toque el código. Lo anotamos para mantener la trazabilidad de la cadencia diaria.
Vite 8.3.0-beta.1: devtools integrados al dev server
La feature del beta es la integración de devtools con el dev server. El resto son fixes de build que valen la pena si te mordieron: los placeholders de hash ahora se mantienen tal cual en el hook resolveFileUrl, ya no se inlinean los targets de preload link (bug abierto desde el #13355), y findNearestMainPackageData resuelve el root real del package cuando hay package.json anidados — clásico dolor de monorepo.
PocketBase 0.40.3: cascade delete de relaciones auto-referenciadas y bugs reportados por bots
Arreglan el cascade delete anidado de records con relaciones auto-referenciadas —si modelás árboles o jerarquías en PocketBase, ese es tuyo—, el validador de índices ahora acepta expresiones con paréntesis en el WHERE opcional, y el validador del campo json se alineó con la semántica de encoding/json/v2 permitiendo keys duplicadas al marshalizar para no romper datos viejos de jsonv1.
Detalle simpático del changelog: el maintainer agrupa varios de estos fixes como reportados por «2 usuarios LLM (¿bots?)». Señal de los tiempos — y recordatorio de que el reporte automatizado encuentra cosas reales, aunque haya que filtrar el ruido.
TanStack Solid Start 2.0.0-rc.7: respeta el server flag en SSR de desarrollo
Un solo fix en el RC: solid-router ahora respeta el flag de server durante el SSR de desarrollo. Sigue avanzando el ciclo de RCs de la serie 2.0 —van siete— así que el stack de TanStack fuera de React se va acercando, de a un fix por vez.
Tendencias Destacadas
Netflix y Airbnb resolvieron problemas distintos con la misma jugada: <strong>mover la decisión al lugar que tiene el contexto para tomarla</strong>. Netflix bajó el escalado del cluster al operator individual porque el cluster no sabe qué necesita cada vertex. Airbnb subió la selección de método de auth del cliente al server porque el cliente no sabe qué funciona mejor en Brasil. En los dos casos la ganancia no vino de optimizar el algoritmo, sino de <strong>correr la frontera hasta donde vive la información</strong>.
El bug de PromQL y la existencia misma de KYAML apuntan al mismo enemigo: <strong>el fallo silencioso</strong>. Un regex que descarta matches no te tira error, te devuelve menos series. Un valor YAML sin comillas no te avisa que lo leyó como booleano, te aplica el manifest igual. Los dos casos comparten la propiedad más peligrosa que puede tener un sistema: <strong>que la respuesta incorrecta sea indistinguible de la correcta</strong>. Cuando diseñes una interfaz, preguntate qué pasa cuando alguien la usa mal — si la respuesta es «nada visible», rediseñala.
Vale marcar el target de utilización 0.45 de Netflix contra el 0.7 por defecto de la comunidad: <strong>eligieron dejar capacidad sin usar porque reescalar les cuesta más que el desperdicio</strong>. Con terabytes de estado, cada rescale es mover datos. Es el mismo razonamiento que aplicás cuando decidís no autoescalar un servicio con warm-up caro. El default de una herramienta asume un workload promedio que probablemente no es el tuyo — <strong>si nunca tocaste ese número, no lo elegiste</strong>.
Prometheus 3.13.3: a case-insensitive regex was silently dropping your values
The bugfix that matters most: case-insensitive regex label matchers in PromQL were silently dropping matching values. Translated to your on-call shift: a query you believed covered your whole fleet returned fewer series than exist, and an alert built on that matcher simply does not fire. The worst observability bugs are not the ones that break the dashboard — they are the ones that leave it green.
Several more of the same caliber: out-of-order queries blocking compaction for hours while memory grew, deleted series causing missing samples and errors after restart, 100% CPU on shutdown in both the scrape manager and alerting — delaying graceful shutdown until timeout-based kills triggered — and goroutine and file handle leaks when opening a corrupt TSDB failed (on Windows the leaked handle also prevented directory removal). Plus security bumps for klauspost/compress and golang.org/x/crypto.
Azure APIM: zone redundancy comes to Standard v2, but not on what you already run
Zone redundancy stops being Premium-only: Standard v2 supports it at $700/month per unit versus $2,801 for Premium v2. SLA difference: 99.95% on Standard v2 against 99.99% on Premium — though that 99.99% requires deploying across at least two zones or regions.
Now the limitation that wrecks the plan: it cannot be enabled on an existing Standard v2 instance. You must create a new deployment, with API re-imports, policy reconfiguration, DNS changes, and subscription key migration. And if you are stepping down from Premium, you lose multi-region, self-hosted gateways, VNET injection, and workspaces, plus you cap at 50 million monthly requests versus unlimited.
So: the saving is real and so is the migration cost. Run the full sum before celebrating the sticker number.
workerd v1.20260908.1: a build release, no API changes
A quiet day in the Workers runtime: three PRs, all build-related. Internal JSG optimizations — keying struct field wrappers on the field type rather than the field, and storing them in a flat array — plus an internal build fix for forks of org members. Nothing that touches your code. Noted to keep the daily cadence traceable.
Vite 8.3.0-beta.1: devtools integrated into the dev server
The beta's feature is wiring devtools into the dev server. The rest are build fixes worth knowing if they bit you: hash placeholders now stay as-is in the resolveFileUrl hook, preload link targets are no longer inlined (an issue open since #13355), and findNearestMainPackageData resolves the actual package root with nested package.json files — a classic monorepo pain.
PocketBase 0.40.3: self-referenced cascade deletes, and bugs reported by bots
They fix nested cascade delete of self-referenced relation records — if you model trees or hierarchies in PocketBase, that one is yours — the index validator now accepts expressions with parentheses in the optional WHERE clause, and the json field validator was aligned with encoding/json/v2 semantics, allowing duplicate keys on record marshaling so old jsonv1 data keeps working.
A nice changelog detail: the maintainer groups several of these fixes as reported by «2 LLM users (bots?)». Sign of the times — and a reminder that automated reporting does find real things, even if you have to filter the noise.
TanStack Solid Start 2.0.0-rc.7: respects the server flag in development SSR
A single fix in this RC: solid-router now respects the server flag during development SSR. The 2.0 RC cycle keeps moving — seven and counting — so TanStack's non-React stack inches closer, one fix at a time.
Notable Trends
Netflix and Airbnb solved different problems with the same move: <strong>put the decision where the context to make it lives</strong>. Netflix pushed scaling down from the cluster to the individual operator because the cluster does not know what each vertex needs. Airbnb pushed auth method selection up from the client to the server because the client does not know what works best in Brazil. In both cases the win did not come from optimizing the algorithm, but from <strong>moving the boundary to where the information already is</strong>.
The PromQL bug and KYAML's very existence point at the same enemy: <strong>silent failure</strong>. A regex that drops matches does not throw an error, it returns fewer series. An unquoted YAML value does not warn you it was read as a boolean, it applies the manifest anyway. Both share the most dangerous property a system can have: <strong>the wrong answer being indistinguishable from the right one</strong>. When you design an interface, ask what happens when someone misuses it — if the answer is «nothing visible», redesign it.
Worth flagging Netflix's 0.45 utilization target against the community default of 0.7: <strong>they chose to leave capacity unused because rescaling costs them more than the waste</strong>. With terabytes of state, every rescale is a data move. Same reasoning you apply when you decide not to autoscale a service with an expensive warm-up. A tool's default assumes an average workload that is probably not yours — <strong>if you never touched that number, you did not choose it</strong>.
Prometheus 3.13.3 : un regex insensible à la casse ignorait vos valeurs en silence
The bugfix that matters most: case-insensitive regex label matchers in PromQL were silently dropping matching values. Translated to your on-call shift: a query you believed covered your whole fleet returned fewer series than exist, and an alert built on that matcher simply does not fire. The worst observability bugs are not the ones that break the dashboard — they are the ones that leave it green.
Several more of the same caliber: out-of-order queries blocking compaction for hours while memory grew, deleted series causing missing samples and errors after restart, 100% CPU on shutdown in both the scrape manager and alerting — delaying graceful shutdown until timeout-based kills triggered — and goroutine and file handle leaks when opening a corrupt TSDB failed (on Windows the leaked handle also prevented directory removal). Plus security bumps for klauspost/compress and golang.org/x/crypto.
Azure APIM : la zone redundancy arrive en Standard v2, mais pas sur l'existant
Zone redundancy stops being Premium-only: Standard v2 supports it at $700/month per unit versus $2,801 for Premium v2. SLA difference: 99.95% on Standard v2 against 99.99% on Premium — though that 99.99% requires deploying across at least two zones or regions.
Now the limitation that wrecks the plan: it cannot be enabled on an existing Standard v2 instance. You must create a new deployment, with API re-imports, policy reconfiguration, DNS changes, and subscription key migration. And if you are stepping down from Premium, you lose multi-region, self-hosted gateways, VNET injection, and workspaces, plus you cap at 50 million monthly requests versus unlimited.
So: the saving is real and so is the migration cost. Run the full sum before celebrating the sticker number.
workerd v1.20260908.1 : release de build, sans changement d'API
A quiet day in the Workers runtime: three PRs, all build-related. Internal JSG optimizations — keying struct field wrappers on the field type rather than the field, and storing them in a flat array — plus an internal build fix for forks of org members. Nothing that touches your code. Noted to keep the daily cadence traceable.
Vite 8.3.0-beta.1 : devtools intégrés au dev server
The beta's feature is wiring devtools into the dev server. The rest are build fixes worth knowing if they bit you: hash placeholders now stay as-is in the resolveFileUrl hook, preload link targets are no longer inlined (an issue open since #13355), and findNearestMainPackageData resolves the actual package root with nested package.json files — a classic monorepo pain.
PocketBase 0.40.3 : cascade delete auto-référencé et bugs signalés par des bots
They fix nested cascade delete of self-referenced relation records — if you model trees or hierarchies in PocketBase, that one is yours — the index validator now accepts expressions with parentheses in the optional WHERE clause, and the json field validator was aligned with encoding/json/v2 semantics, allowing duplicate keys on record marshaling so old jsonv1 data keeps working.
A nice changelog detail: the maintainer groups several of these fixes as reported by «2 LLM users (bots?)». Sign of the times — and a reminder that automated reporting does find real things, even if you have to filter the noise.
TanStack Solid Start 2.0.0-rc.7 : respecte le server flag en SSR de développement
A single fix in this RC: solid-router now respects the server flag during development SSR. The 2.0 RC cycle keeps moving — seven and counting — so TanStack's non-React stack inches closer, one fix at a time.
Tendances Notables
Netflix et Airbnb ont résolu des problèmes différents avec le même geste : <strong>placer la décision là où vit le contexte pour la prendre</strong>. Netflix a descendu le scaling du cluster vers l'operator individuel, car le cluster ignore ce dont chaque vertex a besoin. Airbnb a remonté la sélection de méthode d'auth du client vers le serveur, car le client ignore ce qui marche au Brésil. Dans les deux cas, le gain ne vient pas d'un meilleur algorithme mais du <strong>déplacement de la frontière là où l'information se trouve déjà</strong>.
Le bug PromQL et l'existence même de KYAML visent le même ennemi : <strong>l'échec silencieux</strong>. Un regex qui écarte des correspondances ne lève pas d'erreur, il renvoie moins de séries. Une valeur YAML non quotée ne prévient pas qu'elle a été lue comme un booléen, elle applique quand même le manifest. Les deux partagent la propriété la plus dangereuse d'un système : <strong>une réponse incorrecte indiscernable de la correcte</strong>. En concevant une interface, demandez-vous ce qui arrive en cas de mauvais usage — si la réponse est «rien de visible», reconcevez-la.
À noter : le target d'utilisation 0.45 de Netflix face au défaut communautaire de 0.7. <strong>Ils ont choisi de laisser de la capacité inutilisée parce que rescaler leur coûte plus que le gaspillage</strong>. Avec des téraoctets d'état, chaque rescale est un déplacement de données. Même raisonnement que lorsqu'on décide de ne pas autoscaler un service au warm-up coûteux. Le défaut d'un outil suppose une charge moyenne qui n'est probablement pas la vôtre — <strong>si vous n'avez jamais touché ce nombre, vous ne l'avez pas choisi</strong>.