The stack.yaml has a resolver of lts-15.3, which is apparently ghc-8.8.2. If you run stack build --verbose, you can see the nix-shell command line it is using. Part of which likely calls with (import <nixpkgs> {}); let inputs = [haskell.compiler.ghc882 git gcc gmp]; ..., and therefore tries to use ghc882.
You have three main solutions:
Like @NobbZ says, run stack with a Nixpkgs version that contains ghc-8.8.2, possibly with the flag --nix-path nixpkgs=https://github.com/NixOS/nixpkgs/archive/0ed2140a.tar.gz. Or use a related option in stack.yaml.
There’s some stack option that says, “just use whatever GHC you find on the PATH”. You could enable this option, and just pull ghc884 into your environment. A Haskell project that builds with ghc-8.8.2 is likely to also work when building against ghc-8.8.4. Current Nixpkgs will all likely have ghc884.
Update your project to use a later GHC / stackage resolver, which will more likely be in current Nixpkgs.
If this were me, I would go with the --nix-path choice first since it is so easy. If that works, I’ll probably create a stack-shell.nix.
Then when I had time, at some point I’d try to update to a more recent GHC or stackage resolver.