Printable idea sheet
development_bundle_freshness
reqlan rq/extension/startup-performance.rq:82
F5 executes `package.json.main` ( `out/extension/main.cjs` ), not TypeScript source.
`out/`, generated webview media, and copied syntaxes are gitignored, so launching without a build can run missing or stale artifacts even when source already contains the fix.
`.vscode/launch.json` therefore uses a deterministic pre-launch task that invokes the extension build orchestrator directly; root `pnpm run build:ext` delegates to the same script.
The task content-fingerprints Langium and physics generation, each webview, packaging media, and extension-host / language-server output; `tsc -b` retains project-reference incrementality. Unchanged artifacts are verified and skipped before the development host opens.
Watch mode remains useful during iteration, but concurrent watchers do not restart an already-running extension host or language-server child; stop and start F5 after host / server changes.
launch.json
tasks.json
Status: done
Interactive page: development_bundle_freshness