I'm not sure if this is a bug or by design, but it seems unintuitive (at least for me).
My current checkout work flow is: login,address_cart,shipping_cart,payment_cart_fields_status_confirm,end
At the Address step, there is already a Shipping amount shown in the cart underneath the address area. This shipping amount may or may not be valid for the selected address. It seems that a better solution would be to not display any shipping information in the cart until the Shipping step is reached.
An example would be a customer with both a local and international address, as is very likely in my sales area. If the shipping amount in the initial cart display (Address step) is based on the local address, but the customer changes the shipping address to his international location, the amount is not updated in the cart and might not even be a valid choice for the change in address.
It would seem more logical for any work flow that has separate Address and Shipping steps, to not include the shipping amount in the cart until the Shipping step has been reached.
Regards,
Ed