Use when
- A system operation has a measurable total or bounded progress value.
- Users benefit from knowing how much work has completed or remains.
- The operation may take long enough that waiting, cancelling, retrying, or leaving safely matters.
- The product can report honest active, success, error, cancelled, paused, or background states.