Repository navigation
Commit f040a1e
committed
perf(lsp): completion serves lock-free — never queues behind the cold build
Device logs: completion requests landing during the background rebuild waited
on stateLock (3s+ → sora dropped the popup). completion()/hover() now read the
atomically-published snapshot facade without the lock; mutations keep the lock.
setWorkspaceMetadata also moves its heavy rebuild to the background thread and
bumps the generation so the running/next background build picks up the new
metadata (the attempts-loop re-run already handles that).1 parent 13e6f78 commit f040a1e
1 file changed
Lines changed: 17 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
374 | 374 | | |
375 | 375 | | |
376 | 376 | | |
377 | | - | |
378 | | - | |
379 | | - | |
380 | | - | |
381 | | - | |
382 | | - | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
383 | 394 | | |
384 | 395 | | |
385 | 396 | | |
| |||
0 commit comments