Here is my theory what happend:
"""
- user has rev 3 installed
- store is modified (e.g. by the krita owner) to make rev 3 unavailable in the stable channel
- on the next refresh snapd gets "2" as the latest snap in stable
- snapd install "2" (because that is what the store told it)
- store is modified again to make rev 3 available in stable again
- on the next refresh snapd gets "3" again and tries to refresh to that
- it fails because 3 is already installed, however it should not fail but instead just link rev 3 instead of rev 2.
"""
once we implement the last step we also solve the issue when alternating between channels.
Here is my theory what happend:
"""
- user has rev 3 installed
- store is modified (e.g. by the krita owner) to make rev 3 unavailable in the stable channel
- on the next refresh snapd gets "2" as the latest snap in stable
- snapd install "2" (because that is what the store told it)
- store is modified again to make rev 3 available in stable again
- on the next refresh snapd gets "3" again and tries to refresh to that
- it fails because 3 is already installed, however it should not fail but instead just link rev 3 instead of rev 2.
"""
once we implement the last step we also solve the issue when alternating between channels.