-
Notifications
You must be signed in to change notification settings - Fork 155
[VALIDATION-5] Lockfile portability: absolute paths leak across machines #956
Copy link
Copy link
Closed
Labels
area/docs-sitedocs/src/content (Starlight), README, doc generation.docs/src/content (Starlight), README, doc generation.area/lockfileLockfile schema, per-file provenance, integrity hashes, drift detection.Lockfile schema, per-file provenance, integrity hashes, drift detection.priority/highShips in current or next milestoneShips in current or next milestonestatus/acceptedDirection approved, safe to start work.Direction approved, safe to start work.status/triagedInitial agentic triage complete; pending maintainer ratification (silence = approval).Initial agentic triage complete; pending maintainer ratification (silence = approval).test/triage-validationMock issue created to validate the triage-panel workflow. Auto-closed after run.Mock issue created to validate the triage-panel workflow. Auto-closed after run.theme/portabilityOne manifest, every target. Multi-target deploy, marketplace, packaging, install.One manifest, every target. Multi-target deploy, marketplace, packaging, install.type/bugSomething does not work as documented.Something does not work as documented.
Milestone
Metadata
Metadata
Assignees
Labels
area/docs-sitedocs/src/content (Starlight), README, doc generation.docs/src/content (Starlight), README, doc generation.area/lockfileLockfile schema, per-file provenance, integrity hashes, drift detection.Lockfile schema, per-file provenance, integrity hashes, drift detection.priority/highShips in current or next milestoneShips in current or next milestonestatus/acceptedDirection approved, safe to start work.Direction approved, safe to start work.status/triagedInitial agentic triage complete; pending maintainer ratification (silence = approval).Initial agentic triage complete; pending maintainer ratification (silence = approval).test/triage-validationMock issue created to validate the triage-panel workflow. Auto-closed after run.Mock issue created to validate the triage-panel workflow. Auto-closed after run.theme/portabilityOne manifest, every target. Multi-target deploy, marketplace, packaging, install.One manifest, every target. Multi-target deploy, marketplace, packaging, install.type/bugSomething does not work as documented.Something does not work as documented.
Type
Projects
Status
Done
Summary
After running
apm installin a fresh clone, the lockfile uses absolute paths from my home directory (e.g.,/Users/jdoe/.cache/apm/...) instead of relative paths. Sharing the lockfile across machines becomes impossible -- a teammate getspath not foundon every entry.Reproduction
git clone <repo>; cd <repo>apm install-- generatesapm.lock.yamlwith absolute resolved pathsapm installreads the absolute path, failsExpected
Lockfile entries should reference repo-relative or cache-key-relative paths so the file is portable.
Workaround
Manually post-process the lockfile with sed before committing. Not great.
Environment