You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
`load_code_block_diffs_for_composer` — used by the single-tab path (#84)
23
+
24
+
### Changed
25
+
-**`GET /api/workspaces`** (`list_workspace_projects`) no longer performs a
26
+
global `bubbleId:%` scan; conversation presence is determined from
27
+
`fullConversationHeadersOnly` headers alone, and workspace assignment relies
28
+
on `composer_id_to_ws` (primary) plus `projectLayouts` from MRC (#84)
29
+
-**`assemble_workspace_tabs`** inner per-composer loop refactored into a shared
30
+
`_assemble_tab_from_composer_data` helper reused by `assemble_single_tab`; full
31
+
path behaviour is unchanged (#84)
32
+
33
+
### Deprecated
34
+
- Direct use of `GET /api/workspaces/<id>/tabs` (no `?summary=1`) from the workspace
35
+
UI on page load; the UI now calls `?summary=1` for first paint and lazy-fetches
36
+
individual tabs. The full-assembly endpoint remains available for export,
37
+
search, and backward-compatible consumers (planned removal: post-1.0) (#84)
38
+
39
+
11
40
-**Web UI** — browse and search all Cursor AI workspaces; conversation view with syntax-highlighted code blocks, dark/light mode, and bookmarkable chat URLs (#63)
12
41
-**Export formats** — one-click export of chats as Markdown, HTML, PDF, JSON, and CSV from the web UI (#63)
13
42
-**CLI export** (`cursor-chat-export` / `scripts/export.py`) — zip archive or individual Markdown files with YAML frontmatter; incremental mode (`--since last`) preserves state across runs (#63, #42, #61)
0 commit comments