git-filter-repo multiple operations (regex filter, move files, keep other dir...)

Self answering as laying out the problem helped me spot the issue. I missed one important note in the documentation about path renaming.

Note: if you combine path filtering with path renaming, be aware that a rename directive does not select paths, it only says how to rename paths that are selected with the filters.

So one must describe all paths to be selected in the original repo prior to renaming them. Hence in my case the regex must be defined twice: once as a simple path filter and the other as a rename. The following path file is perfectly doing the job in a single run:

$ cat ../paths.txt
# Paths to be kept
regex:^\d{2}.?_.*\.yml$
roles/my_role

# Rename playbooks
regex:^\d{2}.?_(.*\.yml)$==>playbooks/\1

$ git-filter-repo --paths-from-file ../paths.txt