docs(Dockerfile): record the frozen-graph gap where the gap is - #16
Merged
Conversation
The builder stage's `pnpm install` resolves the generated instance's transitive graph fresh at image-build time — release.lock.frozen-graph forbids precisely that, because the published artifact's dependency graph was then never the graph anything tested and can differ between two builds of one source. This was tracked in a temporary publication runbook that is about to be deleted. A backlog entry outliving its file is how a known gap becomes an unknown one, so it moves to the line it describes: a reader of this stage now learns it from the stage. The note also says why it is not closable here — moving the resolution a few lines earlier into the gen stage keeps it inside the release build — and why it waits for the next version cut: that is when publish-images actually runs, so a mistake in the restructure surfaces immediately rather than sitting in a path nothing exercises. Landing it earlier would repeat provin.oss's quickstart §2f: documented, unexecuted, and wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The builder stage's
pnpm installresolves the generated instance's transitivegraph fresh, at image-build time.
release.lock.frozen-graphforbidsexactly that: the published artifact's dependency graph was then never the graph
anything tested, and it can differ between two builds of one source.
--dplaax-module-refnow pins the git deps to a commit (enforced since #14),but their own npm dependencies are still resolved in this stage.
This was tracked in a temporary publication runbook that is about to be
deleted. A backlog entry outliving its file is how a known gap becomes an
unknown one — so it moves to the line it describes.
What the note says beyond "TODO"
pnpm --lockfile-onlyin the gen stage justmoves the fresh resolution a few lines earlier, still inside the release
build. The fix generates the lockfile before the image build, proves it with
--frozen-lockfile+ the consumer smoke, then hands that exact instance andlockfile to
docker build— a change to the publish workflow, not this stage.publish-imagesactually runs, so a mistake in the restructure surfaces immediately instead of
sitting in a path nothing exercises. Landing it earlier would repeat
provin.oss's quickstart §2f: documented, unexecuted, and wrong.
Test plan
Comment only — no build instruction changed. CI on this PR is the check.