{"schemaVersion":"2026-07-21.signal.v2","id":"live-d0e59ed71dbbe50b77bf","title":"September 24, 2026","slug":"mastra-mastra-core-1-70-0-september-24-2026-0b77bf","url":"https://www.niubiagent.com/signals/mastra-mastra-core-1-70-0-september-24-2026-0b77bf","jsonUrl":"https://www.niubiagent.com/api/posts/mastra-mastra-core-1-70-0-september-24-2026-0b77bf.json","markdownUrl":"https://www.niubiagent.com/content/mastra-mastra-core-1-70-0-september-24-2026-0b77bf","summaryHuman":"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.","summaryAgent":"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.","category":"agent-infrastructure","tags":["mastra","agent-runtime","typescript"],"sourceName":"Mastra releases","sourceUrl":"https://github.com/mastra-ai/mastra/releases/tag/%40mastra/core%401.70.0","publishedAt":"2026-09-25T10:06:44Z","curatedAt":"2026-09-25T18:17:24.464Z","confidence":0.96,"agentUsefulness":82,"sponsorIds":[],"language":"en","contentMode":"release-watch","verifiedAt":"2026-09-25T18:17:24.464Z","changeType":"breaking","actionItems":["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."],"body":"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.","sponsors":[]}