Commit ec353c4
Fix graph UX bugs + parallelize entity extraction
Graph UI:
- Side panel now closable (X button, click on canvas pane, ESC via reset)
- Click same entity twice to collapse instead of stack
- Memory node clicks open detail panel with full content + linked entities + neighbors
- Reset view button clears all expansions
- Dedupe nodes/edges so re-expanding doesn't double up
- Filter pills now visually muted when inactive (opacity 0.45)
- Auto-clear status messages after 6s
- Empty/filtered/loading states use the dashboard serif typography
- Canvas re-centers on clicked node so expanded children stay visible
API perf:
- backfill_entities_for_user now parallelizes with asyncio.gather + semaphore(5)
100-memory backfill: ~100s sequential -> ~20s parallel
- _run_graph_extraction (per-conversation) parallelizes the same way (sem 3)
Dashboard fetch hygiene:
- Add AbortController-based request timeout (30s default, 5min for /graph/extract
and /memories/import). Browser no longer hangs forever on slow endpoints.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>1 parent 1ebf2d4 commit ec353c4
4 files changed
Lines changed: 352 additions & 98 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
152 | 152 | | |
153 | 153 | | |
154 | 154 | | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
159 | 162 | | |
160 | | - | |
161 | | - | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
162 | 168 | | |
163 | 169 | | |
164 | 170 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
1 | 2 | | |
2 | 3 | | |
3 | 4 | | |
4 | 5 | | |
5 | 6 | | |
| 7 | + | |
| 8 | + | |
6 | 9 | | |
7 | 10 | | |
8 | 11 | | |
| |||
186 | 189 | | |
187 | 190 | | |
188 | 191 | | |
| 192 | + | |
189 | 193 | | |
190 | 194 | | |
191 | 195 | | |
| |||
198 | 202 | | |
199 | 203 | | |
200 | 204 | | |
201 | | - | |
202 | | - | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | | - | |
208 | | - | |
209 | | - | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
0 commit comments