Commit Graph

1593 Commits

Author SHA1 Message Date
github-actions[bot] 1da2710881 release: 0.76.0 v0.76.0 2026-07-09 10:31:59 +00:00
Carl Sue 9722a39639 fix(ssh-executor): forward agent creds, fix terminal host config, restore linux/arm64 (#1559)
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
2026-07-09 09:20:07 +01:00
Carl Sue 4f80aafd68 fix(orchestrator): keep resume readiness waits alive under caller cancellation (#1582)
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
2026-07-09 09:19:44 +01:00
Carlos Florêncio 9da896bc86 fix: truncate long task titles in topbar (#1630) 2026-07-09 08:14:25 +01:00
Carlos Florêncio 2b8504a913 fix: handle config MCP executor listing (#1628) 2026-07-09 08:09:11 +01:00
Carlos Florêncio fd3cc64d12 fix: expose signal-gated workflow steps in config MCP (#1629) 2026-07-09 08:08:53 +01:00
point-source e1cf99f821 fix(executors): truthful executor rows, startup reconciliation, resume-safe cleanup (#1597) (#1608)
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
2026-07-08 23:37:02 +01:00
github-actions[bot] bd22a1318c release: 0.75.0 v0.75.0 2026-07-08 17:32:23 +00:00
Carlos Florêncio 0187390245 fix: stop kanban spinner for not-started sessions and fix truncated manual backup size (#1622) 2026-07-08 18:30:15 +01:00
Carlos Florêncio b4824bd4c7 fix: preserve inherited task worktrees (#1621) 2026-07-08 17:11:50 +01:00
Carlos Florêncio fd0ed44d59 fix(integrations): scope sidebar availability to active workspace (#1620) 2026-07-08 15:08:09 +01:00
João Salavisa f7d8d5d603 fix(web): confirm before archiving from PR merged/closed banners (#1619)
* fix(web): require confirmation before archiving from PR merged/closed banners

The Archive link in the PR merged/closed status-bar banners archived the
task immediately, unlike every other archive surface. Route it through the
shared TaskArchiveConfirmDialog (cleanup summary + subtask cascade), and
move the banners into pr-archive-banners.tsx since chat-input-area.tsx was
over the file-size lint limit.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* test(web): cover cascade passthrough in banner archive confirmation

Review follow-up: the subtask cascade checkbox is an acceptance criterion
for the banner archive flow, but tests only asserted cascade: false.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* test(e2e): verify cancel path of PR banner archive confirmation

QA follow-up: exercise the dialog cancel path in a real browser — cancel
must close the dialog, keep the banner, and archive nothing.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix(web): expose pending state on banner archive confirmation

Thread isPending from useBannerArchiveConfirm into
TaskArchiveConfirmDialog as isArchiving, matching the other archive
surfaces. Guards double-submit when the dialog is reopened while an
archive is still in flight on a slow connection.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* test(e2e): scope archive-cancel click to the alertdialog

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

---------

Co-authored-by: Kandev Agent <agent@kandev.dev>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-07-08 12:14:01 +01:00
José Almeida 1ed2c59997 feat: persist and expire quick chats (#1612)
* feat: persist and expire quick chats

* fix: address quick chat review feedback

* fix: resolve quick chat review findings

* fix: close remaining quick chat review gaps

* fix: avoid repeated quick chat expiration rechecks

* fix: guard quick chat expiration deletes

* fix: expire abandoned starting quick chats

* fix: ignore missing quick chat expiration candidates
2026-07-08 12:11:28 +01:00
Carlos Florêncio 8b90ec2593 feat: improve office onboarding and workspace flows (#1606) 2026-07-08 12:07:38 +01:00
Carlos Florêncio 164b80ac54 feat(integrations): single workspace switcher with deep links and copy-config dialog (#1616) 2026-07-08 10:06:50 +01:00
Carlos Florêncio c5a3d6a114 fix: compact model config selector (#1611) 2026-07-08 10:06:33 +01:00
Carlos Florêncio 61f4427eea fix: encode workflow hidden flag for postgres (#1614) 2026-07-07 18:54:46 +01:00
José Almeida d62b51b0be fix: route controlled diff comment updates (#1599)
* fix: route controlled diff comment updates

* fix: address review comments overview feedback

* fix: address automated review feedback

* fix: keep failed controlled edits open

* fix: guard controlled comment deletes

* fix: compare controlled delete handler

* test: cover controlled update rerender
2026-07-07 10:19:56 +01:00
Carlos Florêncio c9063e1b0a feat: consolidate office system skills (#1604) 2026-07-06 22:19:52 +01:00
Carlos Florêncio a915590f13 fix: schedule agent-created office tasks (#1605) 2026-07-06 22:15:41 +01:00
Carlos Florêncio c3f713e494 feat: scope GitHub integration settings by workspace (#1572) 2026-07-06 21:43:13 +01:00
github-actions[bot] a65df78bdd release: 0.74.0 v0.74.0 2026-07-06 19:27:44 +00:00
Carlos Florêncio 5835887120 fix: reap prompt-dead executions on resume (#1602) 2026-07-06 20:13:27 +01:00
Carlos Florêncio 0eebd21c92 fix: complete idle acp monitor turns (#1600) 2026-07-06 20:13:13 +01:00
Carlos Florêncio 67a16732ce fix: repair office agent launch context (#1601) 2026-07-06 19:10:12 +01:00
José Almeida 5105ac224c feat: cmd+click and shift+click multi-select for kanban and sidebar (#1518)
* feat: add anchored range selection to multi-select reducer

* feat: cmd+click and shift+click multi-select on kanban board

* feat: add cmd/shift multi-select to sidebar task list

* test: e2e coverage for cmd/shift multi-select

* fix: harden multi-select selection lifecycle from review feedback

* test: scope multi-select e2e helpers to active containers

* fix: add sidebar multi-select hook tests and tighten bulk-action lifecycle

* fix: prune hidden sidebar selections and order bulk moves by view

* test: cover visible-order bulk move and anchor realignment

* fix: harden sidebar bulk-move scope and keyboard selection parity

* fix: order kanban bulk moves by board position

* test: cover multi-select helpers and fix stale-id sort fallback

* fix: order kanban card context-menu moves by board position

* feat: sidebar multi-select shows only bulk-valid actions with bulk pin and delete

* fix: harden multi-select bulk ordering, selection clearing, and a11y

* fix: gate kanban card move-to-step for mixed-workflow selections

* fix: unpin fully pinned sidebar selections

* refactor: keep sidebar task components under limits

* test: restore sidebar selection console spy safely
2026-07-06 17:16:14 +01:00
Clément Fiere 26773b28d1 feat(automation): delete buttons for individual and all runs in Recent Runs (#1586) 2026-07-06 16:39:33 +01:00
Clément Fiere 90de507fed fix(automation): stop scheduled trigger retry storm on concurrency cap skip (#1598) 2026-07-06 15:14:53 +01:00
Carlos Florêncio c18a13c361 feat(tasks): adopt Office-style /tasks list UX (#1593) 2026-07-03 22:56:13 +01:00
github-actions[bot] 396e2a9fef release: 0.73.0 v0.73.0 2026-07-03 19:26:41 +00:00
Carlos Florêncio 93c72ae651 fix(web): preserve active workspace on settings bootstrap (#1591) 2026-07-03 20:19:52 +01:00
Carlos Florêncio d451e8f9f8 feat: filter Jira tickets by project statuses (#1588) (#1595) 2026-07-03 19:17:14 +01:00
Carlos Florêncio d1d56c1a08 fix(office): clear stale agent state on inactive workspace (#1592) 2026-07-03 18:21:00 +01:00
Carlos Florêncio 46648b13df ci: disable opencode review workflow (#1590) 2026-07-03 17:31:49 +01:00
Carlos Florêncio e27a9e84aa fix: support postgres database stats page (#1589) 2026-07-03 16:58:21 +01:00
Carlos Florêncio 85950a4b69 fix: persist live executor runtime state (#1585) (#1587) 2026-07-03 15:39:06 +01:00
dk-blackfuel 87e239db7c fix: correct Linear ticket-number search filter (#1584) 2026-07-03 10:55:26 +01:00
jijiamoer 5c0d4f5e9b feat: add Devin ACP agent integration (#1497) 2026-07-02 21:57:25 +01:00
Carlos Florêncio 8e9a41efab fix: recover stale prompts and invalid monitors (#1581) 2026-07-02 20:27:13 +01:00
github-actions[bot] 7a3b979820 release: 0.72.0 v0.72.0 2026-07-02 19:16:16 +00:00
Carlos Florêncio 3869dee489 fix: pause on clarification timeout (#1580) 2026-07-02 20:07:31 +01:00
Carlos Florêncio 266d58b8a0 fix: keep slash command selections as drafts (#1576) 2026-07-02 16:45:01 +01:00
Carlos Florêncio 3f930f5029 fix: preserve task create defaults after refresh (#1575) 2026-07-02 13:59:57 +01:00
dk-blackfuel da5050a44a fix: prevent infinite refetch loop on the automations settings page (#1573) 2026-07-02 12:42:02 +01:00
Carlos Florêncio a8089ebb32 fix: add task lifecycle diagnostics (#1571) 2026-07-02 11:25:50 +01:00
Carlos Florêncio a3bbb999ba ci: add release backfill and dmg diagnostics (#1570) 2026-07-02 11:25:05 +01:00
José Almeida e99f81394e feat: press Enter on a dialog to run its semantic action (#1565)
* feat: press Enter on a dialog to run its semantic action

* fix: harden dialog Enter-to-confirm from review feedback

* fix: refine dialog Enter guards and fix prettier CI
2026-07-01 23:43:04 +01:00
github-actions[bot] 805a36b6e8 release: 0.71.0 v0.71.0 2026-07-01 20:40:18 +00:00
José Almeida 5efeae4ece feat: allow multiline custom answers in clarification overlay (#1566)
* feat: allow multiline custom answers in clarification overlay

Swap the single-line custom-answer input for an auto-growing textarea so users
can type multi-line replies to ask_user_question. Enter submits, Shift+Enter
inserts a newline; the box grows to ~6 lines then scrolls. Adds unit and e2e
coverage.

* fix: address review feedback on multiline clarification input

- Always preventDefault on desktop plain Enter so an empty draft can't leak a
  stray newline before the trim guard (Claude/CodeRabbit).
- On coarse-pointer devices let Enter insert a newline and submit via the
  existing Submit button; hide the keyboard hints on touch (mobile parity).
- Preserve newlines in the resolved clarification history message via
  whitespace-pre-wrap + items-start.
- Strengthen e2e to guard against fused lines; add Ctrl+Enter and touch tests.

* fix: touch submit button and IME guard for clarification input

- Guard against submitting on the Enter that confirms an IME candidate
  (e.nativeEvent.isComposing) on CJK keyboards.
- Add an inline Send button on coarse-pointer devices so single-question custom
  answers (which have no overlay Submit button) have a touch-reachable send
  path. Fixes the regression from switching touch Enter to newline.

* refactor: extract clarification custom-input controls

- Pull the Enter/⇧↵ hints and touch Send button into a CustomInputControls
  subcomponent to shrink ClarificationCustomInput.
- Compute the trimmed draft once and reuse it across the keydown handler and the
  Send button (disabled state, click, styling) so the conditions can't drift.
- Add a test asserting the touch Send button is disabled while isSubmitting.

* fix: ignore auto-repeat Enter in clarification custom input

A held Enter key emits auto-repeat keydown events; guard the handler with
e.repeat so it can't fire onSubmit more than once. Adds a regression test.

* fix: suppress newline on repeat Enter and add mobile clarification e2e

- Repeat Enter on desktop now calls preventDefault before bailing, so a held key
  can't leak newlines into the current or next question's textarea after the
  carousel advances; it still never re-fires onSubmit/finalize.
- Add a mobile-chrome (Pixel 5) e2e covering the touch path: Enter inserts a
  newline and the inline Send button submits the multiline answer.

* test: consolidate clarification e2e seed helper

Extract the shared seed → navigate → waitForLoad flow into
e2e/helpers/clarification.ts and delegate from the clarification, resize, and
mobile specs instead of duplicating it in each.
2026-07-01 21:36:58 +01:00
Carlos Florêncio a30dd39566 fix: avoid stale task worktree repository launches (#1568) 2026-07-01 21:25:05 +01:00