I’ve found that the grade causes a weird workflow with continuous delivery.
When you snap a project, you will usually start with
grade: devel. You set up build.snapcrat.io so it will continuously land on devel, no issues there. Then you are ready to make a release, you make a github tag for v1.0rc1,
version: git takes care of setting the right version for the snap and v1.0rc1 ends up in edge automatically, all good things.
The problem is that now you can’t move v1.0rc1 to candidate because it still has
grade: devel. You would have to change it to
grade: stable, which means one manual step in the otherwise fully automated continuous delivery process. And let’s say you finish the v1.0 release and it’s in stable, so next you start working on unstable features for v1.1. What do you do now? Leave
grade: stable even if the resulting snap is not stable? Move it back to
grade: devel and return to the same problem when v1.1rc1 is read for the candidate channel?
The grade has been useful for me when I do the delivery manually. But in continuous delivery it has not. I’m +1 on removing it. Or at least finding a clever way to mark the snap as stable if there’s a git tag (which won’t work for all the cases, only for git snaps obviously).