chore: remove sdk-test-scenes.decentraland.zone - #9570
Conversation
The Fargate service behind sdk-test-scenes.decentraland.zone (SDK6 test scenes) is being shut down. The repository has been archived for 2+ years with no updates. - Remove TEST_SCENES_URL constant from IRealmNavigator - Remove sdk-test-scenes.decentraland.zone from the trusted realm allowlist in MainSceneLoader - Remove the URL from DynamicSceneLoaderSettings.asset realm list - Remove the "test" chat shortcut from ChatTeleporter - Redirect InitialRealm.TestScenes to SDK_TEST_SCENES_URL (SDK7 CDN) in RealmUrls - Remove TestScenes from TEST_REALMS array and isolation conditions in editor drawer Closes #9569 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Windows and Mac build successful in Unity Cloud! You can find a link to the downloadable artifact below. |
|
Warnings not reduced: 13975 => 13975 — remove at least 1 warning to merge. Warnings/errors in files changed by this PR (6) |
Remove the redundant TestScenes enum value entirely instead of redirecting it to SDK_TEST_SCENES_URL (which duplicated the Sdk case). Assign World = 5 explicitly to preserve serialized enum indices. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
decentraland-bot
left a comment
There was a problem hiding this comment.
STEP 1 — Context & scope
- Loaded
CLAUDE.md,docs/README.md, and the repo review instructions. - Checked out PR head
fix/9569-remove-sdk-test-scenes-urlagainstdev. - Reviewed changed files and surrounding realm/navigation/editor drawer code.
- Repo search evidence:
InitialRealm.TestSceneshas 0 matches;TestSceneshas 0 matches;sdk-test-scenes.decentraland.zonestill has 1 match inExplorer/Assets/Scenes/LocomotionTestScene.unity:3929.
STEP 2 — Root-cause check
- Problem: remove dependency on the archived SDK6
sdk-test-scenes.decentraland.zoneFargate and remove the obsoleteInitialRealm.TestScenesenum value. - Result: FAIL — the C# enum/constant/switch cleanup addresses most references, but the deprecated URL remains serialized in a Unity scene, so the diff does not fully remove the dependency.
STEP 3 — Design & integration
- No new long-lived unit, system, manager, service, controller, subscription, connection, room, buffer, or measurement is introduced; owner search is not applicable.
- Existing owners reviewed: realm startup mapping (
RealmUrls.cs), launch settings serialization (RealmLaunchSettings.cs/InitialRealm.cs), editor selection (RealmLaunchSettingsDrawer.cs), trusted realm validation (MainSceneLoader.cs), chat aliases (ChatTeleporter.cs), and serialized realm lists (DynamicSceneLoaderSettings.asset, scene assets). - Integration gap: serialized Unity scene data bypasses the
IRealmNavigatorconstants, andLocomotionTestScene.unitystill contains the old endpoint.
STEP 4 — Member audit
- Changed public member:
InitialRealmenum removedTestScenesand keepsWorld = 5to preserve serialized numeric values. Consumers found viarg:RealmLaunchSettings,RealmUrls,RealmLaunchSettingsDrawer, and edit-mode tests. No remainingInitialRealm.TestScenesconsumers. - Changed public constant:
IRealmNavigator.TEST_SCENES_URLremoved. Consumers found viarg: no remaining C# consumers.
STEP 5 — Findings
[P1] Explorer/Assets/Scenes/LocomotionTestScene.unity:3929 still contains the deprecated endpoint.
Problem: the PR removes the URL from C# and DynamicSceneLoaderSettings.asset, but the same URL remains in serialized scene data:
- https://sdk-test-scenes.decentraland.zoneFix: replace it with the maintained SDK7 test-scenes CDN URL, or remove the entry if LocomotionTestScene should no longer expose SDK test scenes. Concrete suggested replacement:
- https://sdk-team-cdn.decentraland.org/ipfs/sdk7-test-scenes-main-latest
Why: after the Fargate shutdown, opening/running this test scene can still point developers/QA at the removed service, so the old dependency is not fully eliminated.
Security review: No security issues found. The PR does not add secrets, auth changes, or broaden URL trust; it reduces stale endpoint exposure, except for the remaining serialized scene reference above.
Consumer impact analysis: IRealmNavigator.TEST_SCENES_URL is a public constant in the Unity project, but repo-wide search found no remaining consumers. No external published package/API consumer was identified for this Unity-internal constant.
STEP 6 — Complexity assessment
- COMPLEX: the diff touches 7 files, runtime realm/navigation configuration, a shared interface constant, editor launch settings, and serialized Unity asset data.
STEP 7 — QA assessment
- QA_REQUIRED: YES because runtime code under
Explorer/and realm/navigation behavior are touched.
STEP 8 — Non-blocking warnings
- Main scene was not modified.
- CI is not green yet: semantic title check is failing, QA/DEV approval is pending, and Unity build/test/lint jobs are still pending.
STEP 9 — Verdict
REVIEW_RESULT: FAIL ❌
COMPLEXITY: COMPLEX
COMPLEXITY_REASON: Touches runtime realm/navigation configuration, a shared interface constant, editor launch settings, and serialized Unity asset data across more than three files.
QA_REQUIRED: YES
Reviewed by Jarvis 🤖 · Requested by Mikhail Agapov (<@U04A7TYN13L>) via Slack
Missed reference in the Unity scene file's serialized realm list. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Summary
Changes
IRealmNavigator.csTEST_SCENES_URLconstantMainSceneLoader.cssdk-test-scenes.decentraland.zonefrom trusted realm allowlistDynamicSceneLoaderSettings.assetChatTeleporter.cs"test"shortcut (pointed to dead URL)RealmUrls.csInitialRealm.TestScenes→SDK_TEST_SCENES_URLRealmLaunchSettingsDrawer.csTestScenesfromTEST_REALMSand isolation conditionsTesting
No functional change for users — the removed URL was an SDK6 dev realm that has been offline. The
InitialRealm.TestScenesenum value is preserved (redirected) to avoid Unity serialization issues.Closes
#9569
🤖 Created via Slack with Claude
Requested by Mikhail Agapov (U04A7TYN13L)