I found a solution, but it is not ideal. The problem appears to be with active power state management and NVMe and the PCI bus according to Google. Until that bug gets fixed, you can get sleep/wake to work by editing your /etc/default/grub
file to include in the default kernel arguments:
GRUB_CMDLINE_LINUX_DEFAULT=" ...stuff... pcie_aspm=off"
This turns off active state power management of some aspect of the PCI interface. This solved the problem for me completely. The downside is that there is no longer active power management of the PCI interface and so the power consumption of the laptop is unnecessarily high. I don't know how much of a drain this is though.
I have installed on my machine 'tlp' power management, and then installed the ACPI tools to control the CPU frequencies that way (you have to set intel_pstate=passive in the kernel parameters to use ACPI to control the CPU frequencies). Using 'powertop' shows my idle usage on battery to be about 5 watts. Some people have got their power consumption down to 4 or 5 watts even when they are doing something on the machine, so it seems there is more work to do to save battery life as long as we turn off aspm.
Update: 02 Dec 2019. You can still use intel_pstate driver to control frequencies. In this case don't set intel_pstate to passive, just don't set it. To set cpu frequencies, see the post here: can't control cpu frequencies in 19.10 on 7390 xps 13 2-in-1
With the cpu frequency set to 400MHz on battery, I can get my power consumption down to about 3.5 Watts at idle.