gestion_table_tournante_libre/test
Mathieu Benoit 0bc48fa1ae [FIX] storage, session: strict UTF-8, lost journal, lock, exclusions
The whole-iteration review found ways to lose or corrupt data. A state
saved in another encoding opened with its accents turned to U+FFFD and was
then overwritten; decoding is now strict, the state opens read-only, and a
gesture from its secours first moves it to the trash. A journal decodes line
by line, so one bad byte drops only the lines after it. A vanished journal
is rewritten whole, never appended to. Deleting refuses an event another
session holds; switching to writing rereads the disk; an import that
changes exclu says which reservations it suspends.
Checked: 1504 node, 35 browser, 29 node-long; depot.js, journal.js 100 %.

--- FR ---

[FIX] stockage, séance : UTF-8 strict, journal perdu, verrou, exclusions

La revue d'ensemble a trouvé des façons de perdre ou d'abîmer des données.
Un état enregistré dans un autre encodage s'ouvrait, ses accents changés en
U+FFFD, puis s'écrasait ; le décodage est strict, l'état s'ouvre en lecture
seule, et un geste depuis son secours le range d'abord à la corbeille. Le
journal se décode ligne par ligne : un octet fautif n'écarte que la suite.
Un journal disparu se réécrit en entier, jamais par ajout. Supprimer refuse
un événement qu'une autre séance tient ; passer en écriture relit le disque ;
un import qui change exclu dit quelles réservations il suspend.
Vérifié : 1504 node, 35 navigateur, 29 node-long ; depot.js, journal.js 100 %.

Assisted-by: Claude Opus 5.5
2026-10-07 01:20:42 -04:00
..
fixtures/csv [ADD] csv: columns by header, closed exclu values, mandatory preview 2026-10-06 13:12:28 -04:00
arborescence.test.js [ADD] tests: per-module coverage, 100 % branch floors, layer guards 2026-10-06 20:41:34 -04:00
chargements.js [ADD] tests: budget reporter, one import parser, key-order guard 2026-10-06 04:23:13 -04:00
chargements.test.js [ADD] tests: budget reporter, one import parser, key-order guard 2026-10-06 04:23:13 -04:00
chromium.js [ADD] install: Node 26 and system packages, per family and under Nix 2026-10-06 05:52:05 -04:00
chromium.test.js [ADD] install: Node 26 and system packages, per family and under Nix 2026-10-06 05:52:05 -04:00
construction.long.test.js [ADD] skeleton: Capacitor web app that shows its dated version 2026-10-05 13:13:13 -04:00
contrat_fichiers.js [ADD] storage: file-system interface, failing test double, contract 2026-10-06 13:12:25 -04:00
coquille.test.js [ADD] electron: confined file system, atomic writes, lock, bridge 2026-10-06 17:34:31 -04:00
electron_factice.js [ADD] electron: confined file system, atomic writes, lock, bridge 2026-10-06 17:34:31 -04:00
fichiers_electron.long.test.js [ADD] storage: copy, rename, import, delete events; local settings 2026-10-06 23:17:05 -04:00
fichiers_electron.test.js [FIX] storage, session: strict UTF-8, lost journal, lock, exclusions 2026-10-07 01:20:42 -04:00
fichiers_simules.js [FIX] storage, session: strict UTF-8, lost journal, lock, exclusions 2026-10-07 01:20:42 -04:00
fichiers_simules.test.js [FIX] storage, session: strict UTF-8, lost journal, lock, exclusions 2026-10-07 01:20:42 -04:00
fils.test.js [IMP] tests: watched series adapts to the core count, threads below 4 2026-10-06 04:54:01 -04:00
installation.test.js [ADD] run: make and ./run.sh, Electron start check, container matrix 2026-10-06 05:52:17 -04:00
lanceur.js [ADD] skeleton: Capacitor web app that shows its dated version 2026-10-05 13:13:13 -04:00
licence.test.js [ADD] scripts: Windows install and run through PowerShell 5.1 2026-10-06 05:51:31 -04:00
livrable.test.js [ADD] tests: budget reporter, one import parser, key-order guard 2026-10-06 04:23:13 -04:00
machine.js [IMP] tests: watched series adapts to the core count, threads below 4 2026-10-06 04:54:01 -04:00
machine.test.js [IMP] tests: watched series adapts to the core count, threads below 4 2026-10-06 04:54:01 -04:00
projets.test.js [ADD] skeleton: Capacitor web app that shows its dated version 2026-10-05 13:13:13 -04:00
rapporteur.js [IMP] tests: watched series adapts to the core count, threads below 4 2026-10-06 04:54:01 -04:00
rapporteur.test.js [IMP] tests: watched series adapts to the core count, threads below 4 2026-10-06 04:54:01 -04:00
version_voisine.js [ADD] electron: own shell, portable Windows exe built under podman 2026-10-05 13:13:32 -04:00