Treesit--navigate-defun should, as you did in bash-ts-mode, only navigate in the same level (siblings) or higher (parents). Could you show an example of the unexpected behavior?
I must have forgotten to evaluate something on my setup file. It is indeed working as you described. Sorry for the noise.
Should I add key bindings to use the new tree-sitter navigation functions to bash-ts-mode or is it planned an integration with beginning/end-of-defun?
--