I’m not sure aliases solve the reference problems, it depends how things are invoked, usually snap commands should invoke each other using internal names, the external commands/names are not always available.
That post about aliases is out-of-date as well, this has information about more recent changes/workings: Improving the aliases implementation - #42 by jdstrand