fix(core): stop watching agenda spec dirs while the todo tool is disabled (#13629)
* fix(core): stop watching agenda spec dirs while the todo tool is disabled Since #13530 disabled the agent todo tool, the Agenda UI, and the automation pump, the hub still created fs.watch watchers on the global agenda specs dir and on every workspace root recorded in the task store (at startup and on scope access). Nothing consumes the watcher-driven task events while the feature is off, and the task.* hub commands already reconcile spec files on demand, so the watchers are pure overhead - one OS watch handle per known workspace. Wire watchFiles to AGENDA_TODO_TOOL_ENABLED the same way automationEnabled is, preserving a host's explicit watchFiles opt-out for when the flag is turned back on. Schedules are unaffected: the schedule list has no file watcher and updates through hub commands and published schedule events. * fix(core): reconcile external spec edits inside updateTask With the spec watchers off there is no background reconciliation, so a task spec edited directly on disk made every same-store task.update fail the signature check with "task spec changed outside the manager" until an unrelated task.get or task.list happened to reconcile the scope. Reconcile the task's scope at the start of updateTask (mirroring what refreshAndVerifyTaskIntent already does for approve/run), skipping it when the file reconciler itself is the caller to avoid recursing from reconcileFileStore. An external edit now surfaces as the store's normal stale-revision conflict, and a re-read-and-retry succeeds. This also closes the pre-existing watcher debounce race for updates.
B
Bee committed
62f471f2338ee7b3a7b60815ad7c94f922692de0
Parent: c017c70
Committed by GitHub <noreply@github.com>
on 8/27/2026, 8:00:24 PM