Where does the bug appear (feature/product)?
Cursor IDE
Describe the Bug
Publishing a shared canvas fails with the toast error Canvas file not found, even though the canvas file exists on disk, Preview renders correctly, and the canvas session is registered in Cursor logs.
This happens on Windows when a canvas is stored under the normal Cursor-managed path:
%USERPROFILE%\.cursor\projects\<project-slug>\canvases\*.canvas.tsx
Preview renders the full canvas content. Clicking Publish within a few seconds still fails with the same error.
Steps to Reproduce
- Open any workspace in Cursor 3.19.7 on Windows 11.
- Create or open a canvas via agent (stored under
.cursor/projects/.../canvases/*.canvas.tsx). - Open the canvas (file link, Open Canvas command, or canvas tab).
- Confirm Preview renders the canvas content.
- Click Publish in the canvas toolbar within a few seconds.
Actual: Toast shows Canvas file not found.
Also tried:
- Publishing from the originating chat
- Closing extra Canvas tabs first
- Re-surfacing the canvas via agent write
- Publishing immediately after open (within 2 seconds)
Log pattern (repeats every attempt):
Registered canvaswith correct absolute pathCanvas session acquiredCanvas opened successfullywithviewMode: glass(no beside-chat open logged)Canvas destroyedwithin ~7–37 seconds- Publish fails even while Preview still shows cached render
Expected Behavior
Publish should upload the canvas and return a shareable link. The canvas file should resolve from the registered path while the session is active.
Operating System
Windows 10/11
Version Information
3.19.7 (Windows)
Additional Information
Related: Similar reports exist for canvas publish failures on Windows with Glass/standalone view mode.
Secondary symptom: Canvas card does not persist in chat UI after agent creates canvas — only a markdown file link remains. Logs show one Canvas surfaced event at creation.
Hypothesis (for Cursor team): Publish may require beside-chat canvas binding; all opens log viewMode: glass. Session may be destroyed before publish resolves the file path.
Does this stop you from using Cursor
No - Cursor works, but with this issue