At least part of the problem is here:

# find fragments/ -type f -follow
fragments/10_new file

# find fragments/ -type f -follow | xargs -n1 basename
10_new
file

Basename always causes it to break on the space and treat it as a separate file.