Un littéral de dict garde la DERNIÈRE valeur : une clé déclarée deux fois écrase silencieusement la première. Cinq clés étaient dans ce cas — « SSH host is required! », « Total: », « max », « Cancelled. », « failed » — et rien ne le signalait, ni au lancement, ni en revue, ni dans la suite de tests. Quatre étaient d'inoffensifs copier-coller : les deux déclarations portaient la même paire fr/en. La cinquième ne l'était pas. « failed » valait « en échec » au premier endroit et « échouées » au second ; c'est « échouées » qui gagnait, pour les TROIS appels, y compris le bilan de déploiement écrit pour « en échec ». Une traduction avait donc été rédigée, relue, et n'a jamais été affichée une fois. C'est l'occurrence masquée qui part, jamais celle qui gagne : les cinq clés rendent exactement ce qu'elles rendaient avant, la sortie ne bouge pas d'un caractère. Choisir un meilleur français pour « failed » est un autre changement, à faire en le voyant à l'écran. Vérifié : 865 clés, 865 uniques, aucun doublon ; les cinq clés rendent la même valeur qu'avant. La suite de tests garde ses 262 tests et ses échecs préexistants, à l'identique — dont trois qui relèvent du même angle mort : test_todo_i18n teste la clé « menu_quit », absente de TRANSLATIONS. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| database_manager.py | ||
| kdbx_manager.py | ||
| logo_ascii.txt | ||
| migration_form.py | ||
| migration_stats.py | ||
| qemu_deploy_form.py | ||
| qemu_install_monitor.py | ||
| README.base.md | ||
| README.fr.md | ||
| README.md | ||
| source_todo.sh | ||
| textual_setup.py | ||
| todo.json | ||
| todo.py | ||
| todo_example.json | ||
| todo_file_browser.py | ||
| todo_i18n.py | ||
| todo_prefs.py | ||
| todo_telemetry.py | ||
| todo_upgrade.py | ||
| version_manager.py | ||
TODO is an assistant robot to use ERPLibre
Execute it with ./script/todo/todo.py or make todo.
For a new project, copy todo_example.json to private/todo/todo_override.json | private/todo/todo_override_private.json and edit it.