Propagate cancellation through your stack
context.Context carries deadlines, cancellation signals, and request-scoped values. Pass it as the first parameter: func Do(ctx context.Context, ...).
Best practice: Never store Context in a struct. Cancel functions must be called — use defer cancel().
Output
Press Run to execute your code.