Installed plugins get real files instead of symlinks, with unsafe links removed.
What's wrong with this entry?
When a plugin is copied into the versioned cache, a new pass walks it and turns symlinks into real copies. Links that dangle, escape the plugin root, form an ancestor cycle, point at something other than a regular file, or use a reserved top-level name are removed instead. If the plugin directory is read-only the pass logs and leaves the links alone rather than failing the install.
- node_modules links are re-checked after conversion.
- The outcome is written to a
.links_materializedmarker file holding the CLI version and the materialized, removed and failed counts. - Only some install paths invoke the pass; the conditions that select them sit outside the copy routine.
materializeLinks: ${e}: cannot write (${T}), leaving links in place
Strings lifted out of the shipped bundle, so the claim above can be checked against them.