Commit Graph

1315 Commits

Author SHA1 Message Date
João Salavisa 5df7d5be7f test(gitlab): make the package's tests hermetic against ambient env (#2495)
Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-10 19:41:24 +01:00
João Salavisa 4863b73ff0 test(backend): cover SSH and Sprites executor lifecycle paths (#2493)
Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-10 19:04:44 +01:00
Carlos Florêncio 4e0c1a3705 feat(launcher): move make dev to the native Go launcher (#2411) 2026-08-10 18:14:45 +01:00
João Salavisa f6fc6b3c72 fix(github): copy the watch handed to the initial-check goroutine (#2492) 2026-08-10 18:04:52 +02:00
João Salavisa a6a26911b7 test(backend): cover the untested sqlite task-repository surfaces (#2490)
Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-10 16:14:29 +01:00
Carlos Florêncio 4f2cf8f9df fix: separate debug and development launch profiles (#2487) 2026-08-10 15:44:31 +01:00
Carlos Florêncio 152e5a34c0 fix: normalize OMP shell command output (#2480) (#2486) 2026-08-10 15:42:19 +01:00
Carlos Florêncio 3c973ce8b4 refactor(lifecycle): split execution creation (#2382) (#2485) 2026-08-10 13:31:58 +01:00
João Salavisa ac54f96e44 test(backend): assert three mutation-surviving code paths (#2481)
Co-authored-by: Kandev Agent <agent@kandev.dev>
2026-08-10 11:18:44 +01:00
Alassane c0f5750bca fix(github): unify CI auto-fix direct-dispatch metadata (#2469)
Co-authored-by: ayattara <alassane.yattara@savoirfairelinux.com>
2026-08-10 10:21:56 +01:00
nova28 258840fd9f feat(automations): add github_pr_merged trigger type (#2462)
Co-authored-by: nova28 <17953305+nova28@users.noreply.github.com>
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
2026-08-10 10:13:52 +01:00
João Salavisa ed04825bb2 fix(lifecycle): guard agent execution metadata against concurrent map access (#2472)
Co-authored-by: Kandev Agent <agent@kandev.dev>
2026-08-09 23:54:43 +01:00
João Salavisa e47f7c59f7 fix(git): ignore inherited indexed Git config beyond GIT_CONFIG_COUNT (#2475)
Co-authored-by: Kandev Agent <agent@kandev.dev>
2026-08-09 23:48:44 +01:00
João Salavisa 01d6e8db77 fix(task): home borrowed environments in the worktree cutover (#2473)
Co-authored-by: Kandev Agent <agent@kandev.dev>
2026-08-09 23:31:43 +01:00
Carlos Florêncio 84ce139b35 fix(task): recover cutover from stale session metadata (#2471) 2026-08-09 22:45:46 +01:00
Carlos Florêncio 52be8b8e47 fix: guard backend runtime-state ownership (#2468) 2026-08-09 21:44:52 +01:00
Clément Fiere e4bc3be8b1 feat: no silent model fallback — explicit failure, gone models, per-profile fallback (#2385)
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
2026-08-09 21:44:25 +01:00
Carlos Florêncio 0b60af298e feat: add task autopilot mode and MCP profiles (#2445) 2026-08-09 20:29:48 +01:00
João Salavisa d6e2c358da refactor(task): share task-plan WS error mapping across both surfaces (#2465)
Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-09 18:38:14 +01:00
Carlos Florêncio 1928f258bf feat: use agent profiles for utility agents (#2430) 2026-08-09 18:36:08 +01:00
nova28 d7f640f8ab fix(worktree): destroy every repo's worktree during multi-repo task cleanup (#2460)
Co-authored-by: nova28 <17953305+nova28@users.noreply.github.com>
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
2026-08-09 18:21:44 +01:00
Carlos Florêncio f4bc7f0a8c feat: add Dev and Preview title prefixes (#2464) 2026-08-09 18:12:08 +01:00
nova28 e035a0c355 feat(tasks): add external_id create idempotency (#2440)
Co-authored-by: nova28 <17953305+nova28@users.noreply.github.com>
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
2026-08-09 18:07:23 +01:00
Carlos Florêncio 8e56a3a7f7 feat(storage): add owned temporary artifact cleanup (#2444) 2026-08-09 17:57:47 +01:00
Carlos Florêncio abc05be59e fix(task): recover legacy worktree ownership cutover (#2463) 2026-08-09 17:37:48 +01:00
Carlos Florêncio 2832170eb4 fix(task): preserve task-owned worktrees across session deletion (#2456) 2026-08-09 12:05:48 +01:00
Aulma 14d91f5e3d feat: add configurable browser tab title prefix (#2459) 2026-08-09 12:02:44 +01:00
Clément Fiere bd95054997 feat: reorder queued messages by drag and drop (#2420)
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
2026-08-09 12:00:21 +01:00
Carlos Florêncio bbdd426776 fix: support unitless slow durations (#2450) 2026-08-09 11:54:09 +01:00
nova28 b309d2beb6 fix(web): render workflow description in settings (#2418) 2026-08-09 11:49:04 +01:00
João Salavisa c5c591b60b refactor(pty): collapse duplicated PTY and cmdline helpers into common/ptyexec (#2457)
Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-09 01:03:13 +01:00
João Salavisa 46021e7d23 fix(github): persist PR state from the feedback fetch so surfaces agree (#2449)
PR state was written by two flows and the second one could not persist: the feedback fetch returned live PR data without saving it, and the browser patched its own store copy instead. Opening a PR's detail panel turned that tab purple while the kanban card and boot payload still read state=open, and a reload snapped it back.

The backend is now the only writer — the feedback read reconciles through SyncTaskPR and publishes github.task_pr.updated, so every surface converges and the state survives a reload. SyncTaskPR also refuses to move a row out of merged, since GitHub cannot un-merge a PR.
2026-08-09 00:32:43 +02:00
João Salavisa 66af951574 fix(workflow): publish step created/updated events from the REST surface (#2438)
Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-08 21:54:22 +01:00
João Salavisa f344fc3774 fix(github): sync PR rows no watch points at so merged PRs stop reading as open (#2429)
Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-08 21:03:02 +01:00
João Salavisa deb39de837 feat: add list_task_sessions_kandev MCP tool (#2442)
Co-authored-by: Kandev Agent <agent@kandev.dev>
2026-08-08 22:02:48 +02:00
Carlos Florêncio 5b13f43d80 feat: add provider-neutral agent error recovery (#2437) 2026-08-08 19:59:51 +01:00
Carlos Florêncio 4c1207cbe5 fix: contain backend runtime failure paths (#2431) 2026-08-08 19:59:25 +01:00
Carlos Florêncio 1c843f68e5 fix: prepare SSH workspaces before agentctl (#2413) (#2439) 2026-08-08 19:52:00 +01:00
João Manso ff94d3d5ab fix(agentctl): accept the Windows executable suffix in the ACP probe allow-list (#2422) 2026-08-08 19:33:19 +01:00
Carlos Florêncio 7133b132f6 feat(storage): speed up scans and add dependency cleanup (#2432) 2026-08-08 19:30:05 +01:00
Carlos Florêncio 317dac7837 fix: remember task-create workflows per workspace (#2428) 2026-08-08 18:59:27 +01:00
João Salavisa d5b1986f45 refactor(runs): funnel run cancellation through one guarded writer (#2435)
Co-authored-by: Kandev Agent <agent@kandev.dev>
2026-08-08 18:48:30 +01:00
João Salavisa 1afc96ea41 fix(agentctl): size file-search results from trusted bounds (#2434)
Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-08 19:38:34 +02:00
João Salavisa 70e6eb8895 fix(git): count diff lines by hunk position, not by "+++"/"---" prefix (#2427)
Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-08 19:17:09 +02:00
Carlos Florêncio fb1d8fdcd7 fix: prevent premature pending-action clearing (#2424) 2026-08-08 17:19:24 +01:00
Carlos Florêncio cd1d19ae65 feat: resolve model-dependent provider options (#2404) 2026-08-08 17:13:50 +01:00
nova28 ecd70a9535 fix(workflow): resolve configure_session agent families so per-step models apply (#2414)
Co-authored-by: nova28 <17953305+nova28@users.noreply.github.com>
2026-08-08 16:29:38 +01:00
Alassane 131ef6f6c2 feat(gitlab): add MR auto-fix, auto-merge, hover preview, badge (#2301) 2026-08-08 16:01:39 +01:00
João Manso 247c0591c2 fix(agentctl): extend the inherited PATH key when prepending the GitHub CLI shim (#2415) 2026-08-08 14:44:54 +01:00
nova28 f8acc2a7f5 feat(health): surface kandev version on /health (#2416) 2026-08-08 14:43:51 +01:00