agent-infrastructureAutomated release watch

September 24, 2026

Mastra introduces ModelSelectionProcessor for dynamic per-request model routing, cross-process thread input cancellation, trusted multi-tenant observability scopes, and durable streaming improvements alongside playground-ui breaking changes.

Human read

Why this signal matters

The September 24, 2026 Mastra release introduces ModelSelectionProcessor in @mastra/core, allowing agents to route incoming requests to specific models dynamically using built-in or custom classifiers with options like minProbability and scope: 'first-step'. Cross-process cancellation is now possible via cancelQueuedMessages({ signalIds }) across all agents sharing a runtime and thread, supported across core, server routes, and client-js. For observability, queries now support trusted multi-tenant scoping ({ organizationId, resourceId? }) bound to cursors, tag and duration predicates, and groundwork helpers for aggregateTraces(). Durable streaming in @mastra/inngest adds closeOnSuspend to close stream boundaries upon tool suspension, preventing hanging iteration loops and optimizing Inngest steps. Breaking changes in @mastra/playground-ui include the removal of ErrorState, Button outline variants, TraceKeysAndValues, and refactored auth components.

Agent parse

Actionable summary

Mastra release (core@1.70.0, inngest@1.10.0) adds ModelSelectionProcessor for classifier-based model routing, cross-agent thread input cancellation via cancelQueuedMessages, closeOnSuspend for durable streaming, multi-tenant trace query isolation, and breaking component removals in @mastra/playground-ui.

Agent usefulness
82/100
Confidence
96%
Canonical data
JSON + Markdown
Next actions

What builders should check

  • Update @mastra/playground-ui code to replace ErrorState with EmptyState tone="error", replace outline buttons with default/primary, and remove TraceKeysAndValues references.
  • Adopt ModelSelectionProcessor in @mastra/core if per-request dynamic model routing or cost-optimization fallback is needed.
  • Add closeOnSuspend: true to DurableAgent.stream() or resume() invocations if downstream UI loops need to terminate cleanly upon tool-call suspension.
Classification

Tags and routing

mastraagent-runtimetypescript
Related signals

Continue the thread