)]}'
{
  "commit": "f56234a4ec41ffc30f8a6063703be224519d09d4",
  "tree": "4b28881a0b7f0acbc0da8b3ea307fb8f39b0c5ea",
  "parents": [
    "39976fe4f9bd686d705c179cd4b13b0e273c1395"
  ],
  "author": {
    "name": "Per K",
    "email": "perkj@webrtc.org",
    "time": "Wed Oct 07 12:48:30 2026"
  },
  "committer": {
    "name": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Oct 07 16:58:11 2026"
  },
  "message": "SCReAM: Scale l4s_alpha update with steps_per_rtt and set g_down to 1/16\n\nPreviously, ScreamV2::UpdateL4SAlpha updated l4s_alpha on every feedback\npacket using fixed EWMA gain factors (l4s_avg_g_up \u003d 1/8,\nl4s_avg_g_down \u003d 1/128) regardless of the RTT. Because feedback arrives\napproximately every reaction_interval (25 ms) while ECN-CE marking and\nwindow adjustments occur over an RTT, updating l4s_alpha with unscaled\ngains caused l4s_alpha to react multiple times per RTT on longer-RTT\npaths, and the slow decay factor (1/128) kept l4s_alpha elevated well\nabove the actual CE marking fraction between marking events.\n\nThis change:\n1. Updates the default value of l4s_avg_g_down from 1/128 to 1/16 so\n   l4s_alpha decays faster when CE marking subsides.\n2. Scales both l4s_avg_g_up and l4s_avg_g_down by\n   steps_per_rtt \u003d max(1.0, rtt / reaction_interval) in UpdateL4SAlpha\n   (gated behind default-enabled field trial parameter\n   ScaleL4sAlphaWithRtt).\n\nScaling the EWMA gain factors by steps_per_rtt ensures that l4s_alpha\nconverges over max(reaction_interval, rtt) rather than per feedback\npacket, better matching TCP Prague which updates alpha once per RTT\n(with a minimum interval of 25 ms) using g \u003d 1/16.\n\nBug: webrtc:447037083\nChange-Id: Ie9c81e26a4932117c3d5a673d1f9c962e9533bb5\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/507841\nCommit-Queue: Per Kjellander \u003cperkj@webrtc.org\u003e\nReviewed-by: Rasmus Brandt \u003cbrandtr@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#48824}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ec23cbb2ed222242110843047dcdc22df4d0009e",
      "old_mode": 33188,
      "old_path": "modules/congestion_controller/scream/scream_v2.cc",
      "new_id": "138efdd4b08a2d4f3eb2abf75eb8597c2f9399f3",
      "new_mode": 33188,
      "new_path": "modules/congestion_controller/scream/scream_v2.cc"
    },
    {
      "type": "modify",
      "old_id": "87c2f3750fa62ca63feab456988605728524908b",
      "old_mode": 33188,
      "old_path": "modules/congestion_controller/scream/scream_v2.h",
      "new_id": "353ddeb38401c16bdc91664c3069551338b3b8b6",
      "new_mode": 33188,
      "new_path": "modules/congestion_controller/scream/scream_v2.h"
    },
    {
      "type": "modify",
      "old_id": "8e1e4df1ab6fcb267a6b7df0a2055981dea814b5",
      "old_mode": 33188,
      "old_path": "modules/congestion_controller/scream/scream_v2_parameters.cc",
      "new_id": "5887978c57b8b2d72e580931ac765df1463179c2",
      "new_mode": 33188,
      "new_path": "modules/congestion_controller/scream/scream_v2_parameters.cc"
    },
    {
      "type": "modify",
      "old_id": "a919c675a2a678b36d1f957755ba57bfd3d7b247",
      "old_mode": 33188,
      "old_path": "modules/congestion_controller/scream/scream_v2_parameters.h",
      "new_id": "3b6c5905d484ebeaf9ec023ebe590ea8555906ae",
      "new_mode": 33188,
      "new_path": "modules/congestion_controller/scream/scream_v2_parameters.h"
    },
    {
      "type": "modify",
      "old_id": "184cf188765078bfb7058dbcb8b5f12306c0bf97",
      "old_mode": 33188,
      "old_path": "modules/congestion_controller/scream/scream_v2_unittest.cc",
      "new_id": "573334bbca4aa6ec89435b5c3359d99be59f67fb",
      "new_mode": 33188,
      "new_path": "modules/congestion_controller/scream/scream_v2_unittest.cc"
    }
  ]
}
