Wrap() and Wrapf() are good example of annotating error with stack trace and given error message. Wrap() and Wrapf() are best option if errors comes in different labels(different function). If errors are in same label(same function) then we can have an option to merge those errors in a single error annotating with extra message.