Repository navigation
fix(release): record kit artifact provenance - #40
Conversation
📝 WalkthroughWalkthroughRelease manifests now carry a validated kit Git SHA, enforce clean repository metadata, reuse resolved identity during generation, and expand smoke coverage. Target builds use the in-process writer, while CI builds and tests prepared packages using runner temporary directories. ChangesRelease manifest identity
CI artifact storage
Estimated code review effort: 4 (Complex) | ~45 minutes Sequence Diagram(s)sequenceDiagram
participant BuildTarget
participant ReleaseManifestWriter
participant GitRepository
participant ReleaseManifest
BuildTarget->>ReleaseManifestWriter: write captured manifest
ReleaseManifestWriter->>GitRepository: resolve full kit SHA
GitRepository-->>ReleaseManifestWriter: kitGitSha and clean repository state
ReleaseManifestWriter->>ReleaseManifest: generate manifest identity
ReleaseManifest-->>BuildTarget: return release manifest
Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@codex review |
|
✅ Action performedReview finished.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c57c89e922
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Addressed the two P2 findings in @codex review |
|
✅ Action performedReview finished.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 65996254ef
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Follow-up fixes are pushed at 4bf7934. All actionable review threads are answered and resolved, per-commit Open Code Review is clean after the follow-up, and local check/test/web/AIT validation passes. @codex review |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
✅ Action performedReview finished.
|
|
The CI-only follow-up is pushed at 69554d6. It keeps strict provenance intact by building release targets before test-generated source outputs, adds test:prepared to avoid duplicate package builds, passes the reproduced package/web/Microsoft/test sequence locally, and the follow-up Open Code Review is clean. @codex review |
|
✅ Action performedReview finished.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 69554d617e
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
69554d6 to
3f6e630
Compare
|
PR #40 is rebased onto the new main at 619d031 after #41 merged. The rebase range-diff is identical for all 14 commits. The fresh-checkout dist dependency is fixed in 3f6e630 and verified by removing release-manifest dist before a default web build; the i18n thread is answered with git-ignore evidence. Both threads are resolved, and rebased pnpm check, release-manifest smoke, and default web build pass. @codex review |
|
✅ Action performedReview finished.
|
|
Codex Review: Didn't find any major issues. 👍 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
gitShaandkitGitSha.MPGD_KIT_PATHcannot accidentally inherit a parent game repository revision.kitGitShaas a lowercase full 40-character SHA in both the runtime assertion and JSON schema.targetConfigVersionfield.runner.temp, build release targets while the checkout is clean, and run the prepared full test suite afterward.Validation
pnpm graph:targetpnpm graph:packagepnpm graph:preflightpnpm checkpnpm exec ttsc --noEmit -p tsconfig.tools.jsonpnpm --filter @mpgd/release-manifest checkpnpm build:packagespnpm smoke:release-manifest-mergepnpm teston Node 24.11.0pnpm test:preparedafter a prepared package buildpnpm build:webafter removingpackages/release-manifest/distMPGD_SKIP_BUILD_TARGET_PREFLIGHT=1 pnpm build:webandpnpm smoke:target web-previewfrom a clean committed worktreeMPGD_SKIP_BUILD_TARGET_PREFLIGHT=1 pnpm build:microsoft-storeandpnpm smoke:target microsoft-storefrom the same clean worktreeMPGD_AIT_PACKAGE_MODE=skip pnpm build:aitfrom a clean committed worktreegit range-diffafter rebasing ontomainat619d031(all 14 commits unchanged)git diff --check origin/main...HEADReview follow-up
Release impact
No Sampo changeset is included.
@mpgd/release-manifestis currentlyprivate: trueat0.0.0, and the repository ignores unpublished packages. Making it publishable requires a separate initial-publish/OIDC workflow and is outside this PR.