Package clock supplies injectable application time. Lifecycle safety deadlines
use real context deadlines and are intentionally independent of frozen clocks.
type Clock interface {
// Now returns the current application time. Now() time.Time
}
Clock returns the current application time. Consumers pass it explicitly to
operations needing deterministic time rather than replacing process globals.