feat(core): improve byok editing (#15427)

fix #14287
fix #15359
fix #15424

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **New Features**
* Redesigned workspace AI provider settings with connection testing,
storage options, model selection, capability management, ordering, and
custom endpoints.
* AI chat model choices now adapt to the selected workspace and
conversation route.
  * Added support for image-based AI requests.
* **Bug Fixes**
  * Improved handling of unavailable or outdated model selections.
* App configuration updates now reject overlapping paths and load
deterministically.
* **Tests**
* Expanded coverage for provider models, AI chat scoping, image
requests, and configuration validation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
DarkSky
2026-08-05 19:26:19 +08:00
committed by GitHub
parent 965f4590ff
commit 543667d9b3
57 changed files with 2951 additions and 1472 deletions
@@ -29,9 +29,9 @@ const config: PlaywrightTestConfig = {
webServer: [
{
command: 'yarn run -T affine dev -p @affine/web',
stdout: 'ignore',
stderr: 'ignore',
timeout: 120 * 1000,
stdout: 'pipe',
stderr: 'pipe',
timeout: 240 * 1000,
reuseExistingServer: !process.env.CI,
env: {
COVERAGE: process.env.COVERAGE || 'false',
@@ -40,10 +40,10 @@ const config: PlaywrightTestConfig = {
},
{
command: 'yarn run -T affine dev -p @affine/server',
timeout: 120 * 1000,
timeout: 240 * 1000,
reuseExistingServer: !process.env.CI,
stdout: 'ignore',
stderr: 'ignore',
stdout: 'pipe',
stderr: 'pipe',
env: {
DATABASE_URL:
process.env.DATABASE_URL ??