Skip to content

fix(publish): allow lockfile reconciliation for pinned-capture install - #96

Merged
LukasHirt merged 1 commit into
mainfrom
fix/publish-pinned-capture-install-no-frozen-lockfile
Jul 23, 2026
Merged

fix(publish): allow lockfile reconciliation for pinned-capture install#96
LukasHirt merged 1 commit into
mainfrom
fix/publish-pinned-capture-install-no-frozen-lockfile

Conversation

@LukasHirt

Copy link
Copy Markdown
Owner

Summary

  • pinExtensionSourceToRelease pins one extension's package.json back to an old release's dependency versions, but the workspace-root pnpm-lock.yaml still reflects the current default branch.
  • pnpm resolves against the root lockfile regardless of cwd, so for any release but the latest, pnpm install --frozen-lockfile in prepareOCISForCapture fails with ERR_PNPM_OUTDATED_LOCKFILE — deterministically, not flaky, so the fresh-spec retry loop just burns attempts.
  • Switches that one install to --no-frozen-lockfile. Safe because this node_modules is throwaway (never committed, wiped by the next EnsureCheckout hard reset).

Test plan

  • go build ./...
  • Run extctl publish against an extension with an older, non-latest release and confirm screenshot capture no longer fails on pnpm install.

pinExtensionSourceToRelease moves an extension's package.json back to an
old release's dependency versions, but the root pnpm-lock.yaml still
reflects the current default branch. For any release but the latest,
pnpm install --frozen-lockfile then fails with ERR_PNPM_OUTDATED_LOCKFILE.
The node_modules produced here is throwaway, so let pnpm reconcile.

Signed-off-by: Lukas Hirt <info@hirt.cz>
@LukasHirt LukasHirt self-assigned this Jul 23, 2026
@LukasHirt
LukasHirt enabled auto-merge (squash) July 23, 2026 18:15
@LukasHirt
LukasHirt merged commit 19f476b into main Jul 23, 2026
3 checks passed
@LukasHirt
LukasHirt deleted the fix/publish-pinned-capture-install-no-frozen-lockfile branch July 23, 2026 18:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant