To be clear, it is a design goal of snapd that application snaps can run if snapd is unable to startup properly due to a bug or something. This is with the obvious exception that @ogra points out that if your snap uses
snapctl or otherwise tries to interact with snapd and snapd is dead, well then that is not going to work, but you could always make your application extra robust against this case as well if you really are concerned about robustness.
So TLDR, yes you should be okay to rely on your app snap service to be able to run even if the snapd service gets botched somehow. That’s not to say that there can’t ever be bugs where an app snap does fail to start because snapd is botched, but that we will try very hard to not have those bugs
However, we would just like to make clear that it is not a goal of snapd to enable running snaps without snapd available at all, snaps are not something that is separate from snapd that you could install and then remove or disable snapd at that point. There are various reasons why, but the gist of it is that snapd should be able to try and start up so that it could minimally refresh it’s state with the store/internet in the form of assertions and also to apply updates in the form of refreshes.