v26.2.0-rc.1
Pre-releaseWhat's Changed (v26.1.0 → v26.2.0-rc.1)
✨ Features
Fair Share Scheduling Page
New fair share scheduling management page with multi-tab content for resource groups, domains, projects, and users. Includes a usage bucket modal for detailed resource allocation views and improved UI consistency across fair share tables with aligned GraphQL property filters.
- FR-1921: Implement resource group tab content in fair share page by @ironAiken2 in #5101
- FR-1933: Implement domain tab content in fair share page by @ironAiken2 in #5106
- FR-1936: Implement project tab content in fair share page by @ironAiken2 in #5137
- FR-1968: Implement user tab content in fair share page by @ironAiken2 in #5139
- FR-1905: Implement fair share usage bucket modal by @ironAiken2 in #5204
- FR-2055: Improve UI consistency and readability in fair share tables by @yomybaby in #5312
- FR-2016: Align BAIGraphQLPropertyFilter with GraphQL schema by @ironAiken2 in #5221
Relay-Based Infinite Scroll Select Components
Introduced reusable Relay-based select components with infinite scroll support. Added BAIUserSelect and BAIProjectSelect, along with agent skills for generating scroll select components.
- FR-1861: Create agent skills for infinite scroll select components by @nowgnuesLee in #5053
- FR-1859: Create a BAIUserSelect by @nowgnuesLee in #5055
- FR-1860: Create a BAIProjectSelect by @nowgnuesLee in #5133
UI Component Enhancements
Added a new BAIBulkEditFormItem component for bulk editing scenarios and improved UX of the BAIDynamicUnitInputNumber component.
- FR-1966: add BAIBulkEditFormItem component for bulk editing forms by @yomybaby in #5170
- FR-1984: UX enhancements for BAIDynamicUnitInputNumber by @nowgnuesLee in #5165
Model Service & Administration
Added project mismatch validation when editing model services and a new wsproxy API token setting UI for administrators.
- FR-2029: add project mismatch validation for model service editing by @yomybaby in #5252
- FR-92: add wsproxy API token setting UI by @agatha197 in #5225
Developer Tooling
Added a shared ESLint 9 flat config package for consistent linting across the monorepo and a Storybook coverage checker to track component documentation progress.
- FR-1924: add eslint-config-bai shared ESLint 9 flat config package by @limshyun in #5077
- FR-1909: add storybook coverage checker and update story command by @limshyun in #5135
🐛 Bug Fixes
File Management
Fixed folder cloning identification and resolved the upload dropdown not closing after selecting an upload option in the file explorer.
- FR-2004: accurately find and identify cloned folders by @agatha197 in #5191
- FR-1987: close upload dropdown after selecting upload option in file explorer by @ironAiken2 in #5216
- FR-1970: apply an optimistic update to the BAIVFolderSelect by @nowgnuesLee in #5156
Chat & AI Features
Fixed ChatCard comparison layout rendering vertically instead of side-by-side, and corrected media type and FileCard type definitions in ChatMessage.
- FR-1999: fix the comparison ChatCard appearing below instead of in a vertical format by @agatha197 in #5199
- FR-2012: fix mediaType type and FileCard type prop in ChatMessage by @yomybaby in #5209
Network, API & Error Handling
Switched to tcpproxy endpoint for TCP applications, improved GraphQL error message display in error boundaries, and removed unnecessary backend-ai-resource-broker API calls.
- FR-1979: use tcpproxy endpoint for tcpApps by @agatha197 in #5169
- FR-2013: display GraphQL error messages from network responses in error boundary by @agatha197 in #5222
- FR-2017: remove unnecessary
backend-ai-resource-brokerAPI calls by removing component by @agatha197 in #5224
Build & Plugin System
Fixed plugin-loaded event dispatching when no plugins exist, removed unused React web components, and resolved CI lockfile merge issues.
- FR-2042: dispatch plugin-loaded event without plugins and fix E2E test timeouts/regex by @yomybaby in #5288
- FR-2039: remove unused React web components by @yomybaby in #5279
- FR-2049: use --merge-git-branch-lockfiles in jest.yml CI workflow by @limshyun in #5303
🔨 Refactoring
Component API Modernization
Migrated StorageSelect to new antd 6 showSearch API, refactored BAIDomainSelect to use options prop pattern, and removed server-side duplicate name validation from session and service name hooks.
- FR-2014: migrate StorageSelect to new antd 6 showSearch API by @yomybaby in #5212
- FR-2023: refactor BAIDomainSelect to use options prop pattern by @yomybaby in #5241
- FR-2001: remove server-side duplicate name validation from session and service name hooks by @yomybaby in #5185
Code Quality & E2E Test Organization
Adopted inline type imports for conciseness. Restructured E2E test directory organization and standardized test tagging. Renamed e2e-healer to e2e-watchdog with simplified scope.
- FR-2005: use inline type imports for better code conciseness by @rapsealk in #5194
- FR-2015: restructure E2E test directory organization and standardize tagging by @yomybaby in #5195
- FR-1027: rename e2e-healer to e2e-watchdog and remove healing features by @yomybaby in #5280
🎨 Style
UI Polish & Accessibility
Simplified Storybook theme and reorganized story titles. Added descriptive labels to checkboxes in User Settings Modal. Updated deprecated antd props in chat-related components and applied word-break keep-all for CJK languages.
- FR-1941: simplify Storybook theme and reorganize story titles by @limshyun in #5098
- FR-2007: add descriptive labels to checkboxes in User Settings Modal by @yomybaby in #5198
- FR-2009: update antd deprecated props in chat-related components and fix broken styles by @agatha197 in #5203
- FR-667: apply word-break keep-all for CJK languages by @limshyun in #5233
🧪 E2E Tests
Test Coverage Expansion
Added comprehensive E2E tests for user CRUD with Page Object Model, session lifecycle and creation flows, and VFolder file uploads. Improved visual regression test reliability and tagging.
- FR-2002: improve user CRUD E2E tests with Page Object Model and comprehensive test plan by @yomybaby in #5187
- FR-2015: add session lifecycle and creation E2E tests by @yomybaby in #5226
- FR-2031: add comprehensive file upload E2E tests for VFolder by @yomybaby in #5265
- FR-2024: add tags to visual regression E2E tests by @yomybaby in #5243
- FR-2030: refactor visual regression E2E tests for reliability by @yomybaby in #5254
📝 Documentation
Storybook & Agent Documentation
Added Storybook stories for multiple components and fragment tag/display components. Enhanced Playwright E2E test agent documentation and added documentation management agents with user manual docs package. Added text file editing feature documentation and comprehensive E2E test coverage report.
- FR-1974: add Storybook story for component by @limshyun in #5162
- FR-1976: add Storybook stories for fragment tag/display components by @limshyun in #5201
- FR-2018: enhance Playwright E2E test agent documentation by @yomybaby in #5229
- FR-2043: add documentation management agents and user manual docs package by @yomybaby in #5290
- FR-2046: add text file editing feature documentation by @yomybaby in #5295
- FR-2041: add comprehensive E2E test coverage report by @yomybaby in #5283
🛠 Chores
CI/CD & Tooling
Migrated Graphite CLI to MCP and enforced Atlassian MCP usage for Jira operations. Added unified submit-staged-changes command, E2E watchdog workflow, and pnpm git branch lockfile support. Updated Jest config and added jotai-family package.
- FR-1947: migrate Graphite CLI to MCP and enforce Atlassian MCP usage by @yomybaby in #5109
- FR-2003: add unified submit-staged-changes command by @yomybaby in #5189
- FR-1027: add E2E watchdog and healer workflow by @yomybaby in #5145
- FR-1640: apply pnpm git branch lockfile by @limshyun in #5277
- FR-2037: update jest config, docs, and add jotai-family package by @agatha197 in #5263
- FR-2045: remove graphql.config.ts from tsconfig.json includes by @ironAiken2 in #5293
- FR-2010: bump version to 26.2.0-alpha.0 and update dependencies by @yomybaby in #5206
UI Label & Terminology Updates
Updated auto-scaling rule UI labels and corrected terminology from Scale Up/Down to Scale Out/In.
- FR-2033: update UI labels for auto-scaling rules by @agatha197 in #5269
- FR-2034: fix auto-scaling rule UI terminology: Scale Up/Down → Scale Out/In by @agatha197 in #5271
🔧 Miscellaneous
- FR-1940: modify the upload dropdown button to open only when clicked by @nowgnuesLee in #5104
- FR-2000: update graphql.config.ts to support GraphQL extensions by @nowgnuesLee in #5183
- FR-1948: fix broken Storybook components on ui.backend.ai by @limshyun in #5130
Full Changelog: v26.1.0...v26.2.0-rc.1