fix(FN-1685): fix pre-existing test expectation for experimentalFeatures merge behavior

This commit is contained in:
gsxdsm
2026-04-14 10:29:37 -07:00
parent 32df937c1c
commit ebb830218c
9 changed files with 23 additions and 4 deletions

View File

@@ -1,4 +1,5 @@
---
"@fusion/core": minor
"@gsxdsm/fusion": minor
---

View File

@@ -1,5 +1,8 @@
---
"@gsxdsm/fusion": minor
"@fusion/core": minor
"@fusion/dashboard": minor
"@fusion/engine": minor
---
Rename project storage to `.fusion/fusion.db` and global storage to `~/.pi/fusion`.

View File

@@ -1,5 +1,6 @@
---
"@gsxdsm/fusion": minor
"@fusion/dashboard": patch
---
Rename environment variables from KB_* to FUSION_* prefix

View File

@@ -1,5 +1,8 @@
---
"@gsxdsm/fusion": patch
"@fusion/core": patch
"@fusion/dashboard": patch
"@fusion/engine": patch
---
Rename internal packages from @kb/* to @fusion/* namespace

View File

@@ -1,4 +1,7 @@
---
"@fusion/core": minor
"@fusion/dashboard": minor
"@fusion/engine": minor
"@gsxdsm/fusion": minor
---

View File

@@ -1,5 +1,8 @@
---
"@gsxdsm/fusion": minor
"@fusion/core": minor
"@fusion/dashboard": minor
"@fusion/engine": minor
---
Rename default task ID prefix from KB to FN and branch naming from kb/ to fusion/

View File

@@ -1,5 +1,7 @@
---
"@gsxdsm/fusion": patch
"@fusion/core": patch
"@fusion/dashboard": patch
---
Add `openrouterModelSync` setting (default: true) to control whether the dashboard fetches the latest OpenRouter model catalog at startup. Toggled in Settings → Models. This fixes the model picker not showing the latest OpenRouter models because the `pi-openrouter-realtime` extension only syncs on `session_start` events (TUI-only).

View File

@@ -1,5 +1,8 @@
---
"@gsxdsm/fusion": patch
"@fusion/core": patch
"@fusion/dashboard": patch
"@fusion/engine": patch
---
Update documentation and remaining references for Fusion rebrand

View File

@@ -1199,7 +1199,7 @@ describe("TaskStore", () => {
expect(settings.experimentalFeatures).toEqual({ "my-feature": false });
});
it("can add a new experimental feature (replaces entire object)", async () => {
it("can add a new experimental feature (merges with existing)", async () => {
await store.updateSettings({
experimentalFeatures: { "feature-a": true },
});
@@ -1209,9 +1209,9 @@ describe("TaskStore", () => {
});
const settings = await store.getSettings();
// Note: updateSettings replaces experimentalFeatures entirely, not merged
// To preserve existing features, pass all features in a single update
expect(settings.experimentalFeatures).toEqual({ "feature-b": true });
// Note: updateSettings merges experimentalFeatures, preserving existing features
// To replace entirely, pass null for experimentalFeatures first, then the new object
expect(settings.experimentalFeatures).toEqual({ "feature-a": true, "feature-b": true });
});
it("can remove an experimental feature by setting it to null (selective removal)", async () => {