Idea detail
first_paint_startup
reqlan rq/extension/host/activation.rq:39
Summary
The activity-bar HTML shell is assigned by activity-bar-webview-provider.ts after one event-loop turn ( retry once on invalid-state ).
Host `postMessage` starts only after the webview `ready` handshake; disposed / invalid-state errors are swallowed by safe-webview-post.ts.
Its Svelte app installs the host message listener before mount, then sends the one-shot `ready` handshake from a task queued after its first animation frame.
startup-gate.ts resolves that handshake once; `IndexService.activate` then discovers bases and syncs. If no view opens, a bounded three-second fallback starts the index without any visible first paint to contend with.
Index open / sync requires the host-matching core engine ( rusqlite ); missing `.node` fails activate.
Windows claim / dispose races: webview_claim_race.
Navigation
Attributes
Ancestor context
No ancestor chain recorded.
Outbound references
Inbound references
| Kind | Idea | Path | Snippet |
|---|---|---|---|
| references | activation_sequence | reqlan rq/extension/host/activation.rq | first_paint_startup |
| references | background_startup | reqlan rq/extension/host/activation.rq | first_paint_startup |
| references | analytical_submodule_activation | reqlan rq/extension/host/activation.rq | first_paint_startup |
| references | extension_installation | reqlan rq/extension/host/installation.rq | first_paint_startup |
| references | first_paint_contract | reqlan rq/extension/host/startup-performance.rq | first_paint_startup |
| references | nonblocking_index | reqlan rq/indexer/indexer.rq | first_paint_startup |
| references | extension_startup_sequence | reqlan rq/indexer/sequencing.rq | first_paint_startup |
Unresolved references
| Kind | Idea | Path | Snippet |
|---|---|---|---|
| None | |||
Local graph
Initialising graph…