Consider the following...
Base share contents (.snap is hidden by CephFS):
enum_snaps("/mnt/cephfs/") -> returns gmt_tok("/mnt/cephfs/.snap/mysnapshot/")
find(twrp, "/mnt/cephfs/") -> returns "dir_created_b4_deleted_after"
create(twrp, "/mnt/cephfs/dir_created_b4_deleted_after") -> returns NOT_FOUND
This is because of the way vfs_ceph_snapshots resolves snapshot paths. Ceph propagates snapshots from parent directories to all children, and vfs_ceph_snapshots currently relies upon this to avoid walking up the directory tree looking for snapshots which match a given timewarp token. This logic breaks if any of the timewarped path components correspond to deleted directories, where in the example above, vfs_ceph_snapshots looks for the timewarp token via:
where instead is should be looking under "/mnt/cephfs/.snap".