)]}'
{
  "commit": "366b463b2e642d8db14e298dc15f527d19626bd5",
  "tree": "7250bd0eaf41d728d15802f94e9d4def3ccb95bc",
  "parents": [
    "200d4708860fcb5f5510092b24391072901e7f17"
  ],
  "author": {
    "name": "dschinazi",
    "email": "dschinazi@google.com",
    "time": "Thu Nov 14 02:16:31 2024 -0800"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Thu Nov 14 02:17:37 2024 -0800"
  },
  "message": "Refactor QuicChaosProtector\n\nThis CL refactors the chaos protector to have it ingest an array of QuicFrames instead of a single QuicCryptoFrame and padding. This CL does not change behavior for existing code, it prepares it for a future CL that will add multi-packet chaos protection.\n\nPortions of this change were written by wub@, in particular:\n- Added code to prevent reordering of ACK frames, to minimize impact on congestion control.\n- Added unit tests for the cases when input frames are `[crypto, crypto, padding]` or `[ack, crypto, padding]`.\n\nProtected by FLAGS_quic_reloadable_flag_quic_enable_new_chaos_protector.\n\nPiperOrigin-RevId: 696443185\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "09bf65343576a21787c57a3d55289aa484666e8f",
      "old_mode": 33261,
      "old_path": "quiche/common/quiche_feature_flags_list.h",
      "new_id": "3217e69474a3e35b7f4cc60d5d1de2600ebdfe6d",
      "new_mode": 33261,
      "new_path": "quiche/common/quiche_feature_flags_list.h"
    },
    {
      "type": "modify",
      "old_id": "6760df4c8bb059b7f93ce9de08bd4be4bd2d5d56",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_chaos_protector.cc",
      "new_id": "f69c4efa58077e0788eb3305b29047090da665ee",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_chaos_protector.cc"
    },
    {
      "type": "modify",
      "old_id": "f053f89051de238a32fadf9d757354bb0e6dc09b",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_chaos_protector.h",
      "new_id": "2456b42083b39fc8441abb6ee28baf2d40023a96",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_chaos_protector.h"
    },
    {
      "type": "modify",
      "old_id": "2131cb472de855282b2e4fad8f3b915536c0928d",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_chaos_protector_test.cc",
      "new_id": "fe82c47a4f855fa175c7eb7484f11f7996abdb73",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_chaos_protector_test.cc"
    },
    {
      "type": "modify",
      "old_id": "f17a733d7e420341823b80a4661f94259d13f9a0",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_packet_creator.cc",
      "new_id": "6f7187e0d8be9c9dc58a4082a631feac94429f70",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_packet_creator.cc"
    },
    {
      "type": "modify",
      "old_id": "6d177d160a86c987385d5cbea6a2190b9461d92a",
      "old_mode": 33188,
      "old_path": "quiche/quic/test_tools/simple_quic_framer.cc",
      "new_id": "13b21f6c8d5d2a0b9827527cb6411d6969e5de25",
      "new_mode": 33188,
      "new_path": "quiche/quic/test_tools/simple_quic_framer.cc"
    },
    {
      "type": "modify",
      "old_id": "a748f4c400b049e2971ab8571889e8793c736696",
      "old_mode": 33188,
      "old_path": "quiche/quic/test_tools/simple_quic_framer.h",
      "new_id": "53f883e461920e4fda56029e9cd2f8a29e00c506",
      "new_mode": 33188,
      "new_path": "quiche/quic/test_tools/simple_quic_framer.h"
    }
  ]
}
