Cursor Update restart rewrites open/workspace source files with identical content but new mtime (breaks Unreal/mtime-based builds)

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

After applying a Cursor update (which restarts Cursor), multiple source files in my workspace had their LastWriteTime (mtime) refreshed while file content hashes stayed identical.
This is a serious problem for build systems that invalidate caches based on mtime rather than content hash — notably Unreal Build Tool (UBT). A single Cursor update restart caused thousands of unnecessary compile actions (3000–5000) even though no source content changed.

Steps to Reproduce

  1. Open a large C++ workspace (Unreal Engine tree) with several Engine source files open / tracked.
  2. Ensure a full compile has already completed (build graph is warm).
  3. Click Cursor’s in-app Update and allow Cursor to restart.
  4. Observe file mtimes on previously open/hot source files.

Expected Behavior

Restarting after an update should not rewrite or touch source file mtimes unless content actually changed.

Operating System

Windows 10/11

Version Information

  • Cursor: 3.10.17
  • OS: Windows 10.0.26100

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey there!

This is a known issue we’re working on: on launch (and an update forces a launch), Cursor can re-write some files to disk with identical content but a fresh modification time, which is what trips mtime-based build systems like UBT into rebuilding.

The most common trigger is leftover pending AI/agent edits from a previous session being restored and re-saved on the next launch. Until the fix ships, the most reliable workaround is to clear those before you quit or update:

  1. Open your most recent Agent/Composer changes and Keep or Discard all pending edits so nothing is left in a “to review” state.
  2. Then quit or apply the update.

Heads-up: turning off files.autoSave / files.hotExit on its own doesn’t stop this particular path, so don’t rely on those alone.

If you still see mtimes changing after clearing all pending edits, reply here and I’ll dig into your specific case.