Backfill missing nitros into the Gamedata bundle on import
CI / check (push) Successful in 43s
CI / release (push) Skipped
CI / deploy (push) Failing after 1m19s

After each single import, batch import and batch-regen, copy every
.nitro file that is missing from /var/www/Gamedata/bundled/furniture so
the emulator can render all imported furniture even when the mirror write
was skipped. Reports the copied files in the API/SSE response.
This commit is contained in:
openhands committed 2026-08-18 20:29:30 +02:00
1 parent 99e77d9872
commit bcd24bfca4
4 files changed
+77 -1

No files matched your search

@@ -9,6 +9,7 @@ import {
ensureFurniOwnership,
importSingleFurni,
reconcileImportedOfferIds,
syncNitrosToGamedataBundle,
} from "@/lib/services/furni-import";
import { rcon } from "@/lib/services/rcon";
import type { ImportSingleResult } from "@/types/furni";
@@ -216,9 +217,11 @@ export const POST = withAdmin(
// Reconcile offer_id and fix asset ownership across the whole tree
let offerIdsFixed = 0;
let ownershipFixed: string[] = [];
let nitrosSynced: string[] = [];
try {
offerIdsFixed = (await reconcileImportedOfferIds()).fixed;
ownershipFixed = (await ensureFurniOwnership()).fixed;
nitrosSynced = (await syncNitrosToGamedataBundle()).copied;
} catch (err) {
console.warn(
"[import-furni] Post-import reconcile/ownership failed:",
@@ -233,6 +236,7 @@ export const POST = withAdmin(
warnings: withWarnings,
offerIdsFixed,
ownershipFixed,
nitrosSynced,
duration: Date.now() - startTime,
});