FN-7670: document negative result of extending engine-core pre-bundle to @fusion/engine relative-import graph
Prototyped extending the @fusion/core pre-bundle alias lever to @fusion/engine's relative-import production graph reached by the 18 gate files, but an A/B showed no clear win over the @fusion/core-only bundle, so the change was not landed and only the rationale is recorded. - Added an FNXC:EngineTests comment block in packages/engine/vitest.config.ts documenting the FN-7670 prototype (171 first-party files → 35 output files via esbuild multi-entry splitting) - Recorded the negative A/B result: byte-size growth of 14 separate large root bundles offset per-file-dispatch savings, with no clear win beyond host run-to-run noise - Left the vitest alias wiring unchanged at the @fusion/core-only bundle state, pointing future attempts to FN-7670's task docs for full analysis and to consider a single combined engine-graph entry instead of 14 separate root entries Files changed: packages/engine/vitest.config.ts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) Fusion-Task-Id: FN-7670 Fusion-Task-Lineage: efd27f94-a6c4-49c7-a78e-50213fd42a24 Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
This commit is contained in:
@@ -87,6 +87,25 @@ export default defineConfig({
|
||||
dead-locking the core↔engine circular-import DI
|
||||
(`void import("@fusion/core").then(setCreateFnAgent...)` in
|
||||
packages/engine/src/index.ts) for no measured gain.
|
||||
|
||||
FNXC:EngineTests 2026-07-08-06:20:
|
||||
FN-7670 prototyped extending this same lever to the @fusion/engine
|
||||
RELATIVE-import production graph (`../merger.js`, `../hold-release.js`,
|
||||
`../scheduler.js`, `../workflow-node-handlers.js`, ...) that the 18 gate
|
||||
files reach directly — NOT the barrel above, which stays untouched per
|
||||
the paragraph above regardless. It built a fully working, coverage-
|
||||
parity-preserving, mock-safe bundle (171 first-party files → 35 output
|
||||
files via esbuild multi-entry splitting) but an interleaved, host-load-
|
||||
controlled A/B showed NO clear incremental wall-time win over this
|
||||
@fusion/core-only bundle (delta within this host's own ~2.5x run-to-run
|
||||
noise band) — the byte-size growth of 14 separate large root bundles
|
||||
(e.g. one alone reached 1.3MB) offset the per-file-dispatch savings that
|
||||
made the single-file @fusion/core bundle above pay off. NOT landed; the
|
||||
wiring was reverted to this @fusion/core-only state. See FN-7670's task
|
||||
docs document for the full closure/mock-boundary analysis, the A/B
|
||||
methodology and data, and the negative-result rationale, before
|
||||
re-attempting this lever with a different bundle shape (e.g. a single
|
||||
combined engine-graph entry rather than 14 separate root entries).
|
||||
*/
|
||||
alias: {
|
||||
"@fusion/core": resolve(__dirname, "../core/.gate-bundle/core.mjs"),
|
||||
|
||||
Reference in New Issue
Block a user