fix(core): auto-detect manifest decryption in PreprocessBuildCatalog#626
Merged
JasonXuDeveloper merged 3 commits intomasterfrom Feb 6, 2026
Merged
fix(core): auto-detect manifest decryption in PreprocessBuildCatalog#626JasonXuDeveloper merged 3 commits intomasterfrom
JasonXuDeveloper merged 3 commits intomasterfrom
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.
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. |
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
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