-
Notifications
You must be signed in to change notification settings - Fork 340
fix(core): auto-detect manifest decryption in PreprocessBuildCatalog #626
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Replace the hardcoded null IManifestRestoreServices parameter with a try-all approach that attempts each registered decryption method from EncryptionMapping until one succeeds. This fixes a NRE when building with encrypted manifests (YooAsset#730). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: JasonXuDeveloper - 傑 <jason@xgamedev.net>
Add .claude/rules/yooasset-extensions.md to track custom modifications to YooAsset Extension Samples, ensuring the PreprocessBuildCatalog decryption fix is preserved across YooAsset updates. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: JasonXuDeveloper - 傑 <jason@xgamedev.net>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: JasonXuDeveloper - 傑 <jason@xgamedev.net>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Updates YooAsset build-time catalog artifacts and adds documentation to track local customizations to YooAsset Extension Samples, intended to support manifest decryption auto-detection during catalog generation.
Changes:
- Updates
StreamingAssets/yoo/maingenerated outputs (version, catalog, bundles, hashes/bytes). - Updates compiled AOT output (
JEngine.Core.dll.bytes). - Adds
.claude/rules/yooasset-extensions.mdand references it fromCLAUDE.mdto preserve YooAsset sample customizations across upstream updates.
Reviewed changes
Copilot reviewed 33 out of 63 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| UnityProject/Assets/StreamingAssets/yoo/main/main_260208645.hash.meta | Removes previous generated hash meta for old package version. |
| UnityProject/Assets/StreamingAssets/yoo/main/main_260208645.hash | Removes previous generated hash for old package version. |
| UnityProject/Assets/StreamingAssets/yoo/main/main_260208645.bytes.meta | Removes previous generated manifest-bytes meta for old package version. |
| UnityProject/Assets/StreamingAssets/yoo/main/main_260208645.bytes | Removes previous generated manifest-bytes for old package version. |
| UnityProject/Assets/StreamingAssets/yoo/main/main_260208479.hash.meta | Adds new generated hash meta for updated package version. |
| UnityProject/Assets/StreamingAssets/yoo/main/main_260208479.hash | Adds new generated hash for updated package version. |
| UnityProject/Assets/StreamingAssets/yoo/main/main_260208479.bytes.meta | Adds new generated manifest-bytes meta for updated package version. |
| UnityProject/Assets/StreamingAssets/yoo/main/main_260208479.bytes | Adds new generated manifest-bytes for updated package version. |
| UnityProject/Assets/StreamingAssets/yoo/main/main.version | Updates package version pointer. |
| UnityProject/Assets/StreamingAssets/yoo/main/ec451612fae802d07094821d3808809f.bundle.meta | Adds meta for a newly generated bundle. |
| UnityProject/Assets/StreamingAssets/yoo/main/ec451612fae802d07094821d3808809f.bundle | Adds a newly generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/eb53152c634d44794e4aebca15ee8b0b.bundle.meta | Removes meta for an old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/eb53152c634d44794e4aebca15ee8b0b.bundle | Removes old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/e6ed0b286414267962e71c6bd3e19aae.bundle.meta | Removes meta for an old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/e6ed0b286414267962e71c6bd3e19aae.bundle | Removes old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/e578f9b5397d53f41a2b284805860df8.bundle.meta | Removes meta for an old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/e578f9b5397d53f41a2b284805860df8.bundle | Removes old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/dcb1b5ed74667265ec98799a1576d5d3.bundle.meta | Adds meta for a newly generated bundle. |
| UnityProject/Assets/StreamingAssets/yoo/main/dcb1b5ed74667265ec98799a1576d5d3.bundle | Adds a newly generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/cde787d0afee29507a54189b7372cf14.bundle.meta | Adds meta for a newly generated bundle. |
| UnityProject/Assets/StreamingAssets/yoo/main/cde787d0afee29507a54189b7372cf14.bundle | Adds a newly generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/c9cd151a5606eec7bf47ac8d9401fb94.bundle.meta | Adds meta for a newly generated bundle. |
| UnityProject/Assets/StreamingAssets/yoo/main/c9cd151a5606eec7bf47ac8d9401fb94.bundle | Adds a newly generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/c792026eb6f717273422cfb875e3121d.bundle.meta | Adds meta for a newly generated bundle. |
| UnityProject/Assets/StreamingAssets/yoo/main/c792026eb6f717273422cfb875e3121d.bundle | Adds a newly generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/bd7a40533fe708ab184ec75ceac853ee.bundle.meta | Removes meta for an old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/bd7a40533fe708ab184ec75ceac853ee.bundle | Removes old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/ae16386504461146b4ec88eabc7de89f.bundle.meta | Adds meta for a newly generated bundle. |
| UnityProject/Assets/StreamingAssets/yoo/main/ae16386504461146b4ec88eabc7de89f.bundle | Adds a newly generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/a99f206109faf44e637346323f255c84.bundle.meta | Removes meta for an old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/a99f206109faf44e637346323f255c84.bundle | Removes old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/a08587b61b8accf9b169ccdf828176f6.bundle.meta | Adds meta for a newly generated bundle. |
| UnityProject/Assets/StreamingAssets/yoo/main/a08587b61b8accf9b169ccdf828176f6.bundle | Adds a newly generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/BuildinCatalog.json | Updates built-in catalog JSON to new package version and bundle list. |
| UnityProject/Assets/StreamingAssets/yoo/main/BuildinCatalog.bytes | Adds/updates binary built-in catalog output. |
| UnityProject/Assets/StreamingAssets/yoo/main/85bf7a8000e78a0640dd575c462d71de.bundle.meta | Adds meta for a newly generated bundle. |
| UnityProject/Assets/StreamingAssets/yoo/main/85bf7a8000e78a0640dd575c462d71de.bundle | Adds a newly generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/76c5d9ebda370e318d1d711bf29db391.bundle.meta | Removes meta for an old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/76c5d9ebda370e318d1d711bf29db391.bundle | Removes old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/743303a92561c811cf9e428d59f4eed5.bundle.meta | Removes meta for an old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/743303a92561c811cf9e428d59f4eed5.bundle | Removes old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/723671f97fbc4c6dfad84ca9c9664b26.bundle.meta | Removes meta for an old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/723671f97fbc4c6dfad84ca9c9664b26.bundle | Removes old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/64a56ed51df1cee5f53c5ac4760ce454.bundle.meta | Removes meta for an old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/64a56ed51df1cee5f53c5ac4760ce454.bundle | Removes old bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/578aebd507ab15c1f73f9a41b5962e15.bundle | Removes old bundle artifact (or updates generated output as part of the package set). |
| UnityProject/Assets/StreamingAssets/yoo/main/56d90d09aba519ecd1cba11dfc31f5d8.bundle.meta | Adds meta for a newly generated bundle. |
| UnityProject/Assets/StreamingAssets/yoo/main/56d90d09aba519ecd1cba11dfc31f5d8.bundle | Adds a newly generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/5154722f17ed26abd07f0275b2fb315c.bundle | Removes old bundle artifact (or updates generated output as part of the package set). |
| UnityProject/Assets/StreamingAssets/yoo/main/4abd3c5f4f01b40f54c4a348b24ead49.bundle.meta | Updates bundle meta GUID. |
| UnityProject/Assets/StreamingAssets/yoo/main/4abd3c5f4f01b40f54c4a348b24ead49.bundle | Adds/updates generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/490ed19cf4dd5e128fb13cf883211456.bundle.meta | Updates bundle meta GUID. |
| UnityProject/Assets/StreamingAssets/yoo/main/490ed19cf4dd5e128fb13cf883211456.bundle | Adds/updates generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/4549b29fd00b2e57f75873c7c370340b.bundle | Removes old bundle artifact (or updates generated output as part of the package set). |
| UnityProject/Assets/StreamingAssets/yoo/main/427571ab4f40f72802eba023fca7a5e8.bundle | Removes old bundle artifact (or updates generated output as part of the package set). |
| UnityProject/Assets/StreamingAssets/yoo/main/20c6686ce660502e16a881f74dde76d7.bundle.meta | Updates bundle meta GUID. |
| UnityProject/Assets/StreamingAssets/yoo/main/20c6686ce660502e16a881f74dde76d7.bundle | Adds/updates generated bundle artifact. |
| UnityProject/Assets/StreamingAssets/yoo/main/1832d193ad604c285e2456ba2a7855c7.bundle.meta | Updates bundle meta GUID. |
| UnityProject/Assets/StreamingAssets/yoo/main/1832d193ad604c285e2456ba2a7855c7.bundle | Adds/updates generated bundle artifact. |
| UnityProject/Assets/HotUpdate/Compiled/AOT/JEngine.Core.dll.bytes | Updates compiled AOT binary output for JEngine.Core. |
| CLAUDE.md | Adds reference to the new YooAsset extensions maintenance rule. |
| .claude/rules/yooasset-extensions.md | Adds documentation/checklist for maintaining customized YooAsset Extension Sample changes across upstream updates. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Auto-approved: Copilot review found no issues and Unity Tests passed (or were skipped for non-code changes).
Summary
PreprocessBuildCatalogwhen building with encrypted manifests by replacing the hardcodednullIManifestRestoreServiceswith a try-all approach that tests each registered decryption method fromEncryptionMapping(YooAsset#730).claude/rules/yooasset-extensions.mdto track custom modifications to YooAsset Extension Samples, ensuring fixes are preserved across YooAsset updatesTest plan
nullpath succeeds immediately🤖 Generated with Claude Code