Fulfillment Order DeliveryMethod Not Getting Updated

Currently on GQL API 2024-07 (working on migrating to 2025-04 :slightly_smiling_face:)

I’m noticing that the fulfillmentOrder.deliveryMethod.serviceCode gets set when an order is created, using data from order.shipping_lines, but it never seems to get updated when the order.shipping_lines change.

For example, I create an order with “Standard Shipping”, and a fulfillment order gets created with deliveryMethod.serviceCode: "Standard Shipping". But if I cancel the fulfillment request on that fulfillment order, edit the shipping on the order to something like “Economy Shipping”, then submit a new fulfillment request the new fulfillment order that gets generated still has deliveryMethod.serviceCode: "Standard Shipping" even though the order shipping_lines shows “Economy Shipping” as the most recent in the array of values, and the “Standard Shipping” shipping line is marked as is_removed: true.

When the new fulfillment order gets generated I would expect it to have the new shipping info of deliveryMethod.serviceCode: "Economy Shipping", but that’s not happening. Is this a bug, or intended behavior? If it’s the latter, then what is the point of the deliveryMethod field on fulfillment orders?