Commit Graph

1545 Commits

Author SHA1 Message Date
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
StefanFVogel 4b981bc4c6 feat: add Download option to file browser context menu (#1567) 2026-07-01 21:24:07 +01:00
StefanFVogel e780d80709 fix: refresh sidebar tasks when the active workspace changes (#1564) 2026-07-01 15:33:02 +01:00
Jingran e9bc8353cb fix: keep user-selected terminal session active instead of auto-handoff (#1562) 2026-07-01 14:28:36 +01:00
github-actions[bot] 7c6b55ddd0 release: 0.70.0 v0.70.0 2026-07-01 07:01:30 +00:00
Nicolas Lenepveu 6b81dd1566 feat: add per-watch dispatch sorting to the Linear issue watcher (#1553) 2026-07-01 07:55:28 +01:00
Carlos Florêncio 818e9c7abc chore: improve harness feedback workflow (#1561) 2026-07-01 07:54:19 +01:00
Carlos Florêncio ec04d3d6e6 fix: improve ci auto-fix delivery (#1560) 2026-06-30 22:46:28 +01:00
Carlos Florêncio 3743f4b501 fix: preserve nested markdown code fences (#1557) 2026-06-30 22:45:25 +01:00
Carlos Florêncio 7893a5e33e fix: trigger workflow on agent task messages (#1555)
* fix: trigger workflow on agent task messages

* fix: harden agent task message dispatch

* fix: preserve completed task message sessions

* fix: restore review step on task message failure

* test: cover completed task message handoff

* fix: publish task message rollback events

* fix: restore task message session rollback

* fix: avoid orphaned task message rows

* docs: explain task message prompt recording

* fix: harden task message rollback cleanup

* fix: complete task message rollback cleanup

* fix: restore task message dispatch side effects

* fix: restore task state after capture failure

* fix: simplify task message rollback cleanup

* fix: preserve task message rollback snapshots

* fix: restore task message turn-start snapshots

* fix: preserve task message queue snapshots

* fix: fail closed on office task lookup

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-30 18:28:28 +01:00
Carlos Florêncio 393b750a4e fix: sync archived task websocket removals (#1556)
* fix: sync archived task websocket removals

* fix: address archived task review cleanup

* fix: handle archived office task routes

* fix: share task route pathname normalization

* fix: refresh office task removal views

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-30 16:40:52 +01:00
Carlos Florêncio 1abb1c914e fix: keep acknowledged agent errors hidden (#1558)
* fix: keep acknowledged agent errors hidden

* fix: address agent error acknowledgement review

* fix: include fallback sessions in error acknowledgements

* test: cover agent error acknowledgement helpers

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-30 16:29:46 +01:00
Carlos Florêncio 2d73a3d1db fix: keep completed office comments editable (#1548)
* fix: keep completed office comments editable

Keep the office task detail composer editable after completed sessions load,

including projectless office tasks.

Update verification tests for SHA-pinned GitHub actions. Extract the

dockview main area to satisfy the existing max-lines lint rule.

* fix: preserve upload artifact version guard

* fix: clarify upload artifact pin check

* fix: wake completed office sessions on comments

* fix: queue completed office comment runs

* fix: preserve dispatcher session lookup errors

* fix: resolve office comment wake review issues

* fix: stabilize comment wake idempotency

* fix: salt custom comment wake keys

* fix: address comment wake review cleanup

* fix: avoid comment payload allocation overflow pattern

* fix: salt comment wake action variants

* fix: resolve cross-task primary by target step

* fix: resolve cross-task participant roles

* fix: surface cross-task comment run status

* fix: use target steps for cross-task queue runs

* fix: avoid comment run lookup scan regression

* fix: cover cross-task queue run edge cases

* fix: index comment payload run lookup

* fix: support postgres comment run index

* fix: tighten queue run target test coverage

* fix: route source comment run updates

* fix: preserve cross-task comment wakes

* fix: tighten comment wake identity

* fix: align comment wake routing

* fix: remove stale primary resolver

* fix: dedupe comment run status

* fix: tighten legacy comment wake dedupe

* fix: remove unreachable comment wake guard

* fix: skip duplicate comment reactivity wakes

* fix: route comment wakes synchronously

* fix: share comment engine dispatch contracts

* fix: preserve comment wake fallbacks

* fix: preserve done comment runner

* fix: guard empty task runner fallback

* fix: handle empty task runner fallback

* fix: stabilize completed comment wakes

* fix: index comment runner fallback

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-30 13:10:40 +01:00
Carlos Florêncio 657b92eb69 fix: restore workspace deletion from settings (#1547)
* fix: restore workspace deletion from settings

* fix: validate workspace delete in service

* fix: clarify workspace delete errors

* fix: address workspace delete review feedback

* fix: guard confirmed workspace delete before cascade

* fix: simplify workspace delete cascade guard

* fix: make confirmed workspace delete atomic

* fix: preserve confirmed workspace delete side effects

* fix: snapshot confirmed workspace cascade rows

* fix: clarify confirmed workspace delete cleanup

* fix: preserve office workspace deletion cleanup

* fix: preserve workspace delete error mapping

* fix: streamline workspace delete cascade

* fix: harden workspace delete cleanup

* fix: keep workspace delete failure logs

* fix: fail workspace delete on missing session inventory

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-30 08:24:43 +01:00
Carlos Florêncio e51e0ebf3c fix: keep tasks active while sibling sessions run (#1551)
* fix: keep tasks active while sibling sessions run

* fix: avoid duplicate task review writes

* fix: clear completed sessions before review guard

* fix: serialize session launch state

* test: cover completed sibling session states

* fix: bound completed execution markers

* fix: amortize completed execution marker cleanup

* fix: fail closed on stale session starts

* fix: ignore stale completed execution events

* test: cover stale completed tool calls

* fix: harden stale session state guards

* fix: handle terminal execution races

* fix: avoid duplicate terminal complete side effects

* fix: harden terminal execution race guards

* fix: guard task review reconciliation

* fix: handle late terminal complete side effects

* fix: align review-state test guards

* fix: fail closed on stale review bridges

* fix: reduce review reconcile complexity

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-30 02:56:46 +01:00
Carlos Florêncio f5dc6e2322 fix: persist task create last-used selections (#1550)
* fix: persist task create last-used selections

Record final task-create selections server-side.

Make dialog restore wait for backend settings before localStorage fallback.

Update pinned-action verification tests and split dockview rendering for lint.

* fix: address task create PR feedback

* fix: resolve task create review follow-ups

* test: cover task create service recording

* fix: address task create review regressions

* fix: avoid recording generated fresh branches

* fix: skip repo-only last-used task records

* fix: make task create settings updates atomic

* fix: clear stale task create cache

* fix: clear synced task create overlay

* fix: address task create review feedback

* fix: queue cached repository autopick

* fix: preserve partial task create settings

* fix: replace task create queued overlay

* fix: clear branch when recording repository

* test: cover task create queued payload

* test: remove unused user service helper

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-30 02:35:21 +01:00
Carlos Florêncio ef9807bd72 fix: coalesce ci auto-fix queue rounds (#1552)
* fix: coalesce ci auto-fix queue rounds

* fix: centralize ci auto-fix round cap

* fix: keep ci auto-fix state fresh

* fix: refine ci auto-fix round status

* fix: handle ci auto-fix exhaustion edge cases

* fix: reduce ci auto-fix dispatch complexity

* fix: refresh pending ci auto-fix before direct prompt

* fix: harden ci auto-fix queue replacement

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-30 01:19:52 +01:00
Carlos Florêncio bffbc8e96f ci: add harness file linter (#1549)
* ci: add harness file linter

* ci: address harness linter review feedback

* ci: cover codex harness config linting

* ci: tighten harness lint opt-ins

* ci: expand harness lint coverage

* ci: address harness linter review feedback

* ci: fix harness linter review followups

* ci: lint claude settings harness config

* ci: tighten harness linter coverage

* ci: fail malformed harness toml

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-30 00:25:34 +01:00
Carlos Florêncio f7d519db78 fix: inherit current task profile for mcp tasks (#1546)
* fix: inherit current task profile for mcp tasks

* fix: respect workflow-switched mcp task profiles

* test: cover mixed mcp task profile inheritance

* fix: tag reused workflow sessions

* fix: tag matching workflow sessions

* fix: inherit routed session launch metadata

* fix: harden mcp profile inheritance

* fix: preserve routed executor inheritance

* test: simplify workflow move provenance assertion

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-29 23:06:46 +01:00
Carlos Florêncio ec942540bc ci: harden action pinning lint (#1545)
* ci: harden action pinning lint

* refactor: extract dockview review dialog slot

* test: cover action pinning edge cases

* fix: reject dynamic workflow action sources

* fix: normalize quoted workflow action refs

* test: cover quoted unpinned action refs

---------

Co-authored-by: root <root@kandev.ts.net>
2026-06-29 21:42:57 +01:00
Dominik Kucharski 12a0d5172d fix: skip cleanup block when stop fails for terminal sessions (#1541) 2026-06-29 19:36:54 +01:00
Carlos Florêncio 7632f626c8 fix: focus changes panel for inactive task updates (#1542) 2026-06-29 19:24:51 +01:00
Carlos Florêncio 5ed975ddbf feat: redirect and toast when focused task is auto-deleted (#1544) 2026-06-29 19:10:08 +01:00
Clément Fiere c53b8f4bea ci: cargo audit + SHA-pin all GHA action refs + enforcement lint (#1539) 2026-06-29 19:09:22 +01:00
Carlos Florêncio f3b26dbc5a feat: support remote macos ssh hosts (#1534) 2026-06-29 19:06:33 +01:00
Carlos Florêncio bdbde9d12e fix: prevent automatic session tab pinning (#1538) 2026-06-29 18:59:47 +01:00
Carlos Florêncio cc4ddf8467 fix: show repo slugs on kanban cards (#1540) 2026-06-29 17:58:56 +01:00
Carlos Florêncio 11aef66123 fix: show loading states for task detail (#1536) 2026-06-29 15:26:19 +01:00
Carlos Florêncio 4ad1b9cb8b fix: show sidebar spinner for created boot sessions (#1537) 2026-06-29 15:24:22 +01:00
Carlos Florêncio 1cceeb3f2a fix: align ci chip with aggregate checks (#1535) 2026-06-29 15:23:30 +01:00
Carlos Florêncio 343fc8d38e docs: add debug log collection guide (#1533) 2026-06-29 14:18:15 +01:00
Carlos Florêncio d0a032fa60 fix: prefer main for worktree base branches (#1532) 2026-06-29 14:17:14 +01:00
github-actions[bot] 88b57108f4 release: 0.69.0 v0.69.0 2026-06-29 10:03:39 +00:00
Carlos Florêncio 7a43a5bfbe ci: build unsigned desktop artifacts without signing secrets (#1530) 2026-06-29 11:02:38 +01:00
Carlos Florêncio 831a15a9b7 fix: repair postgres schema migration coverage (#1529) 2026-06-29 09:35:40 +01:00
github-actions[bot] 73b89c2d65 release: 0.68.0 v0.68.0 2026-06-29 07:48:36 +00:00
Carlos Florêncio 9ce8b2ac49 fix: wait for task create last-used settings (#1524) 2026-06-29 08:47:26 +01:00
Carlos Florêncio 7205998fc8 fix: preserve nvm node path in service installs (#1527) 2026-06-29 08:46:02 +01:00
Carlos Florêncio 9fb48224f2 fix: improve macos desktop startup (#1525) 2026-06-28 22:42:08 +01:00
github-actions[bot] d6bb9ac6ec release: 0.67.0 v0.67.0 2026-06-28 19:37:13 +00:00
Carlos Florêncio 0f8da4ff28 fix: unblock release desktop and universal builds (#1522) 2026-06-28 20:35:59 +01:00
github-actions[bot] 7a7c398e12 release: 0.66.0 v0.66.0 2026-06-28 18:14:31 +00:00
Carlos Florêncio 14a5fb2c7f fix: support unsigned desktop releases (#1520) 2026-06-28 19:13:16 +01:00
Carlos Florêncio 5c4fab2bd2 fix: handle windows desktop runtime helper mode (#1519) 2026-06-28 18:04:24 +01:00
Carlos Florêncio 8ca17e0d6e fix: preserve pinned task sessions (#1517) 2026-06-28 16:10:04 +01:00
Carlos Florêncio adba21ee6b fix: resync queued state on mobile resume (#1514) 2026-06-27 19:01:18 +01:00
Carlos Florêncio cf8b760bb4 fix: improve mobile kanban controls (#1515) 2026-06-27 18:25:10 +01:00
Carlos Florêncio d065107337 fix: restore task create repo from settings (#1513) 2026-06-27 18:25:04 +01:00
Carlos Florêncio 7728ddb3bc fix: improve mobile chat input controls (#1477) 2026-06-27 16:11:39 +01:00