Release notes
Thinkrail v0.3.1
What's Changed
- feat(i18n): Add Russian localization (ru) by @arhipov-om in https://github.com/JetBrains/thinkrail/pull/998
- chore(lint): turn noExplicitAny and noNonNullAssertion into errors by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1076
- Blog: GUI overview by @makingthematrix in https://github.com/JetBrains/thinkrail/pull/991
- Blog: review fixes for the GUI overview post (stacked on #991) by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/999
- feat: warn that Claude subscription sign-in bills ThinkRail usage as Anthropic extra usage by @rsolmano in https://github.com/JetBrains/thinkrail/pull/1073
- Blog: ThinkRail 0.3.0 release post by @rsolmano in https://github.com/JetBrains/thinkrail/pull/1041
- fix(server): warn about Anthropic extra usage when an extension switches the model by @rsolmano in https://github.com/JetBrains/thinkrail/pull/1077
- build(web): typecheck tests, scripts, and vite config by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1069
- test(web): typecheck shell tests by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1070
- feat(extensions): install, view and switch pi packages from Settings → Extensions by @rsolmano in https://github.com/JetBrains/thinkrail/pull/1025
- test(web): typecheck chat and store tests by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1071
- test(web): typecheck panels tests by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1072
- fix(resources): recover from a refused Resources read and make replay overflow observable by @rsolmano in https://github.com/JetBrains/thinkrail/pull/987
- fix(host): stop holding replay slots for requests the page gave up on by @rsolmano in https://github.com/JetBrains/thinkrail/pull/988
- settings: center the dialog close button in the header by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1022
- ci: download Playwright's headless shell in the background during the build by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1058
- fix(web): keep one workspace read in flight per site by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1014
- feat: connect your own OpenAI-compatible model servers from Settings → Providers by @rsolmano in https://github.com/JetBrains/thinkrail/pull/1084
- feat: let users choose the interface and code fonts by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1092
- chore(tooling): type-check root scripts, cli scripts, and website tests by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1063
- chore(e2e): type-check the e2e tree in typecheck:root by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1064
- fix(web): stop the chat crashing with "Maximum call stack size exceeded" on WebKit by @rsolmano in https://github.com/JetBrains/thinkrail/pull/1080
- test(web): typecheck every web test and drop the exclude list by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1074
- refactor(web): type-check prototype-free maps with nullProto by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1066
- lint(web): reject Object.create(null) outside nullProto by @Mark-Life in https://github.com/JetBrains/thinkrail/pull/1067
- test: stop the Windows desktop smoke and real-shortcut test flakes by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1112
- test: stop the lifecycle pid-file, e2e global-setup and freePort races by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1115
- ci: retry the Electrobun toolchain download before desktop builds by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1116
- test(e2e): judge managed-runner signal cleanup at runner exit by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1120
- test(e2e): stop the layout tab-drag and side-focus races by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1121
- test(e2e): let the chat's placement motion settle before clicking visualize card controls by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1124
- fix: wake the idle parent as soon as a background result lands by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1123
- test(server): make the unit suite independent of file order and the developer's machine by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1126
- feat(scripts): count queue-on-queue and stacked failures once and read flakes from green e2e jobs by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1122
- fix: stop the Changes review snap-back and the Pierre reveal give-up behind three e2e flakes by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1128
- fix(desktop): keep the window on its origin and open external links exactly once by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/1030
- fix(resource-renderers): show MB when an image size rounds to 1024 KB by @kevin9327 in https://github.com/JetBrains/thinkrail/pull/1096
- fix(artifact-tests): make installer-smoke failures diagnosable and clean up the installed app by @rsolmano in https://github.com/JetBrains/thinkrail/pull/1105
- feat: global search palette — find chats, workspaces and projects, run commands, open Settings sections by @danyaberezun in https://github.com/JetBrains/thinkrail/pull/804
New Contributors
- @arhipov-om made their first contribution in https://github.com/JetBrains/thinkrail/pull/998
- @kevin9327 made their first contribution in https://github.com/JetBrains/thinkrail/pull/1096
Full Changelog: https://github.com/JetBrains/thinkrail/compare/v0.3.0...v0.3.1