time.Now in go returns both the system time (i.e. if you do '.Seconds' or 'String' on that time, you get a wall clock time), but also returns a monotonic time (if you subtract or compare two times, it uses monotonic time).
Go's time package isn't just systemtime, and there's really not an alternative to it in the language. You're arguing against a strawman.
Maybe you're using time-package right and avoiding the above, maybe not. Timestamp usage is best to avoid for anything business critical.
I assumed this package about mocking time was _not_ about mocking timestamps but program behavior. For example, if I have a loop that says "every 20 seconds, do X", and I want to test that, I now have to mock time.
That's not about timestamps, that's about comparing monotonic clocks for "20s have elapsed".
The go time package doesn't just give you a timestamp to do something with, it also lets you compare times. That was my point.
It sounds like your original comment was arguing that mocking time isn't useful, so I assumed you meant all uses of time.
Mocking system clocks for testing just confirms that truth. If you can't think of an alternative to using some variation of systemtime function for business operational rules, I'm not really sure what you're pushing to production.