)]}'
{
  "commit": "8feab7127e4d24743267c21dd65c511bbd21a549",
  "tree": "f671ebc9e81ef075e8df297e35f62d82bc8888bd",
  "parents": [
    "ebe10d973e11cb6a6c41c8a5c21cd2f5bc001faa"
  ],
  "author": {
    "name": "dmcardle",
    "email": "dmcardle@google.com",
    "time": "Wed Dec 10 10:32:58 2025 -0800"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Wed Dec 10 10:34:00 2025 -0800"
  },
  "message": "Avoid computing a negative RTT in BandwidthSampler::OnPacketAcknowledged()\n\nIt\u0027s technically possible for the ACK time to precede the corresponding packet\u0027s send time. I\u0027ve created an Envoy PR that prevents this from occurring: https://github.com/envoyproxy/envoy/pull/42135\n\nThis CL adds a flag-protected branch that prevents BandwidthSampler from computing a negative RTT. It also adds a code count for the condition that the ACK and send time are out of order: quic_bandwidth_sampler_ack_time_before_sent_time.\n\nProtected by quic_reloadable_flag_quic_bandwidth_sampler_guard_rtt_subtraction.\n\nPiperOrigin-RevId: 842784781\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "836aa83c6b09fc036a09f908f21c4da2b52da56e",
      "old_mode": 33261,
      "old_path": "quiche/common/quiche_feature_flags_list.h",
      "new_id": "de1359edf546f97b725de5c8bd62cf6e8c3ee755",
      "new_mode": 33261,
      "new_path": "quiche/common/quiche_feature_flags_list.h"
    },
    {
      "type": "modify",
      "old_id": "1493c088bce104fb53ea7994bb8df931ba4bae38",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/congestion_control/bandwidth_sampler.cc",
      "new_id": "5f7f9396ee74eca638abce1188701af3abc02a68",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/congestion_control/bandwidth_sampler.cc"
    },
    {
      "type": "modify",
      "old_id": "50027dd3e04eb224fac1a5c94a4ff75fc065e178",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/congestion_control/bandwidth_sampler_test.cc",
      "new_id": "302815cd9fc348377e5ed7da6112c8137dfbe532",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/congestion_control/bandwidth_sampler_test.cc"
    },
    {
      "type": "modify",
      "old_id": "9004bff9aec8f7e77d73dcb1f196463a36a863a9",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/congestion_control/bbr_sender.cc",
      "new_id": "558936909d0622254ea046dfe76c6bbc70baf10d",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/congestion_control/bbr_sender.cc"
    },
    {
      "type": "modify",
      "old_id": "9dcdceafde0388ecae2c4531b501b1e7be03dbbc",
      "old_mode": 33188,
      "old_path": "quiche/quic/core/quic_bandwidth.h",
      "new_id": "2a8be3395847eae289d89e10a64f9b376dfb40e1",
      "new_mode": 33188,
      "new_path": "quiche/quic/core/quic_bandwidth.h"
    }
  ]
}
