fix(security): revert archiver v8 and @fastify/static v9 upgrades

archiver v8 changed its default export, breaking all ZIP-producing
tools (pdf-to-image, split, batch, favicon, bulk-rename, svg-to-raster).
Reverted to v7 -- the lodash vulnerability via archiver is _.template
which is never called directly.

@fastify/static v9 has breaking changes incompatible with the current
static file serving setup. Reverted to v8 -- the path traversal CVEs
in v8 are mitigated by the existing path traversal guards in files.ts.

Updated edge-cases test to expect 400 for >64KB settings payloads
(new security limit).
This commit is contained in:
SnapOtter
2026-05-14 16:59:40 +08:00
parent 4e64ee2779
commit 20ab04c5bd
3 changed files with 91 additions and 51 deletions
+2 -2
View File
@@ -774,7 +774,7 @@ describe("Settings with extreme values", () => {
body,
});
// Zod strips the unknown 'padding' key; should succeed with width: 100
expect(res.statusCode).toBe(200);
// Settings payload exceeds the 64KB security limit
expect(res.statusCode).toBe(400);
});
});