1. 15 2月, 2026 3 次提交
    • Will Chen's avatar
      fix(e2e): deflake context_limit_banner, attach_image, and prompt_libr… (#2725) · 41eb8e34
      Will Chen 提交于
      …ary tests
      
      - context_limit_banner: increase banner visibility timeout from MEDIUM
      to LONG since token counting IPC fires asynchronously after streaming
      ends
      - attach_image: wait for file card button to render before taking aria
      snapshot in the upload-to-codebase test
      - prompt_library: replace flaky toMatchAriaSnapshot with explicit
      assertions (toBeVisible, toContainText, getByRole) since Chrome's
      accessibility tree non-deterministically merges heading and paragraph
      text
      <!-- devin-review-badge-begin -->
      
      ---
      
      <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/2725"
      target="_blank">
        <picture>
      <source media="(prefers-color-scheme: dark)"
      srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1">
      <img
      src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1"
      alt="Open with Devin">
        </picture>
      </a>
      <!-- devin-review-badge-end -->
      Co-authored-by: 's avatarclaude[bot] <41898282+claude[bot]@users.noreply.github.com>
      Co-authored-by: 's avatarClaude Opus 4.6 <noreply@anthropic.com>
      41eb8e34
    • Mohamed Aziz Mejri's avatar
      Allow users to queue messages (#2120) · 11b33efe
      Mohamed Aziz Mejri 提交于
      <!-- This is an auto-generated description by cubic. -->
      ---
      ## Summary by cubic
      Allow users to queue multiple messages while a response is streaming.
      Queued items are visible, editable, reorderable, and auto-send
      one-by-one only after the current stream ends successfully.
      
      - **New Features**
      - Per-chat queue state via queuedMessagesByIdAtom and
      streamCompletedSuccessfullyByIdAtom.
      - QueuedMessagesList to view, edit, reorder, and delete items; shows
      status and attachment indicator.
      - ChatInput queues while streaming, supports editing queued items,
      clears input/attachments only on successful queue/send, and clears all
      queued on cancel.
      - useStreamChat exposes queuedMessages and
      queue/update/remove/reorder/clear APIs; processes the next item only
      after a confirmed successful end.
      
      - **Bug Fixes**
      - Eliminated race conditions by gating processing on successful onEnd
      (wasCancelled-aware), fixing a stale firstMessage closure, and clearing
      the queue before cancel IPC to avoid rapid-response races.
      - Preserved input and attachments when queueMessage fails; prevented
      dropping newly queued messages; cleared editing state when the edited
      queued item is deleted.
      
      <sup>Written for commit fb431f55b3a24284058062a6ced97ac21f825952.
      Summary will update on new commits.</sup>
      
      <!-- End of auto-generated description by cubic. -->
      
      <!-- CURSOR_SUMMARY -->
      ---
      
      > [!NOTE]
      > Introduces queued message support so users can submit another prompt
      while a response is streaming; the queued prompt auto-sends only after
      the current stream ends successfully.
      > 
      > - Adds `QueuedMessage`, `queuedMessageByIdAtom`, and
      `streamCompletedSuccessfullyByIdAtom` to track one queued message and
      confirmed stream completion per chat
      > - Extends `useStreamChat` with queue APIs (`queuedMessage`,
      `queueMessage`, `clearQueuedMessage`) and processing gated by `onEnd`
      success; resets/sets completion flags; warns on multiple queue attempts
      > - Updates `ChatInput` to queue while streaming, clear on successful
      queue, and clear queued message on cancel; uses `shouldProcessQueue`
      > - Updates `MessagesList` to display queued prompt with status and a
      Clear action
      > - Expands IPC `ChatResponseEnd` schema with optional `wasCancelled`;
      send this flag on cancel in `chat_stream_handlers`
      > - Adds e2e test `queued_message.spec.ts` verifying queuing and
      auto-send behavior
      > 
      > <sup>Written by [Cursor
      Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
      62ed2131f7f9ee253b2542d35307459af504d6d0. This will update automatically
      on new commits. Configure
      [here](https://cursor.com/dashboard?tab=bugbot).</sup>
      <!-- /CURSOR_SUMMARY -->
      
      <!-- devin-review-badge-begin -->
      
      ---
      
      <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/2120">
        <picture>
      <source media="(prefers-color-scheme: dark)"
      srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1">
      <img
      src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1"
      alt="Open with Devin">
        </picture>
      </a>
      <!-- devin-review-badge-end -->
      
      ---------
      Co-authored-by: 's avatarClaude <noreply@anthropic.com>
      11b33efe
    • Will Chen's avatar
      ci: route deflake E2E workflow to PAT token (#2726) · a3758157
      Will Chen 提交于
      ## Summary
      - Update deflake E2E workflow permissions to use explicit PAT token
      secrets instead of default GITHUB_TOKEN.
      - Reduce workflow repository permissions to empty set and align token
      usage for install and Claude action steps.
      - Maintain existing deflake behavior while removing default
      token-dependent permission requirements.
      
      ## Test plan
      - npm run fmt
      - npm run lint:fix
      - npm run ts
      
      🤖 Generated with [Claude Code](https://claude.com/claude-code)
      <!-- devin-review-badge-begin -->
      
      ---
      
      <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/2726"
      target="_blank">
        <picture>
      <source media="(prefers-color-scheme: dark)"
      srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1">
      <img
      src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1"
      alt="Open with Devin">
        </picture>
      </a>
      <!-- devin-review-badge-end -->
      a3758157
  2. 14 2月, 2026 11 次提交
  3. 13 2月, 2026 26 次提交