main
Change progress reporting to report done on dispose
Reapply "Update methods to be `async`." (#81808)
adjust comments
Only report work done progress if the client supports it