Tests manquants du balayage des .tmp (revue PR #37) #38

Closed
opened 2026-09-30 00:49:08 +00:00 by maximus · 0 comments
Owner

Constats non bloquants de la revue de la PR #37 (commentaire 17080), à ne pas perdre avec la PR fermée. Deux promesses de sweepStaleTempFiles() ne sont tenues par aucun test.

  1. Symlink (index.js, lstatSync dans sweepStaleTempFiles) : remplacer lstatSync par statSync laisse toute la suite verte, alors que le commentaire promet qu'un symlink posé sur le montage n'est « ni suivi ni supprimé ». Test proposé dans __tests__/hosts.test.js : un lien .thinkpad.4242.1700000000000.tmp vers un fichier vieux de deux heures ; le lien et sa cible survivent au balayage, sans console.error. Prouver le rouge avec la mutation statSync.
  2. Ancre ^ de TEMP_FILE_RE : la retirer laisse la suite verte. Ajouter prefix.thinkpad.4242.1700000000000.tmp aux cas « never touches ». Prouver le rouge en retirant l'ancre.

Hors périmètre (cosmétique, noté pour mémoire) : le seuil d'exactement une heure (<= contre <) n'est pas testé.

Constats non bloquants de la revue de la PR #37 (commentaire 17080), à ne pas perdre avec la PR fermée. Deux promesses de `sweepStaleTempFiles()` ne sont tenues par aucun test. 1. **Symlink** (`index.js`, `lstatSync` dans `sweepStaleTempFiles`) : remplacer `lstatSync` par `statSync` laisse toute la suite verte, alors que le commentaire promet qu'un symlink posé sur le montage n'est « ni suivi ni supprimé ». Test proposé dans `__tests__/hosts.test.js` : un lien `.thinkpad.4242.1700000000000.tmp` vers un fichier vieux de deux heures ; le lien et sa cible survivent au balayage, sans `console.error`. Prouver le rouge avec la mutation `statSync`. 2. **Ancre `^` de `TEMP_FILE_RE`** : la retirer laisse la suite verte. Ajouter `prefix.thinkpad.4242.1700000000000.tmp` aux cas « never touches ». Prouver le rouge en retirant l'ancre. Hors périmètre (cosmétique, noté pour mémoire) : le seuil d'exactement une heure (`<=` contre `<`) n'est pas testé.
maximus added the
status:ready
source:human
type:refactor
labels 2026-09-30 00:49:21 +00:00
maximus added
status:review
and removed
status:ready
labels 2026-10-01 22:10:52 +00:00
maximus added
status:approved
and removed
status:review
labels 2026-10-01 23:23:28 +00:00
maximus removed the
status:approved
label 2026-10-01 23:27:59 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: maximus/vps-health-api#38
No description provided.