Fetching from the wire…
Public story · 2026-08-17 · high
1.59.0 rebuilds cost control with per-request spend limits and parks rule-proposed runs as approvals, not auto-execution.
Why now: Mastra shipped @mastra/core 1.59.0 on August 16, covered in yesterday's briefing.
Mastra's 1.59.0 release turns automatic agent runs off by default, requiring approval before a rule-proposed run executes. The change affects anyone running Mastra agents in production: workflows that used to fire automatically now wait on a person to approve them.
The mechanism is a new autoRunEnabled setting in Factory. When a rule proposes a run, that run gets parked as a "proposed" decision instead of firing immediately, per the GitHub release. Upgrading to 1.59.0 silently stops any workflow that depended on rules triggering runs on their own. Someone has to flip the flag back on or start approving proposed runs by hand.
The second breaking change replaces CostGuardProcessor with TokenCostControl. The new system adds a warnAtPercent threshold and per-request maxCost functions. It also splits spend limits into separate scopes for users, organizations, and sessions. That's a finer-grained way to catch spend before it runs away. It suggests the old blanket cost guard wasn't enough for teams running agents at scale.
A smaller change is worth flagging too. Trace redaction now uses indexed labels like [APIKEY_1] instead of one blanket [REDACTED] stamp. A trace with multiple secrets no longer hides which one is which.
The GitHub release doesn't say what specifically pushed the auto-run default to off, only that it happened.
Each link below shares sources, entities, or timing with this story.
Mastra uses MySQL / Shared entities / Same source domain / Shared topic / Earlier coverage
Linked by a graph relationship (Mastra uses MySQL); both cover GitHub, Mastra; reported by the same outlet (github.com).
Mastra released Mastra Factory / Shared entities / Shared topic / Earlier coverage / Tension
Linked by a graph relationship (Mastra released Mastra Factory); both cover GitHub, Mastra; overlapping topics (agent, mastra).
Mastra benchmarked against LongMemEval / Shared entities / Same source domain / Earlier coverage / Tension
Linked by a graph relationship (Mastra benchmarked against LongMemEval); both cover GitHub, Mastra; reported by the same outlet (github.com).
Mastra uses Firecracker / Shared entity: GitHub / Same source domain / Shared topic / Earlier coverage / Tension
Linked by a graph relationship (Mastra uses Firecracker); both cover GitHub; reported by the same outlet (github.com).
Factory uses Claude / Shared entity: GitHub / Same source domain / Earlier coverage
Linked by a graph relationship (Factory uses Claude); both cover GitHub; reported by the same outlet (github.com).
Factory uses Claude / Shared entity: GitHub / Same source domain / Shared topic / Earlier coverage
Linked by a graph relationship (Factory uses Claude); both cover GitHub; reported by the same outlet (github.com).
Linked by a graph relationship (Factory uses Claude); both cover GitHub; reported by the same outlet (github.com).
Linked by a graph relationship (Factory uses Claude); both cover GitHub; reported by the same outlet (github.com).