Context
Currently, the webui-node-modules task in taskfile.yaml performs hoisting assertions at build time using test ! -d checks to verify that npm has fully hoisted all workspace packages to the root node_modules directory (lines 382-383):
- for: ["client", "common", "server"]
cmd: "test ! -d '{{.G_WEBUI_SRC_DIR}}/{{.ITEM}}/node_modules'"
These assertions ensure that peer dependency conflicts haven't forced npm to create per-workspace node_modules directories.
Proposed Enhancement
Move these hoisting verification checks into a separate dep:lock task that runs in a CI workflow, similar to the existing Rust Cargo.lock verification (see deps:lock:check-rust task and the clp-rust-checks workflow).
Benefits
- Separates deterministic dependency validation from project build steps
- Aligns with the existing pattern established for Rust dependency lock verification
- Keeps CI workflows focused on validation tasks
- Avoids unnecessary checks during local development builds
References
Context
Currently, the
webui-node-modulestask intaskfile.yamlperforms hoisting assertions at build time usingtest ! -dchecks to verify that npm has fully hoisted all workspace packages to the root node_modules directory (lines 382-383):These assertions ensure that peer dependency conflicts haven't forced npm to create per-workspace node_modules directories.
Proposed Enhancement
Move these hoisting verification checks into a separate
dep:locktask that runs in a CI workflow, similar to the existing Rust Cargo.lock verification (seedeps:lock:check-rusttask and theclp-rust-checksworkflow).Benefits
References