I created a rule that checks for the quantity of a product while adding to cart and while proceeding to the second step of checking out.  The action sends a warning message to the site that says you can't have over one qty of the 'gift card' product type and is also supposed to set the quantity back to 1.  The problem is that while the message appears when it is supposed to, the quantity is not being set back to 1 at any point.  I made sure that I also save the cart after changing quantity as well.

Here is the rule export:

    { "rules_1_gift_card_per_cart" : {
        "LABEL" : "1 Gift Card per cart",
        "PLUGIN" : "reaction rule",
        "REQUIRES" : [ "rules", "rules_conditional", "commerce_cart", "commerce_rules_extra" ],
        "ON" : [ "commerce_cart_product_add", "line_item_quantity_changed" ],
        "IF" : [
          { "data_is" : { "data" : [ "commerce-product:type" ], "value" : "gift_certificate" } },
          { "AND" : [
              { "data_is" : {
                  "data" : [ "commerce-line-item:quantity" ],
                  "op" : "\u003E",
                  "value" : "1"
                }
              }
            ]
          }
        ],
        "DO" : [
          { "CONDITIONAL" : [
              {
                "IF" : { "data_is" : {
                    "data" : [ "commerce-line-item:quantity" ],
                    "op" : "\u003E",
                    "value" : "1"
                  }
                },
                "DO" : [
                  { "data_set" : { "data" : [ "commerce-line-item:quantity" ], "value" : "1" } },
                  { "entity_save" : { "data" : [ "commerce-order" ] } },
                  { "drupal_message" : { "message" : "Only one gift card per order.", "type" : "warning" } }
                ]
              }
            ]
          }
        ]
      }
    }