• Will Chen's avatar
    Turbo edits v2 (#1653) · a8f3c973
    Will Chen 提交于
    Fixes #1222 #1646 
    
    TODOs
    - [x] description?
    - [x] collect errors across all files for turbo edits
    - [x] be forgiving around whitespaces
    - [x] write e2e tests
    - [x] do more manual testing across different models
    
    
    
    <!-- CURSOR_SUMMARY -->
    ---
    
    > [!NOTE]
    > Adds Turbo Edits v2 search-replace flow with settings/UI selector,
    parser/renderer, dry-run validation + fallback, proposal integration,
    and comprehensive tests; updates licensing.
    > 
    > - **Engine/Processing**:
    > - Add `dyad-search-replace` end-to-end: parsing
    (`getDyadSearchReplaceTags`), markdown rendering (`DyadSearchReplace`),
    and application (`applySearchReplace`) with dry-run validation and
    fallback to `dyad-write`.
    > - Inject Turbo Edits v2 system prompt; toggle via
    `isTurboEditsV2Enabled`; disable classic lazy edits when v2 is on.
    > - Include search-replace edits in proposals and full-response
    processing.
    > - **Settings/UI**:
    > - Introduce `proLazyEditsMode` (`off`|`v1`|`v2`) and helper selectors;
    update `ProModeSelector` with Turbo Edits and Smart Context selectors
    (`data-testid`s).
    > - **LLM/token flow**:
    > - Construct system prompt conditionally; update token counting and
    chat stream to validate and repair search-replace responses.
    > - **Tests**:
    > - Add unit tests for search-replace processor; e2e tests for Turbo
    Edits v2 and options; fixtures and snapshots.
    > - **Licensing/Docs**:
    > - Add `src/pro/LICENSE` (FSL 1.1 ALv2 future), update root `LICENSE`
    and README license section.
    > - **Tooling**:
    > - Update `.prettierignore`; enhance test helpers (selectors, path
    normalization, snapshot filtering).
    > 
    > <sup>Written by [Cursor
    Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
    7aefa02bfae2fe22a25c7d87f3c4c326f820f1e6. This will update automatically
    on new commits. Configure
    [here](https://cursor.com/dashboard?tab=bugbot).</sup>
    <!-- /CURSOR_SUMMARY -->
    a8f3c973
名称
最后提交
最后更新
..
AttachmentsList.tsx 正在载入提交数据...
ChatActivity.tsx 正在载入提交数据...
ChatError.tsx 正在载入提交数据...
ChatErrorBox.tsx 正在载入提交数据...
ChatHeader.tsx 正在载入提交数据...
ChatInput.tsx 正在载入提交数据...
ChatMessage.tsx 正在载入提交数据...
CodeHighlight.tsx 正在载入提交数据...
DeleteChatDialog.tsx 正在载入提交数据...
DragDropOverlay.tsx 正在载入提交数据...
DyadAddDependency.tsx 正在载入提交数据...
DyadAddIntegration.tsx 正在载入提交数据...
DyadCodebaseContext.tsx 正在载入提交数据...
DyadDelete.tsx 正在载入提交数据...
DyadEdit.tsx 正在载入提交数据...
DyadExecuteSql.tsx 正在载入提交数据...
DyadMarkdownParser.tsx 正在载入提交数据...
DyadMcpToolCall.tsx 正在载入提交数据...
DyadMcpToolResult.tsx 正在载入提交数据...
DyadOutput.tsx 正在载入提交数据...
DyadProblemSummary.tsx 正在载入提交数据...
DyadRead.tsx 正在载入提交数据...
DyadRename.tsx 正在载入提交数据...
DyadSearchReplace.tsx 正在载入提交数据...
DyadThink.tsx 正在载入提交数据...
DyadTokenSavings.tsx 正在载入提交数据...
DyadWebSearch.tsx 正在载入提交数据...
DyadWebSearchResult.tsx 正在载入提交数据...
DyadWrite.tsx 正在载入提交数据...
FileAttachmentDropdown.tsx 正在载入提交数据...
HomeChatInput.tsx 正在载入提交数据...
LexicalChatInput.tsx 正在载入提交数据...
MessagesList.tsx 正在载入提交数据...
PromoMessage.tsx 正在载入提交数据...
RenameChatDialog.tsx 正在载入提交数据...
SelectedComponentDisplay.tsx 正在载入提交数据...
TokenBar.tsx 正在载入提交数据...
VersionPane.tsx 正在载入提交数据...
monaco.ts 正在载入提交数据...
stateTypes.ts 正在载入提交数据...
types.d.ts 正在载入提交数据...