feat(FN-4722): complete Step 2 — derive goals setting flag

Fusion-Task-Id: FN-4722
Fusion-Task-Lineage: 51be7260-82f0-4ec9-a350-06778b8eb01b
This commit is contained in:
Fusion (runfusion.ai)
2026-05-16 06:18:16 -07:00
committed by gsxdsm
parent a5ac8bd38b
commit 5f04622c42
2 changed files with 10 additions and 1 deletions

View File

@@ -772,6 +772,7 @@ function AppInner() {
memoryEnabled,
devServerEnabled,
todosEnabled,
goalsEnabled,
toggleAutoMerge,
toggleGlobalPause,
toggleEnginePause,
@@ -873,7 +874,10 @@ function AppInner() {
if (taskView === "evals" && !evalsEnabled) {
handleChangeTaskView("board");
}
}, [taskView, settingsLoaded, skillsEnabled, insightsEnabled, handleChangeTaskView, agentsEnabled, memoryEnabled, devServerEnabled, researchEnabled, evalsEnabled, graphPluginTaskView]);
if (taskView === "goalsView" && !goalsEnabled) {
handleChangeTaskView("board");
}
}, [taskView, settingsLoaded, skillsEnabled, insightsEnabled, handleChangeTaskView, agentsEnabled, memoryEnabled, devServerEnabled, researchEnabled, evalsEnabled, goalsEnabled, graphPluginTaskView]);
// Auto-close nodes overlay if feature flag is toggled off while overlay is open
useEffect(() => {

View File

@@ -24,6 +24,7 @@ export interface UseAppSettingsResult {
memoryEnabled: boolean;
devServerEnabled: boolean;
todosEnabled: boolean;
goalsEnabled: boolean;
autoReloadOnVersionChange: boolean;
toggleAutoMerge: () => Promise<void>;
toggleGlobalPause: () => Promise<void>;
@@ -56,6 +57,7 @@ export function useAppSettings(projectId?: string): UseAppSettingsResult {
const [memoryEnabled, setMemoryEnabled] = useState(false);
const [devServerEnabled, setDevServerEnabled] = useState(false);
const [todosEnabled, setTodosEnabled] = useState(false);
const [goalsEnabled, setGoalsEnabled] = useState(false);
const [autoReloadOnVersionChange, setAutoReloadOnVersionChangeState] = useState(true);
/**
@@ -93,6 +95,7 @@ export function useAppSettings(projectId?: string): UseAppSettingsResult {
setMemoryEnabled(features.memoryView === true);
setDevServerEnabled(features.devServerView === true || features.devServer === true);
setTodosEnabled(features.todoView === true);
setGoalsEnabled(features.goalsView === true);
// Sync the module-level auto-reload guard with the persisted setting
const autoReload = settings.autoReloadOnVersionChange !== false;
setAutoReloadOnVersionChangeState(autoReload);
@@ -109,6 +112,7 @@ export function useAppSettings(projectId?: string): UseAppSettingsResult {
setMemoryEnabled(false);
setDevServerEnabled(false);
setTodosEnabled(false);
setGoalsEnabled(false);
void refresh();
}, [refresh]);
@@ -194,6 +198,7 @@ export function useAppSettings(projectId?: string): UseAppSettingsResult {
memoryEnabled,
devServerEnabled,
todosEnabled,
goalsEnabled,
autoReloadOnVersionChange,
toggleAutoMerge,
toggleGlobalPause,