diff --git a/.changeset/fn-7692-merger-confirmation-copy.md b/.changeset/fn-7692-merger-confirmation-copy.md index 0954b30fa..f798a4dbe 100644 --- a/.changeset/fn-7692-merger-confirmation-copy.md +++ b/.changeset/fn-7692-merger-confirmation-copy.md @@ -2,6 +2,6 @@ "@runfusion/fusion": patch --- -summary: Fix misleading merger "awaiting-confirmation" copy that claimed a hard block when auto-merge advances the merge automatically. +summary: Fix merger awaiting-confirmation copy that implied a hard block when auto-merge proceeds automatically. category: fix dev: `decidePlannerRecovery` now accepts an additive `autoMergeWillProceed` flag (threaded from `allowsAutoMergeProcessing` in `PlannerRecoveryController.tick`) that only shapes the confirmation `reason` string; no gating/behavior change to `action`/`requiresConfirmation`/`sideEffectClass`. diff --git a/packages/dashboard/src/__tests__/chat.test.ts b/packages/dashboard/src/__tests__/chat.test.ts index 620c436ca..114e22814 100644 --- a/packages/dashboard/src/__tests__/chat.test.ts +++ b/packages/dashboard/src/__tests__/chat.test.ts @@ -26,6 +26,8 @@ vi.mock("node:fs/promises", async (importOriginal) => { // Mock @fusion/core to prevent cascade loading of real fs modules vi.mock("@fusion/core", () => ({ summarizeTitle: vi.fn(), + // FNXC:DashboardChatTests 2026-07-08-12:00: FN-7675 added FUSION_RUNTIME_SELF_AWARENESS to chat.ts's @fusion/core imports (CHAT_SYSTEM_PROMPT embeds it). The hand-written core mock must stub it so chat.js loads; importOriginal is intentionally avoided to prevent the real fs cascade this mock exists to block. + FUSION_RUNTIME_SELF_AWARENESS: "", AgentStore: vi.fn(), ChatStore: vi.fn(), registerTraitHookImpl: vi.fn(), diff --git a/packages/engine/src/__tests__/reliability-interactions/verification-followup-dedup.test.ts b/packages/engine/src/__tests__/reliability-interactions/verification-followup-dedup.test.ts index 4a467966e..1957c34bc 100644 --- a/packages/engine/src/__tests__/reliability-interactions/verification-followup-dedup.test.ts +++ b/packages/engine/src/__tests__/reliability-interactions/verification-followup-dedup.test.ts @@ -195,6 +195,11 @@ describe("reliability interactions: verification follow-up dedup", () => { it("remains additive with FN-4892 same-agent duplicate intake", async () => { const fx = await createStore(); fixtures.push(fx); + /* + FNXC:ReliabilityTests 2026-07-08-12:30: + FN-7658 gated same-agent duplicate auto-archiving behind autoArchiveDuplicateTasksEnabled (default false → flag-in-place in triage). This test asserts the ARCHIVE path is additive with verification follow-up dedup, so opt into the legacy archive behavior explicitly rather than asserting the new flag-in-place default. + */ + await fx.store.updateSettings({ autoArchiveDuplicateTasksEnabled: true }); const source = { sourceType: "api" as const, sourceAgentId: "agent-1", diff --git a/packages/i18n/locales/es/app.json b/packages/i18n/locales/es/app.json index efe2d727e..39928dffb 100644 --- a/packages/i18n/locales/es/app.json +++ b/packages/i18n/locales/es/app.json @@ -6526,6 +6526,8 @@ "addIgnoredPath": "", "archiveAgentLog": "", "archiveCompletedTasksAfterDays": "", + "autoArchiveDuplicateTasks": "", + "autoArchiveDuplicateTasksHelp": "", "backlogNoTaskAutoClaimIsExecutorOnly": "", "browse": "", "closeParenPeriod": "", diff --git a/packages/i18n/locales/fr/app.json b/packages/i18n/locales/fr/app.json index 6f2276508..cde0b6dfb 100644 --- a/packages/i18n/locales/fr/app.json +++ b/packages/i18n/locales/fr/app.json @@ -6526,6 +6526,8 @@ "addIgnoredPath": "", "archiveAgentLog": "", "archiveCompletedTasksAfterDays": "", + "autoArchiveDuplicateTasks": "", + "autoArchiveDuplicateTasksHelp": "", "backlogNoTaskAutoClaimIsExecutorOnly": "", "browse": "", "closeParenPeriod": "", diff --git a/packages/i18n/locales/ko/app.json b/packages/i18n/locales/ko/app.json index e54dc1b9f..29592aff4 100644 --- a/packages/i18n/locales/ko/app.json +++ b/packages/i18n/locales/ko/app.json @@ -6526,6 +6526,8 @@ "addIgnoredPath": "", "archiveAgentLog": "", "archiveCompletedTasksAfterDays": "", + "autoArchiveDuplicateTasks": "", + "autoArchiveDuplicateTasksHelp": "", "backlogNoTaskAutoClaimIsExecutorOnly": "", "browse": "", "closeParenPeriod": "", diff --git a/packages/i18n/locales/zh-CN/app.json b/packages/i18n/locales/zh-CN/app.json index 93122c0e9..7f045ff9d 100644 --- a/packages/i18n/locales/zh-CN/app.json +++ b/packages/i18n/locales/zh-CN/app.json @@ -6526,6 +6526,8 @@ "addIgnoredPath": "", "archiveAgentLog": "", "archiveCompletedTasksAfterDays": "", + "autoArchiveDuplicateTasks": "", + "autoArchiveDuplicateTasksHelp": "", "backlogNoTaskAutoClaimIsExecutorOnly": "", "browse": "", "closeParenPeriod": "", diff --git a/packages/i18n/locales/zh-TW/app.json b/packages/i18n/locales/zh-TW/app.json index 01607059a..b4e0de005 100644 --- a/packages/i18n/locales/zh-TW/app.json +++ b/packages/i18n/locales/zh-TW/app.json @@ -6526,6 +6526,8 @@ "addIgnoredPath": "", "archiveAgentLog": "", "archiveCompletedTasksAfterDays": "", + "autoArchiveDuplicateTasks": "", + "autoArchiveDuplicateTasksHelp": "", "backlogNoTaskAutoClaimIsExecutorOnly": "", "browse": "", "closeParenPeriod": "",