At Godot 4.7.2-stable, how do resource UIDs (.uid sidecars, uid in .tscn/.tres headers and in .import) keep references stable, and what happens when files are moved, renamed or copied outside the editor?
At Godot 4.7.2-stable (ed1daf0b), resources whose loader lacks custom UID support keep their UID in a '<file>.uid' sidecar, created only when none exists; text resources resolve ext_resource references UID-first and fall back to the stored path with an 'invalid UID ... using text path instead' warning; the UID registry is cached in uid_cache.bin under the project data path; the class docs state the sidecar rule.
At Godot 4.7.2-stable (ed1daf0b), resources whose loader lacks custom UID support keep their UID in a '<file>.uid' sidecar, created only when none exists; text resources resolve ext_resource references UID-first and fall back to the stored path with an 'invalid UID ... using text path instead' warning; the UID registry is cached in uid_cache.bin under the project data path; the class docs state the sidecar rule.
Curator qualifications: Editor filesystem scan, duplicate-UID repair, copy/delete behaviour (E6-E8, E10, E11) not reinspected. Header UID for .tscn/.tres (E5) not re-read line by line. Docs guarantee statements (E12, E13) not re-read; whether docs mention the fallback warning not checked. Static reading at the release tag; no editor run.
Limitations: Static reading at the release tag; no editor run.
Evidence status: statements located in the cited sources by a correlated desk review (Claude); not executed; not independently reviewed.
Structured fields
{
"citations": [
{
"url": "https://github.com/godotengine/godot/blob/ed1daf0bf001b61586d9930840f2f1394092c079/editor/file_system/editor_file_system.cpp",
"note": "core/io/resource_loader.cpp lines 120-128, 1426-1440 at 4.7.2-stable = ed1daf0b (gh api -X GET); scene/resources/resource_format_text.cpp lines 495-506; core/io/resource_uid.cpp line 48; godot-docs classes/class_resourceformatloader.rst line 226 at 9adca4c1"
},
{
"url": "https://github.com/godotengine/godot/blob/ed1daf0bf001b61586d9930840f2f1394092c079/core/io/resource_uid.cpp",
"note": "core/io/resource_loader.cpp lines 120-128, 1426-1440 at 4.7.2-stable = ed1daf0b (gh api -X GET); scene/resources/resource_format_text.cpp lines 495-506; core/io/resource_uid.cpp line 48; godot-docs classes/class_resourceformatloader.rst line 226 at 9adca4c1"
},
{
"url": "https://github.com/godotengine/godot/blob/ed1daf0bf001b61586d9930840f2f1394092c079/core/io/resource_loader.cpp",
"note": "core/io/resource_loader.cpp lines 120-128, 1426-1440 at 4.7.2-stable = ed1daf0b (gh api -X GET); scene/resources/resource_format_text.cpp lines 495-506; core/io/resource_uid.cpp line 48; godot-docs classes/class_resourceformatloader.rst line 226 at 9adca4c1"
},
{
"url": "https://github.com/godotengine/godot/blob/ed1daf0bf001b61586d9930840f2f1394092c079/scene/resources/resource_format_text.cpp",
"note": "core/io/resource_loader.cpp lines 120-128, 1426-1440 at 4.7.2-stable = ed1daf0b (gh api -X GET); scene/resources/resource_format_text.cpp lines 495-506; core/io/resource_uid.cpp line 48; godot-docs classes/class_resourceformatloader.rst line 226 at 9adca4c1"
},
{
"url": "https://github.com/godotengine/godot-docs/blob/9adca4c1c72917bfe1b7be3108abed5ce26696a6/classes/class_resourceuid.rst",
"note": "core/io/resource_loader.cpp lines 120-128, 1426-1440 at 4.7.2-stable = ed1daf0b (gh api -X GET); scene/resources/resource_format_text.cpp lines 495-506; core/io/resource_uid.cpp line 48; godot-docs classes/class_resourceformatloader.rst line 226 at 9adca4c1"
},
{
"url": "https://github.com/godotengine/godot-docs/blob/9adca4c1c72917bfe1b7be3108abed5ce26696a6/classes/class_resourceformatloader.rst",
"note": "core/io/resource_loader.cpp lines 120-128, 1426-1440 at 4.7.2-stable = ed1daf0b (gh api -X GET); scene/resources/resource_format_text.cpp lines 495-506; core/io/resource_uid.cpp line 48; godot-docs classes/class_resourceformatloader.rst line 226 at 9adca4c1"
},
{
"url": "https://github.com/godotengine/godot-docs/blob/9adca4c1c72917bfe1b7be3108abed5ce26696a6/engine_details/file_formats/tscn.rst",
"note": "core/io/resource_loader.cpp lines 120-128, 1426-1440 at 4.7.2-stable = ed1daf0b (gh api -X GET); scene/resources/resource_format_text.cpp lines 495-506; core/io/resource_uid.cpp line 48; godot-docs classes/class_resourceformatloader.rst line 226 at 9adca4c1"
}
]
}Evidence claims
- [sourced_fact] At Godot 4.7.2-stable (ed1daf0b), resources whose loader lacks custom UID support keep their UID in a '<file>.uid' sidecar, created only when none exists; text resources resolve ext_resource references UID-first and fall back to the stored path with an 'invalid UID ... using text path instead' warning; the UID registry is cached in uid_cache.bin under the project data path; the class docs state the sidecar rule. · locator: core/io/resource_loader.cpp lines 120-128, 1426-1440 at 4.7.2-stable = ed1daf0b (gh api -X GET); scene/resources/resource_format_text.cpp lines 495-506; core/io/resource_uid.cpp line 48; godot-docs classes/class_resourceformatloader.rst line 226 at 9adca4c1 source
Rights
| component | license | hosting | redistribution | modification | training | Evidence and notes |
|---|---|---|---|---|---|---|
| documentation | unknown | permitted | permitted | unknown | unknown | Applies to this original summary only, not to the cited sources. |
Linked records
- cites → https://github.com/godotengine/godot-docs/blob/9adca4c1c72917bfe1b7be3108abed5ce26696a6/classes/class_resourceformatloader.rst
- cites → https://github.com/godotengine/godot-docs/blob/9adca4c1c72917bfe1b7be3108abed5ce26696a6/classes/class_resourceuid.rst
- cites → https://github.com/godotengine/godot-docs/blob/9adca4c1c72917bfe1b7be3108abed5ce26696a6/engine_details/file_formats/tscn.rst
- cites → https://github.com/godotengine/godot/blob/ed1daf0bf001b61586d9930840f2f1394092c079/core/io/resource_loader.cpp
- cites → https://github.com/godotengine/godot/blob/ed1daf0bf001b61586d9930840f2f1394092c079/core/io/resource_uid.cpp
- cites → https://github.com/godotengine/godot/blob/ed1daf0bf001b61586d9930840f2f1394092c079/editor/file_system/editor_file_system.cpp
- cites → https://github.com/godotengine/godot/blob/ed1daf0bf001b61586d9930840f2f1394092c079/scene/resources/resource_format_text.cpp