Lxc copy --refresh deletes local snapshots

Currently trying to send incremental differences from a container running on a dir storage to a lxd host that runs with zfs storage.
We’ll call them:
lxd-dir - dir based storage
lxd-zfs - zfs based storage

lxd-dir houses the prod container that I would like to backup.
lxd-zfs houses the backups.

The backups were originally going to be images produced from prod but being unable to using diffing to make the images smaller it was thought to better use straight copy. Since copy supports --refresh and --instance-only these seemed well suited to our needs. As rsync would only copy the changes to the files on lxd-dir then on lxd-zfs we could snapshot after the transfer finishes to have differentials with minimal space usage.

It turns out though if we have snapshots on lxd-zfs and you lxc copy --refresh --instance-only all the snapshots for that container on lxd-zfs are removed even though its going through rsync which wouldn’t cause a issue with zfs send being out of sync.

The work flow I’m trying to achieve is:
lxd-dir has c1
lxd-zfs will be a backup house for c1

Initiate copy from lxd-zfs to lxd-dir:
lxc copy --refresh --instance-only lxd-dir:c1 c1-backup

Once copy is complete:
lxc snapshot c1-backup $(date)

If disaster happens or you just want a older test client:
lxc info c1-backup or zfs list -t snapshot {storagepath}
#Lists a bunch of snapshots
Pick a snapshot and clone it:
lxc copy c1-$(date yesterday) lxd-dir:c1-restore-$(date yesterday)

Is there some setting I’m missing to stop lxd from deleting snapshots from non zfs sends?
I know there’s volume.zfs.remove_snapshots but the default is false which is interesting that it still deletes the snapshots. I would assume having that false would mean no snapshots get deleted.

The behaviour of copy --refresh is to bring the target into sync with the source. So if there are snapshots on the target that don’t exist on the source they are removed.