@mastra/playground-ui 19.0.0-alpha.5 → 19.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/CHANGELOG.md +122 -0
  2. package/package.json +11 -11
package/CHANGELOG.md CHANGED
@@ -1,5 +1,127 @@
1
1
  # @mastra/playground-ui
2
2
 
3
+ ## 19.0.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Added Evaluate tab to the agent playground with full dataset management, scorer editing, experiment execution, and review workflow. ([#14470](https://github.com/mastra-ai/mastra/pull/14470))
8
+
9
+ **Evaluate tab** — A new sidebar-driven tab for managing datasets, scorers, and experiments within the agent playground. Key features:
10
+ - **Dataset management**: Create, attach/detach, and browse datasets. Inline item editing and deletion. Background LLM-powered test data generation with review-before-add flow.
11
+ - **Scorer editor**: Create and edit scorers with test items, linked test datasets, configurable score ranges, and model selection. Run scorer experiments directly from the editor.
12
+ - **Experiment runner**: Trigger experiments from dataset or scorer views with correct target routing (agent, scorer, or workflow). Past runs displayed with pass/fail counts and auto-polling for status updates.
13
+ - **Collapsible sidebar sections**: Datasets, Scorers, and Experiments sections are collapsible with search-enabled attach dialogs.
14
+
15
+ **Review tab** — A dedicated review workflow for experiment results:
16
+ - Tag-based organization with dataset-level tag vocabulary and bulk tagging
17
+ - LLM-powered analysis ("Analyze untagged/selected") that proposes tags with reasons, using existing tags when applicable
18
+ - Thumbs up/down ratings and comments persisted via feedback API
19
+ - Mark items as complete for audit trail
20
+ - Completed items section with read-only display
21
+
22
+ - Added dataset and agent version selectors to the experiment evaluate tab. You can now choose which dataset version and agent version to use when running an experiment. Version information is displayed in the experiment sidebar, results panel header, and Past Runs list. Added a copy button next to the agent version selector to easily copy version IDs. ([#14562](https://github.com/mastra-ai/mastra/pull/14562))
23
+
24
+ ### Patch Changes
25
+
26
+ - Added EntityList.NoMatch component that displays a message when search filtering returns no results. Applied to all entity list pages: Agents, Workflows, Tools, Scorers, Processors, Prompts, Datasets, and MCP Servers. ([#14621](https://github.com/mastra-ai/mastra/pull/14621))
27
+
28
+ - Added agent version support for experiments. When triggering an experiment, you can now pass an `agentVersion` parameter to pin which agent version to use. The agent version is stored with the experiment and returned in experiment responses. ([#14562](https://github.com/mastra-ai/mastra/pull/14562))
29
+
30
+ ```ts
31
+ const client = new MastraClient();
32
+
33
+ await client.triggerDatasetExperiment({
34
+ datasetId: 'my-dataset',
35
+ targetType: 'agent',
36
+ targetId: 'my-agent',
37
+ version: 3, // pin to dataset version 3
38
+ agentVersion: 'ver_abc123', // pin to a specific agent version
39
+ });
40
+ ```
41
+
42
+ - Removed 'Create an Agent' button from agent list page and table empty state. Removed 'Create Scorer' button from top-level scorers page. Removed stored/code source icons (AgentSourceIcon) from agent headers, combobox, and table. Renamed 'Versions' tab to 'Editor' in agent page tabs. Added GaugeIcon to the 'Create Scorer' button in the review tab. ([#14555](https://github.com/mastra-ai/mastra/pull/14555))
43
+
44
+ - Added metrics dashboard with KPI cards, trace volume, latency, model usage, and scores visualizations. Includes filtering by date range, agents, models, and providers. Added HorizontalBars, MetricsCard, MetricsKpiCard, MetricsLineChart, MetricsFlexGrid, and MetricsDataTable design system components. ([#14491](https://github.com/mastra-ai/mastra/pull/14491))
45
+
46
+ - Internal cleanup and linting fixes ([#14497](https://github.com/mastra-ai/mastra/pull/14497))
47
+
48
+ - Add optional `?path=` query param to workspace skill routes for disambiguating same-named skills. ([#14430](https://github.com/mastra-ai/mastra/pull/14430))
49
+
50
+ Skill routes continue to use `:skillName` in the URL path (no breaking change). When two skills share the same name (e.g. from different directories), pass the optional `?path=` query parameter to select the exact skill:
51
+
52
+ ```
53
+ GET /workspaces/:workspaceId/skills/:skillName?path=skills/brand-guidelines
54
+ ```
55
+
56
+ `SkillMetadata` now includes a `path` field, and the `list()` method returns all same-named skills for disambiguation. The client SDK's `getSkill()` accepts an optional `skillPath` parameter for disambiguation.
57
+
58
+ - Updated skill search result types and query parameters to use `skillName`/`skillNames` instead of `skillPath`/`skillPaths` for consistency with the name-based public API. ([#14430](https://github.com/mastra-ai/mastra/pull/14430))
59
+
60
+ - Added experimental entity list components with skeleton loading states, error handling, and dedicated empty state components for all list pages. Gated behind MASTRA_EXPERIMENTAL_UI environment variable. ([#14547](https://github.com/mastra-ai/mastra/pull/14547))
61
+
62
+ - Added storage type detection to the Metrics Dashboard. The `/system/packages` endpoint now returns `observabilityStorageType`, identifying the observability storage backend. The dashboard shows an empty state when the storage does not support metrics (e.g. PostgreSQL, LibSQL), and displays a warning when using in-memory storage since metrics are not persisted across server restarts. Also added a docs link button to the Metrics page header. ([#14620](https://github.com/mastra-ai/mastra/pull/14620))
63
+
64
+ ```ts
65
+ import { MastraClient } from '@mastra/client-js';
66
+
67
+ const client = new MastraClient();
68
+ const system = await client.getSystemPackages();
69
+
70
+ // system.observabilityStorageType contains the class name of the observability store:
71
+ // - 'ObservabilityInMemory' → metrics work but are not persisted across restarts
72
+ // - 'ObservabilityPG', 'ObservabilityLibSQL', etc. → metrics not supported
73
+
74
+ if (system.observabilityStorageType === 'ObservabilityInMemory') {
75
+ console.warn('Metrics are not persisted — data will be lost on server restart.');
76
+ }
77
+
78
+ const SUPPORTED = new Set(['ObservabilityInMemory']);
79
+ if (!SUPPORTED.has(system.observabilityStorageType ?? '')) {
80
+ console.error('Metrics require in-memory observability storage.');
81
+ }
82
+ ```
83
+
84
+ - Added `ModelByInputTokens` in `@mastra/memory` for token-threshold-based model selection in Observational Memory. ([#14614](https://github.com/mastra-ai/mastra/pull/14614))
85
+
86
+ When configured, OM automatically selects different observer or reflector models based on the actual input token count at the time the OM call runs.
87
+
88
+ Example usage:
89
+
90
+ ```ts
91
+ import { Memory, ModelByInputTokens } from '@mastra/memory';
92
+
93
+ const memory = new Memory({
94
+ options: {
95
+ observationalMemory: {
96
+ model: new ModelByInputTokens({
97
+ upTo: {
98
+ 10_000: 'google/gemini-2.5-flash',
99
+ 40_000: 'openai/gpt-4o',
100
+ 1_000_000: 'openai/gpt-4.5',
101
+ },
102
+ }),
103
+ },
104
+ },
105
+ });
106
+ ```
107
+
108
+ The `upTo` keys are inclusive upper bounds. OM resolves the matching tier directly at the observer or reflector call site. If the input exceeds the largest configured threshold, OM throws an error.
109
+
110
+ Improved Observational Memory tracing so traces show the observer and reflector spans and make it easier to see which resolved model was used at runtime.
111
+
112
+ - Redesigned the agent instruction blocks editor with a Notion-like document feel. Blocks no longer show line numbers or block numbers, have tighter spacing, and display a subtle hover highlight. Reference blocks now show a sync-block header with a popover for block details, "Open original", "De-reference block", and "Used by" agents. Inline blocks can be converted to saved prompt blocks via a new "Save as prompt block" action in the hover toolbar. The prompt block edit sidebar now shows a "Used by" section listing which agents reference the block. Added a `lineNumbers` prop to `CodeEditor` to optionally hide line numbers. ([#14563](https://github.com/mastra-ai/mastra/pull/14563))
113
+
114
+ ```tsx
115
+ <CodeEditor language="markdown" lineNumbers={false} />
116
+ ```
117
+
118
+ - Updated dependencies [[`68ed4e9`](https://github.com/mastra-ai/mastra/commit/68ed4e9f118e8646b60a6112dabe854d0ef53902), [`085c1da`](https://github.com/mastra-ai/mastra/commit/085c1daf71b55a97b8ebad26623089e40055021c), [`085c1da`](https://github.com/mastra-ai/mastra/commit/085c1daf71b55a97b8ebad26623089e40055021c), [`be37de4`](https://github.com/mastra-ai/mastra/commit/be37de4391bd1d5486ce38efacbf00ca51637262), [`7dbd611`](https://github.com/mastra-ai/mastra/commit/7dbd611a85cb1e0c0a1581c57564268cb183d86e), [`f14604c`](https://github.com/mastra-ai/mastra/commit/f14604c7ef01ba794e1a8d5c7bae5415852aacec), [`4a75e10`](https://github.com/mastra-ai/mastra/commit/4a75e106bd31c283a1b3fe74c923610dcc46415b), [`f3ce603`](https://github.com/mastra-ai/mastra/commit/f3ce603fd76180f4a5be90b6dc786d389b6b3e98), [`423aa6f`](https://github.com/mastra-ai/mastra/commit/423aa6fd12406de6a1cc6b68e463d30af1d790fb), [`f21c626`](https://github.com/mastra-ai/mastra/commit/f21c6263789903ab9720b4d11373093298e97f15), [`41aee84`](https://github.com/mastra-ai/mastra/commit/41aee84561ceebe28bad1ecba8702d92838f67f0), [`2871451`](https://github.com/mastra-ai/mastra/commit/2871451703829aefa06c4a5d6eca7fd3731222ef), [`47358d9`](https://github.com/mastra-ai/mastra/commit/47358d960bb2b931321de7e798f341ab0df81f44), [`085c1da`](https://github.com/mastra-ai/mastra/commit/085c1daf71b55a97b8ebad26623089e40055021c), [`4bb5adc`](https://github.com/mastra-ai/mastra/commit/4bb5adc05c88e3a83fe1ea5ecb9eae6e17313124), [`4bb5adc`](https://github.com/mastra-ai/mastra/commit/4bb5adc05c88e3a83fe1ea5ecb9eae6e17313124), [`4bb5adc`](https://github.com/mastra-ai/mastra/commit/4bb5adc05c88e3a83fe1ea5ecb9eae6e17313124), [`085c1da`](https://github.com/mastra-ai/mastra/commit/085c1daf71b55a97b8ebad26623089e40055021c), [`256ed46`](https://github.com/mastra-ai/mastra/commit/256ed462e260afb287ae83eed030017e9ec6a0c0), [`e06b520`](https://github.com/mastra-ai/mastra/commit/e06b520bdd5fdef844760c5e692c7852cbc5c240), [`d3930ea`](https://github.com/mastra-ai/mastra/commit/d3930eac51c30b0ecf7eaa54bb9430758b399777), [`dd9c4e0`](https://github.com/mastra-ai/mastra/commit/dd9c4e0a47962f1413e9b72114fcad912e19a0a6)]:
119
+ - @mastra/core@1.16.0
120
+ - @mastra/client-js@1.10.0
121
+ - @mastra/schema-compat@1.2.7
122
+ - @mastra/ai-sdk@1.2.1
123
+ - @mastra/react@0.2.17
124
+
3
125
  ## 19.0.0-alpha.5
4
126
 
5
127
  ### Patch Changes
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mastra/playground-ui",
3
3
  "type": "module",
4
- "version": "19.0.0-alpha.5",
4
+ "version": "19.0.0",
5
5
  "description": "Mastra Playground components",
6
6
  "main": "dist/index.umd.js",
7
7
  "module": "dist/index.es.js",
@@ -129,10 +129,10 @@
129
129
  "react-dom": ">=19.0.0",
130
130
  "tailwindcss": "^3.0.0",
131
131
  "zod": "^3.25.0 || ^4.0.0",
132
- "@mastra/ai-sdk": "^1.2.1-alpha.0",
133
- "@mastra/schema-compat": "1.2.7-alpha.1",
134
- "@mastra/react": "0.2.17-alpha.5",
135
- "@mastra/client-js": "^1.10.0-alpha.5"
132
+ "@mastra/ai-sdk": "^1.2.1",
133
+ "@mastra/client-js": "^1.10.0",
134
+ "@mastra/react": "0.2.17",
135
+ "@mastra/schema-compat": "1.2.7"
136
136
  },
137
137
  "devDependencies": {
138
138
  "@storybook/addon-docs": "^9.1.20",
@@ -164,12 +164,12 @@
164
164
  "vite-plugin-lib-inject-css": "^2.2.2",
165
165
  "vitest": "4.0.18",
166
166
  "zod": "^4.3.6",
167
- "@internal/lint": "0.0.73",
168
- "@mastra/ai-sdk": "^1.2.1-alpha.0",
169
- "@mastra/core": "1.16.0-alpha.5",
170
- "@mastra/react": "0.2.17-alpha.5",
171
- "@mastra/client-js": "^1.10.0-alpha.5",
172
- "@mastra/schema-compat": "1.2.7-alpha.1"
167
+ "@internal/lint": "0.0.74",
168
+ "@mastra/core": "1.16.0",
169
+ "@mastra/ai-sdk": "^1.2.1",
170
+ "@mastra/react": "0.2.17",
171
+ "@mastra/schema-compat": "1.2.7",
172
+ "@mastra/client-js": "^1.10.0"
173
173
  },
174
174
  "homepage": "https://mastra.ai",
175
175
  "repository": {