A failed update_addons_all left one option, « [1] to redo the command » — useless against the failure that actually causes it, since redoing an upgrade whose COW copy has drifted fails again identically. The prompt now offers to run reset_stale_cow_views on the database concerned: [1] to redo the command [2] Check the COW views that drifted (technolibre_…_upgrade_15) Choosing [2] runs the checker and comes back to the same prompt, so the usual sequence — look, repair, redo — happens without leaving the migration. The database is read from the failed command itself, since the executor is not told which one it is. Three forms are recognised: « -d <db> », « --database <db> », and the positional argument of the addons scripts. No database found, no [2] offered — « make format » gets the old prompt unchanged. The option only ever REPORTS. Resetting a copy can erase a real customisation, so it stays a separate deliberate command, printed with the exact line to run and a reminder to read the diff first. Verified: the six command forms parsed correctly (and two that hold no database at all), [2] invoking the tool then re-offering the choice, no [2] on a command without a database, and the whole chain against the real _upgrade_15, where it prints the two drifted copies followed by the reset line. Co-Authored-By: Claude Opus 4.8 (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 | ||
| 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.