completions.init will only copy the chaintool and chaintool_run_op_common scripts into place (in the completions subdirectory of the data appdir) if they don't already exist.
So if you update chaintool to a new version, an old version of these two scripts could be left in place.
(Generated shortcuts and the completion "stub" scripts for shortcuts will also be left in place across upgrade, as will the YAML docs for existing commands and sequences, but currently I'm less worried about the content/format of those things changing across releases.)
It would be nice for completions.init to leave a little version marker in there too, so it can recognize if the chaintool version has changed since the last time those scripts were copied into place. And if so, of course, re-copy them and update the version marker.
completions.init will only copy the chaintool and chaintool_run_op_common scripts into place (in the completions subdirectory of the data appdir) if they don't already exist.
So if you update chaintool to a new version, an old version of these two scripts could be left in place.
(Generated shortcuts and the completion "stub" scripts for shortcuts will also be left in place across upgrade, as will the YAML docs for existing commands and sequences, but currently I'm less worried about the content/format of those things changing across releases.)
It would be nice for completions.init to leave a little version marker in there too, so it can recognize if the chaintool version has changed since the last time those scripts were copied into place. And if so, of course, re-copy them and update the version marker.