mirror of
https://github.com/getpaseo/paseo.git
synced 2026-10-27 03:32:55 +00:00
* fix(server): keep plugin compilation off the daemon event loop TypeScript import validation runs in esbuild callbacks on the daemon thread. Isolate preparation and compilation behind one bounded compiler queue, returning bundles and metadata only after runtime-boundary validation. Recheck lifecycle intent before executing a compiled plugin. * fix(server): reuse the compiler worker during plugin build batches Amortize TypeScript startup across built-ins and queued builds, then retire the worker after one idle second. Carry preparation environments explicitly across worker reuse. Keep dependency-backed example coverage with its existing app fixture. * fix(server): retire the compiler worker after build errors A failed parallel target can leave the other target compiling. Await worker termination before the next queued request instead of reusing an isolate with unfinished build work. * fix(server): preserve compiler error metadata across workers * test(server): isolate plugin validation in the loop-gap fixture Exercise erased TypeScript syntax with a small runtime bundle so parser validation, not multi-MiB result transfer, determines the CI fixture. Keep the 20 ms gate and report event-loop active/idle time for scheduler diagnostics. Resolve the development loader at module initialization. * test(server): probe event-loop turns during plugin compilation Windows timer wake-up lateness measured 22 ms while the loop was idle for 21.96 ms. Use check-phase callbacks to measure loop availability, retaining the raw 20 ms limit and the failing base-branch reproduction. * test: run plugin responsiveness probe in serial integration suite * test: diagnose compiler probe gaps with per-thread CPU readings * test: distinguish compiler CPU blocking from runner scheduling * test: classify the largest compiler CPU accounting window * test: isolate compiler responsiveness from harness GC and idle accounting * test: measure callback blocking with a high-resolution clock