Snapd incorrectly reporting tracking


I have what looks like a strange issue. snap info corsixth says tracking: edge yet also says installed: v0.62 (x7) 119MB - - these two statements are mutually exclusive, surely? I can’t both be tracking edge and have a locally installed “x” snap installed, can I? I may have had the edge channel installed at some point before testing a locally installed snap, but that’s clearly not the case now.

$ snap info corsixth
name:      corsixth
summary:   Open source clone of Theme Hospital
publisher: –
license:   unset
description: |
  CorsixTH aims to re-implement the game engine of Theme Hospital, and be able to load the original
  game data files. This means that you will need a purchased copy of Theme Hospital, or a copy of
  the demo, in order to use CorsixTH. After most of the original engine has been re-implemented in
  open source code, the project will serve as a base from which extensions and improvements to the
  original game can be made. We use graphics, sound and other data from the original game so one of
  the following is required Original game CD from eBay etc. or your dusty bookshelf A download from or Origin
  - corsixth
tracking:     edge
refresh-date: 38 days ago, at 23:48 BST
  stable:    v0.62 2019-04-18 (323) 119MB -
  candidate: ↑                            
  beta:      ↑                            
  edge:      v0.63 2019-05-24 (384) 119MB -
installed:   v0.62             (x7) 119MB -

$ snap version
snap    2.39
snapd   2.39
series  16
neon    18.04
kernel  4.18.0-20-generic

Is this expected, or a bug?


“tracking” indicates the tracking channel which means the channel that will be used by any actual store refresh if not overridden, as set at installation or via a refresh/switch. If there’s a current local revision automatic refresh will not happen but it will be used by a manual snap refresh --amend corsixth. Should we use a different wording if the snap has a local current revision? perhaps but it’s a case where there’s a trade off between consistency and non creating output variation vs absolute clarity. Local revisions are not a typical state of things.