We should write a jstest that does an end-to-end sharded cluster non-PIT restore. This test will need to open backup cursors on each shard, copy backups, retrieve the maxCheckpointTs and perform the $backupCursorExtend behavior to get the sharded backup data to a consistent point in time. Then, we should restore to the maxCheckpointTs using magic restore.
This ticket can probably utilize some helpers in sharded_backup_restore.js. We may need to add / modify some helpers to make them work for magic restore. If so, we can add any utility functions in the backup_utils.js file.