feat(11): placement mode + ���� #23
@ -549,6 +549,12 @@ const KubikonEditor = () => {
|
|||||||
// не отработал, или setSceneLoading(false) попал в обход (race).
|
// не отработал, или setSceneLoading(false) попал в обход (race).
|
||||||
const safetyTimer = setTimeout(() => {
|
const safetyTimer = setTimeout(() => {
|
||||||
console.warn('[KubikonEditor] safety timer: forcing setSceneLoading(false) after 60s');
|
console.warn('[KubikonEditor] safety timer: forcing setSceneLoading(false) after 60s');
|
||||||
|
// Загрузка не завершилась штатно за 60с (медленная сеть / таймаут
|
||||||
|
// getProject / частично загруженные модели) → помечаем как СБОЙ
|
||||||
|
// загрузки, чтобы автосейв НЕ затёр проект частичной/пустой сценой.
|
||||||
|
// Без этого terrain мог загрузиться частично (напр. 3 из 13173) и
|
||||||
|
// автосейв писал эту пустышку в БД (инцидент 2026-06-02).
|
||||||
|
loadFailedRef.current = true;
|
||||||
setSceneLoading(false);
|
setSceneLoading(false);
|
||||||
}, 60000);
|
}, 60000);
|
||||||
return () => {
|
return () => {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user