For situations like #2039 , where the user does stack install a-non-stackage-hackage-package, the issue is that we don't know what package versions to use for things outside our resolver. As discussed in that issue, one way to resolve this is to support a --solver flag and create a temporary sandbox for this particular build.
Another approach might be to actually just use the stack.yaml included with the package, if it exists. This
might be a reason to include it by default in sdists: #2105
This way we can directly tell the user how the package author intended for it to be installed.
Open questions: What about multiple stack files?