kingkont 0.20.33 → 0.20.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/renderer/board.js +16 -4
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "kingkont",
|
|
3
|
-
"version": "0.20.
|
|
3
|
+
"version": "0.20.34",
|
|
4
4
|
"description": "KingKont \u00b7 Chatium \u2014 \u043d\u043e\u0434-\u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0441\u0446\u0435\u043d \u0441 AI-\u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0435\u0439 (\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438/\u0432\u0438\u0434\u0435\u043e/\u0433\u043e\u043b\u043e\u0441/SFX/\u043c\u0443\u0437\u044b\u043a\u0430/\u0442\u0435\u043a\u0441\u0442)",
|
|
5
5
|
"main": "main.js",
|
|
6
6
|
"bin": {
|
package/renderer/board.js
CHANGED
|
@@ -3615,13 +3615,25 @@ async function checkExternalChanges() {
|
|
|
3615
3615
|
stopExternalWatcher();
|
|
3616
3616
|
return;
|
|
3617
3617
|
}
|
|
3618
|
-
//
|
|
3619
|
-
//
|
|
3620
|
-
//
|
|
3618
|
+
// Во время активной генерации НЕ реагируем на изменения mtime. Юзер:
|
|
3619
|
+
// «больше с этими файлами никто не работает, это происходит во время
|
|
3620
|
+
// генерации». pollJob и mutateNode регулярно мутируют scene.json через
|
|
3621
|
+
// scheduleSave (статус «submitting» → «queued» → «generating»…), и
|
|
3622
|
+
// микросекундная рассинхронизация между нашим записанным mtime и
|
|
3623
|
+
// snapshot'ом `lastDiskMtime` приводила к ложным алертам «изменён извне».
|
|
3624
|
+
// Watcher остаётся осмысленным для CLI / git-pull / другого редактора —
|
|
3625
|
+
// те случаи естественно происходят когда генерации не запущены.
|
|
3626
|
+
if (state.jobs && state.jobs.size > 0) return;
|
|
3627
|
+
// Grace-period 2s после последнего нашего save: на случай если только
|
|
3628
|
+
// что отстреливший save обновил lastDiskMtime с лагом и watcher попал
|
|
3629
|
+
// в окно «mtime записан, snapshot ещё обновляется». 2s достаточно для
|
|
3630
|
+
// любых внутренних async-цепочек, но мало чтобы реально пропустить
|
|
3631
|
+
// внешнее изменение — watcher подхватит его через следующие 3s тика.
|
|
3632
|
+
const GRACE_MS = 2000;
|
|
3621
3633
|
const mtime = await _readSceneMtime(state.currentBoard.handle);
|
|
3622
3634
|
if (mtime == null || state.currentBoard.lastDiskMtime == null)
|
|
3623
3635
|
return;
|
|
3624
|
-
if (mtime <= state.currentBoard.lastDiskMtime)
|
|
3636
|
+
if (mtime <= state.currentBoard.lastDiskMtime + GRACE_MS)
|
|
3625
3637
|
return;
|
|
3626
3638
|
// Обнаружено внешнее изменение.
|
|
3627
3639
|
_externalReloadInFlight = true;
|