feat(api): digest de scan avec fichiers incomplets en cas d'échec
Un fichier dont l'ingestion échoue est enregistré en entrée incomplète (métadonnées minimales) plutôt que d'interrompre le scan; le digest du job liste les échecs avec exemples tronqués. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
20
apps/api/src/scanner/scanner.service.test.ts
Normal file
20
apps/api/src/scanner/scanner.service.test.ts
Normal file
@ -0,0 +1,20 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { scanDigest } from "./scanner.service.js";
|
||||
|
||||
describe("scan digest", () => {
|
||||
it("reports incomplete files without exposing huge traces", () => {
|
||||
const detail = scanDigest(
|
||||
19,
|
||||
0,
|
||||
[
|
||||
{ filePath: "/library/broken.cbr", error: "x".repeat(300) },
|
||||
{ filePath: "/library/broken.epub", error: "Invalid EPUB" }
|
||||
]
|
||||
);
|
||||
|
||||
expect(detail).toContain("Scanned 19 file(s)");
|
||||
expect(detail).toContain("2 incomplete file(s)");
|
||||
expect(detail).toContain("broken.cbr");
|
||||
expect(detail.length).toBeLessThan(380);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user