AS-16 Refactor createSnapshotPromise - needs further work