diff --git a/server/api/cms/save-csv.post.js b/server/api/cms/save-csv.post.js index 15907e7..a896b0b 100644 --- a/server/api/cms/save-csv.post.js +++ b/server/api/cms/save-csv.post.js @@ -82,6 +82,14 @@ export default defineEventHandler(async (event) => { if (st.size !== expectedSize) { throw new Error(`Size mismatch after write. expected=${expectedSize} actual=${st.size}`) } + + // Wenn beim Build pre-komprimierte Assets erzeugt wurden, können für CSVs + // noch alte `.gz`/`.br` Dateien liegen bleiben. Nach einem Update würden dann + // ggf. inkonsistente Inhalte ausgeliefert (Browser meldet Partial Transfer). + // Daher: nach erfolgreichem Schreiben alte Varianten entfernen. + for (const ext of ['.gz', '.br']) { + try { await fs.unlink(`${targetPath}${ext}`) } catch (_e3) {} + } } catch (e) { // best-effort cleanup try { await fs.unlink(tmpPath) } catch (_e2) {}