You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Error: Error invoking remote method 'workflow:watch-project': Error: No handler registered for 'workflow:watch-project' #26
Auto-triage attempted but the candidate fix failed npx tsc. Human review needed. Log: C:\Users\DavidEngelhart\AppData\Local\termpolis\auto-triage\run-20260818-150422.log
Fixed in v1.41.3 — same root cause as #25, same fix.
workflow:watch-project has been registered since v1.31.0 (src/main/workflow/ipc.ts:154). The bug was a cold-boot ordering race: createWindow() (src/main/index.ts:2715) and registerWorkflowIpc(...) (src/main/index.ts:3554) sit ~840 lines apart inside the same app.whenReady().then(), so the renderer can reach ipcRenderer.invoke before the handler exists. That is also why the auto-triage bot's candidate fix failed npx tsc — it was trying to add a handler that was already there.
This one had a worse consequence than #25. A lost workflow:list leaves an empty list, which is at least visible. A lost workflow:watch-project means the project's cron, git and file triggers never arm — silently, for the entire session. Workflows simply never fire, with nothing in the UI to say why.
Fix (src/renderer/src/components/Sidebar/Sidebar.tsx): the project watcher is now re-armed on every retry attempt, not just the first — the lost call is precisely the one worth repeating — and its rejection is swallowed rather than escaping to Sentry. Retries happen only on rejection; an err() response is main answering and is treated as an answer.
Tests — covered in tests/components/Sidebar.test.tsx, including a dedicated case asserting the watcher is re-armed on each attempt with the correct cwd and that its rejection never escapes.
Activity
codedev-david commentedon Aug 18, 2026
Auto-triage attempted but the candidate fix failed
npx tsc. Human review needed. Log:C:\Users\DavidEngelhart\AppData\Local\termpolis\auto-triage\run-20260818-150422.logv1.41.3: an agent profile can no longer name a shell you do not have
codedev-david commentedon Sep 13, 2026
Fixed in v1.41.3 — same root cause as #25, same fix.
workflow:watch-projecthas been registered since v1.31.0 (src/main/workflow/ipc.ts:154). The bug was a cold-boot ordering race:createWindow()(src/main/index.ts:2715) andregisterWorkflowIpc(...)(src/main/index.ts:3554) sit ~840 lines apart inside the sameapp.whenReady().then(), so the renderer can reachipcRenderer.invokebefore the handler exists. That is also why the auto-triage bot's candidate fix failednpx tsc— it was trying to add a handler that was already there.This one had a worse consequence than #25. A lost
workflow:listleaves an empty list, which is at least visible. A lostworkflow:watch-projectmeans the project's cron, git and file triggers never arm — silently, for the entire session. Workflows simply never fire, with nothing in the UI to say why.Fix (
src/renderer/src/components/Sidebar/Sidebar.tsx): the project watcher is now re-armed on every retry attempt, not just the first — the lost call is precisely the one worth repeating — and its rejection is swallowed rather than escaping to Sentry. Retries happen only on rejection; anerr()response is main answering and is treated as an answer.Tests — covered in
tests/components/Sidebar.test.tsx, including a dedicated case asserting the watcher is re-armed on each attempt with the correct cwd and that its rejection never escapes.