Checkpoint: Correctif CI de recette : le test d'état de chiffrement Salaires utilise désormais une clé AES-256 de test locale et restaure l'environnement, au lieu de dépendre du secret PAYROLL_ENCRYPTION_KEY non injecté dans le runner Gitea. La commande exacte de CI pnpm verify est validée localement : TypeScript, 55 tests et build passent.
All checks were successful
Validation applicative / TypeScript, tests et build (push) Successful in 2m45s

This commit is contained in:
Manus
2026-08-29 22:52:03 +00:00
parent 82de3181df
commit 558582d358

View File

@@ -441,9 +441,15 @@ describe("masseSalariale", () => {
describe("salaires.getSecurityStatus", () => {
it("valide la clé de chiffrement configurée via une procédure administrateur", async () => {
const { ctx } = createAuthCtx({ role: "admin" });
await expect(appRouter.createCaller(ctx).salaires.getSecurityStatus())
.resolves.toEqual({ ready: true, algorithm: "AES-256-GCM" });
const previousKey = process.env.PAYROLL_ENCRYPTION_KEY;
process.env.PAYROLL_ENCRYPTION_KEY = Buffer.alloc(32, 9).toString("base64");
try {
await expect(appRouter.createCaller(ctx).salaires.getSecurityStatus())
.resolves.toEqual({ ready: true, algorithm: "AES-256-GCM" });
} finally {
if (previousKey === undefined) delete process.env.PAYROLL_ENCRYPTION_KEY;
else process.env.PAYROLL_ENCRYPTION_KEY = previousKey;
}
});
it("interdit la sonde de sécurité aux profils non administrateurs", async () => {