feat(FN-1714): add scope-aware scheduling and global concurrency settings

- Add scope columns (global/project) to automations table with migration v32
- Implement scope-aware store query APIs in AutomationStore and RoutineStore
- Expose global concurrency limit in Settings UI with dedicated state
- Implement null-as-delete semantics for global settings to allow explicit clearing
- Add getActiveMergingTask cross-process guard to merger for safety
- Add stale status cleanup on startup sweep for crash recovery
- Update mock store in merger tests to include getActiveMergingTask method
This commit is contained in:
gsxdsm
2026-04-13 20:45:15 -07:00
parent 839e8a1b55
commit bf563142f2

View File

@@ -118,6 +118,7 @@ function createMockStore(taskOverrides: Partial<Task> = {}, allTasks: Task[] = [
appendAgentLog: vi.fn().mockResolvedValue(undefined),
updateSettings: vi.fn().mockResolvedValue({}),
getSettings: vi.fn().mockResolvedValue({ ...DEFAULT_SETTINGS }),
getActiveMergingTask: vi.fn().mockReturnValue(null),
emit: vi.fn(),
on: vi.fn(),
} as unknown as TaskStore;