SAT resolution failure
In the [nim-libp2p](https://github.com/status-im/nim-libp2p) repository, dependency resolution is failing when using the SAT dependency solver.

These are the scenarios:
1. `nimble --solver:legacy install`
    - Works
2. `nimble --solver:sat install`
    - Fails
3. `nimble install_pinned` (a custom mechanism that installs fixed versions from a `.pinned` file into a local `nimbledeps` directory, which is recreated each time it's run)
    - The outcome varies depending on how it's run:
        a) When run with legacy (`nimble --solver:legacy install_pinned`), it works.
        b) When run with SAT (`nimble --solver:sat install_pinned`), it fails.
        c) Interestingly, if you first run it with legacy and then run `nimble --solver:sat check`, the check passes.

At first I thought this was due to SAT not being able to resolve the dependencies in `libp2p.nimble`, but scenario `3c` made me think that's not quite it.

I'm not sure anymore if this happens because our dependencies are actually unsolvable or there's a situation SAT just can't handle. Any ideas?