Warning: opinions inbound I clicked one part (enums) and noticed a pretty glaring issue. The way you are doing enums is really _not_ conventional Go code and probably not something I would allow past a PR review. I’m saying this as someone who has built many production systems with Go and taught it to many devs coming from Java. This guide is more in-line with how Go enums should be designed: https://blog.learngoprog…
iota/const type enums are covered in another section: https://github.com/betty200744/ultimate-go/blob/master/Langu... The code in the section labeled Enums looks like it is straight out of the Protobuf compiler. grpc is referenced later on, so that structure pattern may be related.
TLDR: Before going down that route, you should make sure you really REALLY need them. Someone learning Go for the first time probably doesn't.