Changelog - 2026-10-17
Auto artifacts root at the entry module
Bug Fix New FeatureIn one line. Auto artifacts scan the package of the module you run, not the directory you ran it from, and a process that loads several applications gives each one ArtifactGroup.application().
What changed
- The root is the entry module's package.
@venizia/ignis-boot/autoused<working directory>/src, so an IDE runner,bun testfrom a repository root, or a process started elsewhere failed withENOENTat registration. It now uses thesrcbeside thepackage.jsonofBun.main; the working directory only when there is no entry file (bun -e). A missingsrcis a clear error naming the fix. ArtifactGroup.application()(@venizia/ignis-kernel, re-exported by@venizia/ignis) covers every decorated class of the package it is called from.AutoArtifactsis one module per process;application()is per call site, so several applications loaded into one process each register their own.IgnisArtifactsPlugininlines it in a binary.
Who is affected
- Applications using
AutoArtifactsstarted from another directory. Upgrade; nothing else to change. - Harnesses or hosts that load several applications into one process. Use
artifacts: [ArtifactGroup.application(), ...]in each application instead ofAutoArtifacts.
Files: packages/boot/src/bun/plugin.ts, packages/kernel/src/base/applications/artifact-group.ts