Solana · simulateTransaction → response
La simulación que dijo que no
Cero unidades de cómputo y un registro vacío: no se ejecutó ninguna instrucción. La llamada RPC sí se completó, así que el fallo solo aparece en value.err. Cualquier flujo que pida firmar al usuario debería comprobar primero ese campo, no el estado de la respuesta.
"value": {
"err": "BlockhashNotFound",
"logs": [],
"unitsConsumed": 0
}
La nota que lo explica
Datos · pipes/daily_avg.pipe
Promedios que no se pueden sumar
Cuando cada día tiene un volumen distinto, el promedio de los promedios diarios no es el promedio semanal. Guardar el estado del agregado en vez del número final permite que una vista materializada responda correctamente para cualquier intervalo.
-- per day: keep the state, not the number
SELECT toStartOfDay(ts) AS day, city,
avgState(latency_ms) AS latency
FROM events
GROUP BY day, city
-- any window: merge the states
SELECT toStartOfWeek(day) AS week, city,
avgMerge(latency) AS avg_latency
FROM daily_latency
GROUP BY week, city
La nota que lo explica
IA · evals/gate.ts (sketch)
Cambiar un prompt es un despliegue
Un esquema de la regla, no código de producción: un cambio de prompt o de modelo solo se publica si obtiene al menos el mismo resultado que la versión actual en los mismos casos de evaluación. Los agentes suelen fallar sin lanzar errores, así que la comparación es la prueba.
const baseline = await runSuite(suite, { prompt: current });
const candidate = await runSuite(suite, { prompt: next });
if (candidate.passRate < baseline.passRate) {
throw new Error("regression: " + diff(baseline, candidate));
}