• Will Chen's avatar
    Make undo more robust by using sourceCommitHash (#2015) · 72050d9e
    Will Chen 提交于
    <!-- CURSOR_SUMMARY -->
    > [!NOTE]
    > Strengthens undo to work even when an assistant message produced no
    code.
    > 
    > - Use the last assistant message’s `sourceCommitHash` for
    `revertVersion` and pass `currentChatMessageId` to prune messages
    at/after the triggering user message; refresh chat state
    > - Backend `revert-version` now conditionally commits only if there are
    staged changes and supports message deletion via `gte` with
    `currentChatMessageId`, falling back to commit-hash-based pruning
    > - Extend IPC types: add `Message.sourceCommitHash` and
    `RevertVersionParams.currentChatMessageId`
    > - Add e2e test and fixture for undo after a no-code assistant response
    > 
    > <sup>Written by [Cursor
    Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
    a97e153d3cb703461b66bb7eaec28b4c7ae32cc4. This will update automatically
    on new commits. Configure
    [here](https://cursor.com/dashboard?tab=bugbot).</sup>
    <!-- /CURSOR_SUMMARY -->
    
    
    
    
    
    
    
    <!-- This is an auto-generated description by cubic. -->
    ---
    ## Summary by cubic
    Make undo reliable by reverting to the message’s source commit instead
    of relying on a previous assistant message or the chat’s initial state.
    This fixes undo when an assistant reply contains no code.
    
    - **Bug Fixes**
    - Use current message’s sourceCommitHash for revertVersion and pass
    currentChatMessageId to prune messages at/after the triggering user
    message; then refresh chat.
    - Extend Message type with sourceCommitHash and show a warning if it’s
    missing.
    - Add e2e test for undo after a no-code assistant response with a new
    fixture.
    
    <sup>Written for commit a97e153d3cb703461b66bb7eaec28b4c7ae32cc4.
    Summary will update automatically on new commits.</sup>
    
    <!-- End of auto-generated description by cubic. -->
    72050d9e
名称
最后提交
最后更新
.cursor/rules 正在载入提交数据...
.devcontainer 正在载入提交数据...
.github 正在载入提交数据...
.husky 正在载入提交数据...
assets 正在载入提交数据...
docs 正在载入提交数据...
drizzle 正在载入提交数据...
e2e-tests 正在载入提交数据...
packages/@dyad-sh 正在载入提交数据...
scaffold 正在载入提交数据...
scripts 正在载入提交数据...
shared 正在载入提交数据...
src 正在载入提交数据...
testing 正在载入提交数据...
tools 正在载入提交数据...
worker 正在载入提交数据...
workers/tsc 正在载入提交数据...
.cursorignore 正在载入提交数据...
.env.example 正在载入提交数据...
.eslintrc.json 正在载入提交数据...
.gitattributes 正在载入提交数据...
.gitignore 正在载入提交数据...
.oxlintrc.json 正在载入提交数据...
.prettierignore 正在载入提交数据...
.prettierrc 正在载入提交数据...
AGENTS.md 正在载入提交数据...
CONTRIBUTING.md 正在载入提交数据...
LICENSE 正在载入提交数据...
README.md 正在载入提交数据...
SECURITY.md 正在载入提交数据...
biome.json 正在载入提交数据...
components.json 正在载入提交数据...
drizzle.config.ts 正在载入提交数据...
forge.config.ts 正在载入提交数据...
forge.env.d.ts 正在载入提交数据...
index.html 正在载入提交数据...
merge.config.ts 正在载入提交数据...
package-lock.json 正在载入提交数据...
package.json 正在载入提交数据...
playwright.config.ts 正在载入提交数据...
tsconfig.app.json 正在载入提交数据...
tsconfig.json 正在载入提交数据...
tsconfig.node.json 正在载入提交数据...
vite.main.config.mts 正在载入提交数据...
vite.preload.config.mts 正在载入提交数据...
vite.renderer.config.mts 正在载入提交数据...
vite.worker.config.mts 正在载入提交数据...
vitest.config.ts 正在载入提交数据...