{
  "commits": {
    "127b822e82a8": {
      "author": "rperta",
      "avatar": "https://www.gravatar.com/avatar/95787d55656c719bd5b0c6754f5449a3?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 692cde2b45b448b71f5712f400d89bb2b015bfd9.\n\nRevert \"Bug 2051882 - Part 4: Don't trigger GC slices if there's no foreground work to do r=sfink\"\n\nThis reverts commit 358ff39ba84de68e87dea2eb6eb01cf4aea175dc.\n\nRevert \"Bug 2051882 - Part 3: Limit BG_TASK_FINISHED slice time r=sfink\"\n\nThis reverts commit aac51b3f3b8f6a960a36dda85f3dc02c3478058a.\n\nRevert \"Bug 2051882 - Part 2: Don't mark concurrently if no work for it to do r=sfink\"\n\nThis reverts commit 138b1734fba10844abb4e27fa8b12e3ba02ac6a9.\n\nRevert \"Bug 2051882 - Part 1: Fix handling of budget expiry during main thread only marking r=sfink\"\n\nThis reverts commit 65a949f6253e64149cb89ae2f46b1248275d4330.",
      "email": "rperta@mozilla.com",
      "hash": "127b822e82a83eac5bf2cd739b78209f89267086",
      "subject": "Revert \"Bug 2051882 - Part 5: Try to do less work from unscheduled slices r=sfink\" on dev request"
    },
    "2925a90cab86": {
      "author": "Silaghi",
      "avatar": "https://www.gravatar.com/avatar/81acf29bb88b2a0ded61f47b93c59dea?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit a8940b55ea7ba4cd612c0a77a1f4b3b3f1ca97b8.",
      "email": "asilaghi@mozilla.com",
      "hash": "2925a90cab865c51bd7cce2a3ba4f1acbed11d66",
      "subject": "Revert \"Bug 2043221: Cap PUDPSocket actors per PBackground r=necko-reviewers,valentin,bwc\" for causing mda failures at peerConnection_extmapRenegotiation.html"
    },
    "3d1c699cbb61": {
      "author": "Alexandru Marc",
      "avatar": "https://www.gravatar.com/avatar/f90e8bfbc9c1383d73053a8809b77e48?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit e594cee336ba7efd108b13c004cde1f7f03211a6.\n\nRevert \"Bug 2049329 - Part 3: Make sure HLS is treated as a media source. r=dom-core-reviewers,necko-reviewers,media-playback-reviewers,jolin,smaug,kershaw\"\n\nThis reverts commit 53e0aeeec0655d1aded79bd242c28b38328a6339.\n\nRevert \"Bug 2049329 - Part 2: Add sniffer for VIDEO_MPEG_TS. r=media-playback-reviewers,jolin\"\n\nThis reverts commit eab3cd609310e60e11c6020fd92d6673475be31b.\n\nRevert \"Bug 2049329 - Part 1: Add ORB HLS tests. r=dom-core-reviewers,smaug\"\n\nThis reverts commit 8beae29f4a116be1ac3007282bf70213d1aa2bed.",
      "email": "amarc@mozilla.com",
      "hash": "3d1c699cbb6111768d667e1665cd75e64e6e6f5d",
      "subject": "Revert \"Bug 2049329 - Part 4: Make GeckoHlsPlayer handle failure for bad resources. r=geckoview-reviewers,media-playback-reviewers,jolin,owlish\" for causing wpt failures @ sandboxed-video.html"
    },
    "41f7c8da1238": {
      "author": "Alexandru Marc",
      "avatar": "https://www.gravatar.com/avatar/f90e8bfbc9c1383d73053a8809b77e48?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 914b115b583c23665239de78e1a9757c01fdeb8f.\n\nRevert \"Bug 2048342 - Part 7: Refresh readiness conditions once a protected frame is produced for MFCDM. r=media-playback-reviewers,jolin\"\n\nThis reverts commit 0d103762920cc55e8b2ba2fc14834247f749606e.\n\nRevert \"Bug 2048342 - Part 6: Bounded last-resort recovery for protected-activation errors in MFCDM. r=media-playback-reviewers,jolin\"\n\nThis reverts commit e0029579e886aa16ceefcd1cf5f6667a3bb4ba83.\n\nRevert \"Bug 2048342 - Part 5: Remove the unused mHardwareResetInProgress flag. r=media-playback-reviewers,jolin\"\n\nThis reverts commit 5289afc84213f45c15668ef56ad189301837cbfa.\n\nRevert \"Bug 2048342 - Part 4: Hold protected topology activation until readiness settles for MFCDM. r=media-playback-reviewers,jolin\"\n\nThis reverts commit 251dccef4d647f89dc5c93f8caf2561d9ea94bac.\n\nRevert \"Bug 2048342 - Part 3: Pre-warm HDCP at CDM init for MFCDM protected playback. r=media-playback-reviewers,jolin\"\n\nThis reverts commit b09dc16b227a32c9b0b83fb63a3ef5e232ec7ce0.\n\nRevert \"Bug 2048342 - Part 2: Record protected-playback readiness as it is established for MFCDM. r=media-playback-reviewers,jolin\"\n\nThis reverts commit 6fd97f909e6baa481d7069e378790312bc401b2b.\n\nRevert \"Bug 2048342 - Part 1: Track protected-playback readiness conditions for MFCDM. r=media-playback-reviewers,jolin\"\n\nThis reverts commit 52d7ce66271aa5fc437139c497a0a9a3543b84f4.",
      "email": "amarc@mozilla.com",
      "hash": "41f7c8da1238158651ecbd450f65d74dd9c03dd1",
      "subject": "Revert \"Bug 2048342 - Part 8: Record a protected-playback readiness Glean probe for MFCDM. r=media-playback-reviewers,jolin\" for causing build bustages @ winnt.h("
    },
    "44123fd585b9": {
      "author": "pstanciu",
      "avatar": "https://www.gravatar.com/avatar/cd361de239f63fe1459e93f742450a3d?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 41b8d534060bf54949271e2396c2d64fed3394af.",
      "email": "pstanciu@mozilla.com",
      "hash": "44123fd585b91f81a0fc3f6120faca774d8111b5",
      "subject": "Revert \"Bug 1425832 - stop using nsIPrompt directly in pippki.sys.mjs r=nkulatova\" for causing causing LeakSanitizer failures"
    },
    "5748b16d3f0f": {
      "author": "Serban Stanca",
      "avatar": "https://www.gravatar.com/avatar/977312186062f329a7e4302ab972ae7b?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 4eb5d723d627edec42ca3e5d606e1227c656dfca.",
      "email": "sstanca@mozilla.com",
      "hash": "5748b16d3f0fa55ff6fd139e843e6d97e791c573",
      "subject": "Revert \"Bug 2035622 - Always show an add shortcut button for New Tab shortcuts. r=thecount\" for causing M-trainhop mochitests failures."
    },
    "7eba9016c92f": {
      "author": "iulian moraru",
      "avatar": "https://www.gravatar.com/avatar/348b805af88f773829064778b66be468?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 3642578ee50513d9a1405ab41bcea53bbcc308be.",
      "email": "imoraru@mozilla.com",
      "hash": "7eba9016c92feb7cd668be988743e6927c31440e",
      "subject": "Revert \"Bug 2052554 - [IPC Urlbar] Phase 6: Make global-action results wire-safe. r=mbeier,urlbar-reviewers\" for causing xpcshell failures on test_quicksuggest.js."
    },
    "8534a134a833": {
      "author": "rperta",
      "avatar": "https://www.gravatar.com/avatar/95787d55656c719bd5b0c6754f5449a3?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 438f1c55749a1d14e6706202f425165cbae3a935.",
      "email": "rperta@mozilla.com",
      "hash": "8534a134a83391e918a65562e6dc5bb2f48e203b",
      "subject": "Revert \"Bug 2050065 - [devtools] Pass binding element instead of pseudo element to InspectorUtils.getComputationSteps. r=devtools-reviewers,ochameau.\" for causing dt failures at browser_styleeditor_fetch-from-netmonitor.js"
    },
    "8f50fa878b1f": {
      "author": "rperta",
      "avatar": "https://www.gravatar.com/avatar/95787d55656c719bd5b0c6754f5449a3?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit e81f945b978044526cb43a8f32641ad83794d77e.",
      "email": "rperta@mozilla.com",
      "hash": "8f50fa878b1f8a56550581a30bccd42b202586d7",
      "subject": "Revert \"Bug 2051247 - [devtools] Show (correct) stylesheet text content when using Local Mode or Network override. r=devtools-reviewers,jdescottes\" for causing multiple dt failures"
    },
    "9ee659319092": {
      "author": "Alexandru Marc",
      "avatar": "https://www.gravatar.com/avatar/f90e8bfbc9c1383d73053a8809b77e48?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 416256b8e0b08784f1ece7dcaadeb3f2d1a1d2ac.",
      "email": "amarc@mozilla.com",
      "hash": "9ee659319092c0f2feda50c081fc5f1f61feeed6",
      "subject": "Revert \"Bug 2022527 - Remove the hack from bug 2007147. r=dao,urlbar-reviewers\" for causing bc failures @ browser_qrcode_share_menu"
    },
    "D186734": {
      "author": "Dão Gottwald",
      "avatar": "https://www.gravatar.com/avatar/45dfe136efbb8e5f89eb0b21775ab195?d=identicon\u0026s=64",
      "cl": "D186734",
      "clUrl": "https://phabricator.services.mozilla.com/D186734",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D186734",
      "email": "dao@mozilla.com",
      "hash": "9bb0aa2ab785c69f91415f9cd0d03ef2b1e614ca",
      "subject": "Bug 1849907 - Convert `selected` attribute to be a standard boolean attribute. r=tabbrowser-reviewers,sthompson,accessibility-platform-reviewers,Jamie"
    },
    "D216402": {
      "author": "serge-sans-paille",
      "avatar": "https://www.gravatar.com/avatar/9cdfdfc05249440f57269a0d26487253?d=identicon\u0026s=64",
      "cl": "D216402",
      "clUrl": "https://phabricator.services.mozilla.com/D216402",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D216402",
      "email": "sguelton@mozilla.com",
      "hash": "9c3f057037c9040e18b7e35622bd765f01a989e5",
      "subject": "Bug 1907555 - Use a list representation when passing CC, CXX and the likes from moz.configure to the build system r=glandium"
    },
    "D292251": {
      "author": "Randell Jesup",
      "avatar": "https://www.gravatar.com/avatar/707a3249883bc1c42dbd54339c8daf44?d=identicon\u0026s=64",
      "cl": "D292251",
      "clUrl": "https://phabricator.services.mozilla.com/D292251",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D292251",
      "email": "rjesup@mozilla.com",
      "hash": "bfcda2c537893983592e512683fed8505099090a",
      "subject": "Bug 2022382: Fix cookie handling r=cookie-reviewers,baku,valentin"
    },
    "D293448": {
      "author": "Andreas Farre",
      "avatar": "https://www.gravatar.com/avatar/5251913e02e39fe0d34962cae6373a9b?d=identicon\u0026s=64",
      "cl": "D293448",
      "clUrl": "https://phabricator.services.mozilla.com/D293448",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D293448",
      "email": "farre@mozilla.com",
      "hash": "1f8a62d7ada1f386681215f990fac993e9a6933b",
      "subject": "Bug 2029482 - Disallow sending isInDevToolsContext to parent. r=necko-reviewers,valentin"
    },
    "D299174": {
      "author": "Moritz Beier",
      "avatar": "https://www.gravatar.com/avatar/db9378640c16b8cdcfcebed97713987a?d=identicon\u0026s=64",
      "cl": "D299174",
      "clUrl": "https://phabricator.services.mozilla.com/D299174",
      "description": "Changing the popupshowing listeners to contextmenu is necessary because one of them hides the view which calls hidePopover on the urlbar, preventing the context menu from showing because of bug 2037468. Using a contextmenu listener instead calls hidePopover before the contextmenu starts showing, avoiding the bug.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D299174",
      "email": "mbeier@mozilla.com",
      "hash": "416256b8e0b08784f1ece7dcaadeb3f2d1a1d2ac",
      "subject": "Bug 2022527 - Remove the hack from bug 2007147. r=dao,urlbar-reviewers"
    },
    "D302732": {
      "author": "Mark Banner",
      "avatar": "https://www.gravatar.com/avatar/97526b10278bf7be90be23244678debe?d=identicon\u0026s=64",
      "cl": "D302732",
      "clUrl": "https://phabricator.services.mozilla.com/D302732",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D302732",
      "email": "standard8@mozilla.com",
      "hash": "688563a28cbcccd676369e1285f769c5bfa8f5cc",
      "subject": "Bug 2042698 - Remove some Preferences.sys.mjs APIs that are only used in test code or not at all. r=firefox-desktop-core-reviewers ,jdescottes,mossop"
    },
    "D302915": {
      "author": "Randell Jesup",
      "avatar": "https://www.gravatar.com/avatar/707a3249883bc1c42dbd54339c8daf44?d=identicon\u0026s=64",
      "cl": "D302915",
      "clUrl": "https://phabricator.services.mozilla.com/D302915",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D302915",
      "email": "rjesup@mozilla.com",
      "hash": "a8940b55ea7ba4cd612c0a77a1f4b3b3f1ca97b8",
      "subject": "Bug 2043221: Cap PUDPSocket actors per PBackground r=necko-reviewers,valentin,bwc"
    },
    "D304804": {
      "author": "Ting-Yu Lin",
      "avatar": "https://www.gravatar.com/avatar/ae1ed412b945fef9c52eee2f809a4406?d=identicon\u0026s=64",
      "cl": "D304804",
      "clUrl": "https://phabricator.services.mozilla.com/D304804",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D304804",
      "email": "tlin@mozilla.com",
      "hash": "b3ac7ed38e00a4de2b747c28ed7ef0b475506610",
      "subject": "Bug 2038072 Part 3 - Support abspos element fragmentation whose containing block is formed inline. r=layout-reviewers,dshin"
    },
    "D305274": {
      "author": "Randell Jesup",
      "avatar": "https://www.gravatar.com/avatar/707a3249883bc1c42dbd54339c8daf44?d=identicon\u0026s=64",
      "cl": "D305274",
      "clUrl": "https://phabricator.services.mozilla.com/D305274",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D305274",
      "email": "rjesup@mozilla.com",
      "hash": "995657d24a343f9fafc8e59b0a7daafb411e87c6",
      "subject": "Bug 2045772: Clean up nsStandardURL::Deserialize r=necko-reviewers,valentin"
    },
    "D305279": {
      "author": "Randell Jesup",
      "avatar": "https://www.gravatar.com/avatar/707a3249883bc1c42dbd54339c8daf44?d=identicon\u0026s=64",
      "cl": "D305279",
      "clUrl": "https://phabricator.services.mozilla.com/D305279",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D305279",
      "email": "rjesup@mozilla.com",
      "hash": "7623c5abd0ad78a7073ac24e8eda12309797d1bb",
      "subject": "Bug 2045783: Clean up TRRQuery::CompleteLookup r=necko-reviewers,kershaw"
    },
    "D305369": {
      "author": "Eitan Isaacson",
      "avatar": "https://www.gravatar.com/avatar/61cc67b9e21c81cd289bea0f592cebfe?d=identicon\u0026s=64",
      "cl": "D305369",
      "clUrl": "https://phabricator.services.mozilla.com/D305369",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D305369",
      "email": "eitan@monotonous.org",
      "hash": "eb58c146535f08ba56a3df05b30141c97cc57933",
      "subject": "Bug 2045392 - Don't allow attaching children to outerdoc. r=Jamie"
    },
    "D305601": {
      "author": "Randell Jesup",
      "avatar": "https://www.gravatar.com/avatar/707a3249883bc1c42dbd54339c8daf44?d=identicon\u0026s=64",
      "cl": "D305601",
      "clUrl": "https://phabricator.services.mozilla.com/D305601",
      "description": "Belt-and-suspenders; allows static analyisis\n\nDifferential Revision: https://phabricator.services.mozilla.com/D305601",
      "email": "rjesup@mozilla.com",
      "hash": "889063ced1d525c8eabc358d0b52dc6ab558843e",
      "subject": "Bug 2045783: Add thread-safety checks to TRRQuery r=necko-reviewers,valentin"
    },
    "D305810": {
      "author": "Mark Banner",
      "avatar": "https://www.gravatar.com/avatar/97526b10278bf7be90be23244678debe?d=identicon\u0026s=64",
      "cl": "D305810",
      "clUrl": "https://phabricator.services.mozilla.com/D305810",
      "description": "This reflects the existing clearUserPref function, extending it to clear a whole branch.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D305810",
      "email": "standard8@mozilla.com",
      "hash": "b7c4e9baff78ff435036538f8796bf8fe5910a3c",
      "subject": "Bug 2042698 - Add nsIPrefBranch.clearUserBranch. r=glandium"
    },
    "D306672": {
      "author": "James Teh",
      "avatar": "https://www.gravatar.com/avatar/749580f8bd5af77c57367e6c2717e283?d=identicon\u0026s=64",
      "cl": "D306672",
      "clUrl": "https://phabricator.services.mozilla.com/D306672",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D306672",
      "email": "jteh@mozilla.com",
      "hash": "08c0166d1889047ed254f25c8985aa1c2b34d4da",
      "subject": "Bug 2046416: Ensure a hide event never occurs during a split show event. r=eeejay"
    },
    "D306736": {
      "author": "Damien Carver",
      "avatar": "https://www.gravatar.com/avatar/9d00b1bcb1cbd45271e188a2c36a0a0b?d=identicon\u0026s=64",
      "cl": "D306736",
      "clUrl": "https://phabricator.services.mozilla.com/D306736",
      "description": "Thread CPU utilization is now always recorded, even when periodic stack\nsampling is disabled. Leaving it off only produced misleading profiles, where\nidle threads appeared busy because we couldn't tell they were idle.\n\nRemove the \"cpu\" (CPUUtilization) feature entirely from ProfilerState.h and\nBaseProfilerState.h (renumbering the following features), the WebExtensions\ngeckoProfiler schema, and the default feature sets, and drop the conditionals\nthat only recorded CPU when the feature was enabled. Per-thread CPU recording\nis still driven by the selected threads and the CPUAllThreads feature.\n\nSince the sampler now always completes a sampling pass, the\nSamplingState::NoStackSamplingCompleted state is unreachable; remove it (its\nconsumers already treated it identically to SamplingCompleted).\n\nUpdate the gtests accordingly. Also update browser_test_feature_nostacksampling.js:\nbecause CPU is now always gathered, the sampler still records samples while the\nNo Stack Sampling feature is on, but those samples carry no captured stack (only\nthe synthetic root frame). Assert on captured stack depth rather than sample\ncount.\n\nDrop the now-removed \"cpu\" feature from the remaining test harnesses that still\nrequested it, which caused the previous backouts: the xpcshell harness'\ndefault MOZ_PROFILER_STARTUP_FEATURES set (it made every launched binary print\nan \"Unrecognized feature\" warning, breaking test_install_hash.js) and the wpt\nwebdriver bidi profiler start/stop tests (stop asserted every requested feature\nis reflected in the saved profile).\n\nDifferential Revision: https://phabricator.services.mozilla.com/D306736",
      "email": "dcarver@mozilla.com",
      "hash": "3cf8d2d46cf4b7de59703f4b700e5f0e71292f20",
      "subject": "Bug 2033816 - Part 2: Remove the CPUUtilization profiler feature and always gather thread CPU. r=canova,profiler-reviewers,jdescottes"
    },
    "D306737": {
      "author": "Damien Carver",
      "avatar": "https://www.gravatar.com/avatar/9d00b1bcb1cbd45271e188a2c36a0a0b?d=identicon\u0026s=64",
      "cl": "D306737",
      "clUrl": "https://phabricator.services.mozilla.com/D306737",
      "description": "Thread CPU utilization will always be gathered after Part 2, making the \"cpu\"\n(CPUUtilization) feature redundant. Stop requesting it everywhere it is\ncurrently listed: the about:profiling settings checkbox list, all desktop and\nFenix presets, the devtools perf actor's default feature set, and the\nperformance test harnesses (mozperftest, raptor, talos, the taskcluster\ngecko_profile action, and the Fenix startup-profiling helper). Regenerate the\naffected perfdocs.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D306737",
      "email": "dcarver@mozilla.com",
      "hash": "d2b53bc95948e46af75739c3581adcba25f5d7eb",
      "subject": "Bug 2033816 - Part 1: Remove the CPU Utilization checkbox and \"cpu\" feature references from the profiler frontend and performance test harnesses. r=canova,profiler-reviewers,android-reviewers,perftest-reviewers,mozperftest-reviewers,taskgraph-reviewers,releng-reviewers,ahal,kshampur,tthibaud"
    },
    "D307145": {
      "author": "Ting-Yu Lin",
      "avatar": "https://www.gravatar.com/avatar/ae1ed412b945fef9c52eee2f809a4406?d=identicon\u0026s=64",
      "cl": "D307145",
      "clUrl": "https://phabricator.services.mozilla.com/D307145",
      "description": "This prepares a later part. This doesn't change behavior.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D307145",
      "email": "tlin@mozilla.com",
      "hash": "c5491e080a38e312de077b60f0c97bb657d090f0",
      "subject": "Bug 2038072 Part 1 - Minor refactor of computing abspos continuation's position. r=layout-reviewers,emilio"
    },
    "D307146": {
      "author": "Ting-Yu Lin",
      "avatar": "https://www.gravatar.com/avatar/ae1ed412b945fef9c52eee2f809a4406?d=identicon\u0026s=64",
      "cl": "D307146",
      "clUrl": "https://phabricator.services.mozilla.com/D307146",
      "description": "This prepares for the a next part to get the block frame's desired size in\nReflowAbsoluteDescendantsInInlineFrame().\n\nDifferential Revision: https://phabricator.services.mozilla.com/D307146",
      "email": "tlin@mozilla.com",
      "hash": "2524ad70a67f532596d7df9bcb1f363f4e709ec4",
      "subject": "Bug 2038072 Part 2 - Pass block frame's ReflowOutput down to ReflowAbsoluteDescendantsInInlineFrame(). r=layout-reviewers,emilio"
    },
    "D307147": {
      "author": "Ting-Yu Lin",
      "avatar": "https://www.gravatar.com/avatar/ae1ed412b945fef9c52eee2f809a4406?d=identicon\u0026s=64",
      "cl": "D307147",
      "clUrl": "https://phabricator.services.mozilla.com/D307147",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D307147",
      "email": "tlin@mozilla.com",
      "hash": "7abd34ae50ff28aaea1d38321222a9f5db38c436",
      "subject": "Bug 2038072 Part 5 - Add WPTs for abspos under inline element in multicol. r=dholbert,layout-reviewers"
    },
    "D307418": {
      "author": "unifolia",
      "avatar": "https://www.gravatar.com/avatar/4694b477c490cf60cd24b4c7467bcce3?d=identicon\u0026s=64",
      "cl": "D307418",
      "clUrl": "https://phabricator.services.mozilla.com/D307418",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D307418",
      "email": "jlewis@mozilla.com",
      "hash": "bf715d4293d18c1cc341e2efb14b1a561f75b215",
      "subject": "Bug 2027850 - Manual Smart bar intent Configuration r=urlbar-reviewers,omarg,mak"
    },
    "D307491": {
      "author": "Johannes Salas Schmidt",
      "avatar": "https://www.gravatar.com/avatar/6793e1db22abe181664726808800b218?d=identicon\u0026s=64",
      "cl": "D307491",
      "clUrl": "https://phabricator.services.mozilla.com/D307491",
      "description": "Records two Glean events from the migrator: rust_migration_status (one summary\nper run, with counts, duration, attempt, end state and any fatal error) and\nrust_migration_login_error (one per login that could not be migrated). The\nmetric_version continues the former rust mirror's sequence.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D307491",
      "email": "joschmidt@mozilla.com",
      "hash": "f3481bc974cbbd69f6423a57d4781ade40c96660",
      "subject": "Bug 2048554 - Add telemetry to login storage migrator r=dimi"
    },
    "D307674": {
      "author": "Ting-Yu Lin",
      "avatar": "https://www.gravatar.com/avatar/ae1ed412b945fef9c52eee2f809a4406?d=identicon\u0026s=64",
      "cl": "D307674",
      "clUrl": "https://phabricator.services.mozilla.com/D307674",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D307674",
      "email": "tlin@mozilla.com",
      "hash": "38218e62e996645ae87aa20100f6dc7a3e7a6b2d",
      "subject": "Bug 2038072 Part 4 - Build display items for block frame's abspos descendants whose CB is formed by inline. r=layout-reviewers,emilio"
    },
    "D307675": {
      "author": "Ting-Yu Lin",
      "avatar": "https://www.gravatar.com/avatar/ae1ed412b945fef9c52eee2f809a4406?d=identicon\u0026s=64",
      "cl": "D307675",
      "clUrl": "https://phabricator.services.mozilla.com/D307675",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D307675",
      "email": "tlin@mozilla.com",
      "hash": "92f51142049c737ffc9c551c3253b6ebdb156ba2",
      "subject": "Bug 2038072 Part 6 - Mark existing WPTs as PASS. r=dshin"
    },
    "D307845": {
      "author": "scottdowne",
      "avatar": "https://www.gravatar.com/avatar/778eae8eed52e7a108e29e0df77dc65c?d=identicon\u0026s=64",
      "cl": "D307845",
      "clUrl": "https://phabricator.services.mozilla.com/D307845",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D307845",
      "email": "sdowne@mozilla.com",
      "hash": "4087025c5b6ac09bb649ae5389b689949dad26df",
      "subject": "Bug 2046707 - Fixing Newtab card image width regardless of card width r=jbrown"
    },
    "D307892": {
      "author": "Daniel Holbert",
      "avatar": "https://www.gravatar.com/avatar/bcdecf9f2f19e9928d7e7e59894913e3?d=identicon\u0026s=64",
      "cl": "D307892",
      "clUrl": "https://phabricator.services.mozilla.com/D307892",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D307892",
      "email": "dholbert@cs.stanford.edu",
      "hash": "2e59cd79047f49cef7a1e5321e9aa2c495656ee9",
      "subject": "Bug 2048799: Flip polarity of a bounds check in cairo code. r=layout-reviewers,emilio"
    },
    "D308091": {
      "author": "Mike Conley",
      "avatar": "https://www.gravatar.com/avatar/4b4985a7acf7db49dfddd7815b55a043?d=identicon\u0026s=64",
      "cl": "D308091",
      "clUrl": "https://phabricator.services.mozilla.com/D308091",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308091",
      "email": "mconley@mozilla.com",
      "hash": "e4bc569df57f56f477a7a6b344584234da2be875",
      "subject": "Bug 2049452 - Add a vertical visual picker configuration. r=hjones,desktop-theme-reviewers"
    },
    "D308114": {
      "author": "Nicholas Poon",
      "avatar": "https://www.gravatar.com/avatar/de8191595cff0507f38ca784b6613551?d=identicon\u0026s=64",
      "cl": "D308114",
      "clUrl": "https://phabricator.services.mozilla.com/D308114",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308114",
      "email": "npoon@mozilla.com",
      "hash": "29f9e6f787a3379162c43f8b66f781f070697de8",
      "subject": "Bug 2044344 - Allow summarization to happen while page is still loading r=android-reviewers,matt-tighe"
    },
    "D308300": {
      "author": "Kaitlyn",
      "avatar": "https://www.gravatar.com/avatar/b104577de74c77852a93e4741c55b45a?d=identicon\u0026s=64",
      "cl": "D308300",
      "clUrl": "https://phabricator.services.mozilla.com/D308300",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308300",
      "email": "kandres@mozilla.com",
      "hash": "8728708ffbec3f05e2872bd03bff3908fd4cd50a",
      "subject": "Bug 2049713 - Remove 0 trackers blocked state from the Privacy Panel. r=urlbar-reviewers,daleharvey"
    },
    "D308373": {
      "author": "Jonathan Kew",
      "avatar": "https://www.gravatar.com/avatar/3982a397275d6e1f078a70157c2dcb8a?d=identicon\u0026s=64",
      "cl": "D308373",
      "clUrl": "https://phabricator.services.mozilla.com/D308373",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308373",
      "email": "jkew@mozilla.com",
      "hash": "e1937adb99cc3e52d91524a25bc68a534b5780aa",
      "subject": "Bug 2048801 - Validate fdselect entries before use. r=gfx-reviewers,lsalzman"
    },
    "D308374": {
      "author": "Jonathan Kew",
      "avatar": "https://www.gravatar.com/avatar/3982a397275d6e1f078a70157c2dcb8a?d=identicon\u0026s=64",
      "cl": "D308374",
      "clUrl": "https://phabricator.services.mozilla.com/D308374",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308374",
      "email": "jkew@mozilla.com",
      "hash": "be3ffc2057a150cf0a44e4af181f4a1641024339",
      "subject": "Bug 2049398 - Range-check glyph ID. r=gfx-reviewers,lsalzman"
    },
    "D308375": {
      "author": "Jonathan Kew",
      "avatar": "https://www.gravatar.com/avatar/3982a397275d6e1f078a70157c2dcb8a?d=identicon\u0026s=64",
      "cl": "D308375",
      "clUrl": "https://phabricator.services.mozilla.com/D308375",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308375",
      "email": "jkew@mozilla.com",
      "hash": "ed6cfb3b73cb602ed2b8a75b1721c95b8e820322",
      "subject": "Bug 2049399 - Check type1 stack size. r=gfx-reviewers,lsalzman"
    },
    "D308513": {
      "author": "Nicolas Silva",
      "avatar": "https://www.gravatar.com/avatar/a375423648d373880fdd9e4eccc6b920?d=identicon\u0026s=64",
      "cl": "D308513",
      "clUrl": "https://phabricator.services.mozilla.com/D308513",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308513",
      "email": "nsilva@mozilla.com",
      "hash": "72179164ba980254395127bce48ec5ecd4942534",
      "subject": "Bug 2049363 - Composite identity-filter pictures via the quad path. r=gw"
    },
    "D308514": {
      "author": "Nicolas Silva",
      "avatar": "https://www.gravatar.com/avatar/a375423648d373880fdd9e4eccc6b920?d=identicon\u0026s=64",
      "cl": "D308514",
      "clUrl": "https://phabricator.services.mozilla.com/D308514",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308514",
      "email": "nsilva@mozilla.com",
      "hash": "980567dfd7119988b7d93a056a384c2ff8c5975b",
      "subject": "Bug 2049363 - Remove unused picture-effect brush compositing paths. r=gw"
    },
    "D308650": {
      "author": "Mike Conley",
      "avatar": "https://www.gravatar.com/avatar/4b4985a7acf7db49dfddd7815b55a043?d=identicon\u0026s=64",
      "cl": "D308650",
      "clUrl": "https://phabricator.services.mozilla.com/D308650",
      "description": "Adds some new icon variants, embedding them as PE resources, and registers\nthem (with their about:settings metadata) in the CustomIconManager catalog.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308650",
      "email": "mconley@mozilla.com",
      "hash": "e0dd3ce993336fa3585bc1d54f837a5e43fc4b73",
      "subject": "Bug 2049877 - Add custom browser icon variants and embed them as executable resources. r=nrishel"
    },
    "D308663": {
      "author": "Mark Striemer",
      "avatar": "https://www.gravatar.com/avatar/8407f1551cb10122bad1fc181e6177ac?d=identicon\u0026s=64",
      "cl": "D308663",
      "clUrl": "https://phabricator.services.mozilla.com/D308663",
      "description": "This also prevents browser-colors.css from overriding --link-color* and\n--focus-outline-color overrides when using an in-app theme.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308663",
      "email": "mstriemer@mozilla.com",
      "hash": "24cab6a0399d3dd76568e424d9a720b2be4f56df",
      "subject": "Bug 2048371 - Use browser theme for all in-app themes r=dao,desktop-theme-reviewers,tabbrowser-reviewers,urlbar-reviewers,mconley,hjones"
    },
    "D308852": {
      "author": "Dre Grant",
      "avatar": "https://www.gravatar.com/avatar/766f0b780d039fe61b18c3a95137d8ea?d=identicon\u0026s=64",
      "cl": "D308852",
      "clUrl": "https://phabricator.services.mozilla.com/D308852",
      "description": "The widget header maximize/minimize toggle dispatched one SetPref per\nwidget. Each round-tripped to the main process and echoed back as a\nseparate PREF_CHANGED, so the content store updated one pref at a time\nand the widgets resized at staggered times.\n\nAdd a SET_MULTIPLE_PREFS action (SetMultiplePrefs) that sets all prefs in\na single PrefsFeed transaction and echoes one combined\nMULTIPLE_PREFS_CHANGED, so content applies every size in one reducer\npass. PrefsFeed still emits a main-only PREF_CHANGED per pref so feeds\n(e.g. WeatherFeed) keep reacting. toggleMaximize now dispatches a single\nSetMultiplePrefs.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308852",
      "email": "dgrant@mozilla.com",
      "hash": "3797c007aa780acca4c855880855d56d715b3a64",
      "subject": "Bug 2050312 - Batch widget maximize/minimize size prefs into one SET_MULTIPLE_PREFS to fix staggered resize r=reemhamz"
    },
    "D308877": {
      "author": "Mark Striemer",
      "avatar": "https://www.gravatar.com/avatar/8407f1551cb10122bad1fc181e6177ac?d=identicon\u0026s=64",
      "cl": "D308877",
      "clUrl": "https://phabricator.services.mozilla.com/D308877",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308877",
      "email": "mstriemer@mozilla.com",
      "hash": "11ad8ccd4f5f071071baf69dad3f161770c7e834",
      "subject": "Bug 2050612 - Part 1: Set correct exit status in design-system tests r=desktop-theme-reviewers,tgiles"
    },
    "D308878": {
      "author": "Mark Striemer",
      "avatar": "https://www.gravatar.com/avatar/8407f1551cb10122bad1fc181e6177ac?d=identicon\u0026s=64",
      "cl": "D308878",
      "clUrl": "https://phabricator.services.mozilla.com/D308878",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308878",
      "email": "mstriemer@mozilla.com",
      "hash": "0fc6f607592050534353a3d658a503b98e0e25df",
      "subject": "Bug 2050612 - Part 2: Test design-system tokens with mach command directly r=desktop-theme-reviewers,tgiles"
    },
    "D308893": {
      "author": "Steve Fink",
      "avatar": "https://www.gravatar.com/avatar/31f940cb8df709df2597484cda2b7f34?d=identicon\u0026s=64",
      "cl": "D308893",
      "clUrl": "https://phabricator.services.mozilla.com/D308893",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D308893",
      "email": "sfink@mozilla.com",
      "hash": "cffc5bdc04c83bf6519a62f457ada5baea8c29d0",
      "subject": "Bug 2048473 - Weaken assertion about OOM during test queue processing adding to delayed marking list r=jonco"
    },
    "D308937": {
      "author": "alastor0325",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D308937",
      "clUrl": "https://phabricator.services.mozilla.com/D308937",
      "description": "Add a per-session monitor that records which conditions required to build a protected hardware-DRM playback topology have become ready, plus a bounded last-resort decision for the two activation errors Media Foundation gives no advance signal for. Later parts hold protected activation until those conditions are ready instead of attempting blind and retrying on failure. This part adds the state and decision logic with unit tests only; it is wired into playback in later parts.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308937",
      "email": "alastor0325@gmail.com",
      "hash": "52d7ce66271aa5fc437139c497a0a9a3543b84f4",
      "subject": "Bug 2048342 - Part 1: Track protected-playback readiness conditions for MFCDM. r=media-playback-reviewers,jolin"
    },
    "D308938": {
      "author": "alastor0325",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D308938",
      "clUrl": "https://phabricator.services.mozilla.com/D308938",
      "description": "Give the CDM actor a per-session readiness monitor and mark each condition ready as protected setup establishes it, so a later patch can hold activation until they are. Reset the engine-side conditions when the engine is recreated after a hardware context reset. No behavior change yet.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308938",
      "email": "alastor0325@gmail.com",
      "hash": "6fd97f909e6baa481d7069e378790312bc401b2b",
      "subject": "Bug 2048342 - Part 2: Record protected-playback readiness as it is established for MFCDM. r=media-playback-reviewers,jolin"
    },
    "D308939": {
      "author": "alastor0325",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D308939",
      "clUrl": "https://phabricator.services.mozilla.com/D308939",
      "description": "Warm the HDCP link off the playback path when the CDM initializes and record readiness once the check settles, so the activation gate added in a later patch is usually already satisfied and adds no latency on the common path. Software encrypted playback is unaffected.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308939",
      "email": "alastor0325@gmail.com",
      "hash": "b09dc16b227a32c9b0b83fb63a3ef5e232ec7ce0",
      "subject": "Bug 2048342 - Part 3: Pre-warm HDCP at CDM init for MFCDM protected playback. r=media-playback-reviewers,jolin"
    },
    "D308940": {
      "author": "alastor0325",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D308940",
      "clUrl": "https://phabricator.services.mozilla.com/D308940",
      "description": "When the readiness gate is enabled, hardware-DRM playback holds the protected topology build until the tracked conditions have settled (in practice until output protection has warmed), so activation happens when the pipeline is ready instead of being attempted blind and reacted to on failure. Software and clearkey playback are unaffected, and the wait is bounded so it cannot hang.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308940",
      "email": "alastor0325@gmail.com",
      "hash": "251dccef4d647f89dc5c93f8caf2561d9ea94bac",
      "subject": "Bug 2048342 - Part 4: Hold protected topology activation until readiness settles for MFCDM. r=media-playback-reviewers,jolin"
    },
    "D308941": {
      "author": "alastor0325",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D308941",
      "clUrl": "https://phabricator.services.mozilla.com/D308941",
      "description": "Drop the write-only mHardwareResetInProgress member from the engine parent; nothing reads it. The spurious-error suppression it was meant to provide during recovery is handled on the content side by the RecoverEngine state guard.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308941",
      "email": "alastor0325@gmail.com",
      "hash": "5289afc84213f45c15668ef56ad189301837cbfa",
      "subject": "Bug 2048342 - Part 5: Remove the unused mHardwareResetInProgress flag. r=media-playback-reviewers,jolin"
    },
    "D308942": {
      "author": "alastor0325",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D308942",
      "clUrl": "https://phabricator.services.mozilla.com/D308942",
      "description": "When the readiness gate is enabled and protected activation still fails with one of the two errors Media Foundation gives no advance signal for, re-drive the pipeline through the existing recovery path within a bounded per-session budget, restoring the budget once a frame is produced. The recovery is restricted to hardware-DRM sessions, matching the gate, so non-hardware-DRM playback is never re-driven. On exhaustion the error surfaces to EME as before; hardware DRM is never demoted to software.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308942",
      "email": "alastor0325@gmail.com",
      "hash": "e0029579e886aa16ceefcd1cf5f6667a3bb4ba83",
      "subject": "Bug 2048342 - Part 6: Bounded last-resort recovery for protected-activation errors in MFCDM. r=media-playback-reviewers,jolin"
    },
    "D308943": {
      "author": "alastor0325",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D308943",
      "clUrl": "https://phabricator.services.mozilla.com/D308943",
      "description": "Once hardware-DRM playback produces a frame, mark every readiness condition ready: a produced frame proves the protected pipeline works, so a stale pre-warm result (e.g. HDCP that could not be confirmed at init) is no longer reported as failed. Skip this for clearlead, whose first frame is clear and therefore exercises neither HDCP nor the decryptor.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308943",
      "email": "alastor0325@gmail.com",
      "hash": "0d103762920cc55e8b2ba2fc14834247f749606e",
      "subject": "Bug 2048342 - Part 7: Refresh readiness conditions once a protected frame is produced for MFCDM. r=media-playback-reviewers,jolin"
    },
    "D308944": {
      "author": "alastor0325",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D308944",
      "clUrl": "https://phabricator.services.mozilla.com/D308944",
      "description": "Add the mfcdm.protected_readiness Glean probe, recorded at three phases:\n- GateHeld: the gate is holding activation until readiness conditions settle;\n- Succeeded: a protected frame was produced;\n- Failed: a protected-activation error occurred, with the bounded-recovery\n  reaction taken (recover or terminal).\n\nEach event collects the per-condition readiness snapshot, the bounded-recovery\ncount, how long the gate held, the key system, and the GPU adapter, so the\nrecovery rate, the gate's added latency, and gate hangs (a GateHeld with no\nlater Succeeded or Failed for the session) are observable in field data.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308944",
      "email": "alastor0325@gmail.com",
      "hash": "914b115b583c23665239de78e1a9757c01fdeb8f",
      "subject": "Bug 2048342 - Part 8: Record a protected-playback readiness Glean probe for MFCDM. r=media-playback-reviewers,jolin"
    },
    "D308945": {
      "author": "Alastor Wu",
      "avatar": "https://www.gravatar.com/avatar/9f64a3c43c01820fd6be6b1ee3f326e1?d=identicon\u0026s=64",
      "cl": "D308945",
      "clUrl": "https://phabricator.services.mozilla.com/D308945",
      "description": "Record, per content document, whether the tab's audio session is currently interrupted by an unresolved audio-focus loss. Later patches read this state to stop a page from starting or resuming audio on its own while the interruption is in effect.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308945",
      "email": "alwu@mozilla.com",
      "hash": "88ef16b8c29cbb642a3ca44350d3f540e1e5d21d",
      "subject": "Bug 2047321 - Part 1: Track the audio-session interruption state in the content process. r=media-playback-reviewers,padenot"
    },
    "D308946": {
      "author": "Alastor Wu",
      "avatar": "https://www.gravatar.com/avatar/9f64a3c43c01820fd6be6b1ee3f326e1?d=identicon\u0026s=64",
      "cl": "D308946",
      "clUrl": "https://phabricator.services.mozilla.com/D308946",
      "description": "Behind a pref, treat a platform audio interruption as a reason a page is not allowed to play: the shared autoplay decision reports not-allowed while the tab is interrupted, so a media element or Web Audio context cannot start or resume on its own until the interruption ends. The Autoplay Policy Detection API is left to mirror this in a follow-up (bug 2050309).\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308946",
      "email": "alwu@mozilla.com",
      "hash": "f73dd97a96ab4501828b934a8ea2ddf96ede5615",
      "subject": "Bug 2047321 - Part 2: Block self-start of autoplay-gated media while the audio session is interrupted. r=media-playback-reviewers,padenot"
    },
    "D308947": {
      "author": "Alastor Wu",
      "avatar": "https://www.gravatar.com/avatar/9f64a3c43c01820fd6be6b1ee3f326e1?d=identicon\u0026s=64",
      "cl": "D308947",
      "clUrl": "https://phabricator.services.mozilla.com/D308947",
      "description": "While the tab's audio is interrupted, keep the interruption owning a Web Audio suspend so a page resume() is deferred and takes effect once the interruption ends, and settle a deferred resume promise if the context is closed first.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308947",
      "email": "alwu@mozilla.com",
      "hash": "edbe1e333ccfd2927a5460366171b47356a4db78",
      "subject": "Bug 2047321 - Part 3: Defer a page Web Audio resume requested during an audio interruption. r=media-playback-reviewers,padenot"
    },
    "D308948": {
      "author": "Alastor Wu",
      "avatar": "https://www.gravatar.com/avatar/9f64a3c43c01820fd6be6b1ee3f326e1?d=identicon\u0026s=64",
      "cl": "D308948",
      "clUrl": "https://phabricator.services.mozilla.com/D308948",
      "description": "Web Speech does not participate in autoplay blocking, so it consults the interruption state directly: while the tab is interrupted a page cannot start a new utterance or resume a paused one. A blocked speak() reports an error event so the page is informed; conveying the spec's not-allowed error code is tracked in bug 2050310.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308948",
      "email": "alwu@mozilla.com",
      "hash": "f5f86abca8a40070499dd38e17c3793007575a4a",
      "subject": "Bug 2047321 - Part 4: Block self-start of Web Speech while the audio session is interrupted. r=media-playback-reviewers,padenot"
    },
    "D308949": {
      "author": "Alastor Wu",
      "avatar": "https://www.gravatar.com/avatar/9f64a3c43c01820fd6be6b1ee3f326e1?d=identicon\u0026s=64",
      "cl": "D308949",
      "clUrl": "https://phabricator.services.mozilla.com/D308949",
      "description": "Verify that while a tab is interrupted a media element, Web Audio, and Web Speech are all prevented from starting or resuming on their own, and that each works again once the interruption ends.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D308949",
      "email": "alwu@mozilla.com",
      "hash": "0d3f5ff64f69deb188b732103352eb687447835e",
      "subject": "Bug 2047321 - Part 5: Add integration tests for blocking self-start during an audio-session interruption. r=media-playback-reviewers,padenot"
    },
    "D309004": {
      "author": "Jan de Mooij",
      "avatar": "https://www.gravatar.com/avatar/709c5feed942bf99f098bb24aa1cc86f?d=identicon\u0026s=64",
      "cl": "D309004",
      "clUrl": "https://phabricator.services.mozilla.com/D309004",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309004",
      "email": "jdemooij@mozilla.com",
      "hash": "00f95d292337daf975744b857248a3108834c03c",
      "subject": "Bug 2049308 - Add some release assertions to the bailout code. r=mgaudet"
    },
    "D309109": {
      "author": "Alexandre Lissy",
      "avatar": "https://www.gravatar.com/avatar/e1bf03a82ed2535581f4b2d57cbfacfe?d=identicon\u0026s=64",
      "cl": "D309109",
      "clUrl": "https://phabricator.services.mozilla.com/D309109",
      "description": "Enable handling of XDG on Thunderbird, and update gtest accordingly.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309109",
      "email": "lissyx+mozillians@lissyx.dyndns.org",
      "hash": "2aca277c9e7c5d7c3b4611760182566d010411bf",
      "subject": "Bug 2007074 - Handle XDG_CONFIG_HOME for profile on Thunderbird r=thunderbird-back-end-reviewers,Thinker,babolivier"
    },
    "D309171": {
      "author": "Dana Keeler",
      "avatar": "https://www.gravatar.com/avatar/72636a193847f1a9c45521d07eb0dc6e?d=identicon\u0026s=64",
      "cl": "D309171",
      "clUrl": "https://phabricator.services.mozilla.com/D309171",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309171",
      "email": "dkeeler@mozilla.com",
      "hash": "41b8d534060bf54949271e2396c2d64fed3394af",
      "subject": "Bug 1425832 - stop using nsIPrompt directly in pippki.sys.mjs r=nkulatova"
    },
    "D309193": {
      "author": "Mark Striemer",
      "avatar": "https://www.gravatar.com/avatar/8407f1551cb10122bad1fc181e6177ac?d=identicon\u0026s=64",
      "cl": "D309193",
      "clUrl": "https://phabricator.services.mozilla.com/D309193",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309193",
      "email": "mstriemer@mozilla.com",
      "hash": "75e2cbb130b7f4f0bdc16800db6735cde28e4c90",
      "subject": "Bug 2050983 - Show a border on ghost moz-button in Nova prefers-contrast r=desktop-theme-reviewers,akulyk,hjones"
    },
    "D309220": {
      "author": "Ben Visness",
      "avatar": "https://www.gravatar.com/avatar/3ef267ebbb5f160ff0810f3787be9a4e?d=identicon\u0026s=64",
      "cl": "D309220",
      "clUrl": "https://phabricator.services.mozilla.com/D309220",
      "description": "Just a small cleanup before we get going. These definitions were getting\nvery bulky and had no particular reason to be in the header.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309220",
      "email": "bvisness@mozilla.com",
      "hash": "a7ac310c5b1164e0d5a92d8911b149aeec437d92",
      "subject": "Bug 2036397: Move large Component definitions to .cpp. r=rhunt"
    },
    "D309221": {
      "author": "Ben Visness",
      "avatar": "https://www.gravatar.com/avatar/3ef267ebbb5f160ff0810f3787be9a4e?d=identicon\u0026s=64",
      "cl": "D309221",
      "clUrl": "https://phabricator.services.mozilla.com/D309221",
      "description": "\"Raw items\" are the equivalent of \"sortidx\" in the component spec;\nsemantically, a sort/index pair. This requires a little shuffling of the\nComponentItem type but we had plenty of space anyway. This will be used\nfor many things, including inline exports.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309221",
      "email": "bvisness@mozilla.com",
      "hash": "506459acedd017415fa4fc4050ffe869595ba1e9",
      "subject": "Bug 2036397: Rework ComponentItem to support raw items. r=rhunt"
    },
    "D309222": {
      "author": "Ben Visness",
      "avatar": "https://www.gravatar.com/avatar/3ef267ebbb5f160ff0810f3787be9a4e?d=identicon\u0026s=64",
      "cl": "D309222",
      "clUrl": "https://phabricator.services.mozilla.com/D309222",
      "description": "Adds support for core modules constructed from inline exports. Rather\nthan implement them as full WebAssembly modules, because they only\nre-export existing definitions, we just store a mapping from new indices\nto old indices.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309222",
      "email": "bvisness@mozilla.com",
      "hash": "920225f2d2208098c6f86537ce596851eb1b861d",
      "subject": "Bug 2036397: Implement inline exports for core instances. r=rhunt"
    },
    "D309223": {
      "author": "Ben Visness",
      "avatar": "https://www.gravatar.com/avatar/3ef267ebbb5f160ff0810f3787be9a4e?d=identicon\u0026s=64",
      "cl": "D309223",
      "clUrl": "https://phabricator.services.mozilla.com/D309223",
      "description": "Adds parsing and validation for canonopts (string encoding, memory,\nrealloc, post-return) and `canon lower`. Also implements correct\nflattening rules around memory, particularly rules for spilling params\nand results to memory when they exceed the defined limits.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309223",
      "email": "bvisness@mozilla.com",
      "hash": "f1ff88a26ed06b0d23e4e043e719ba64468b65ca",
      "subject": "Bug 2036397: Implement canonopt and canon lower. r=rhunt"
    },
    "D309224": {
      "author": "Ben Visness",
      "avatar": "https://www.gravatar.com/avatar/3ef267ebbb5f160ff0810f3787be9a4e?d=identicon\u0026s=64",
      "cl": "D309224",
      "clUrl": "https://phabricator.services.mozilla.com/D309224",
      "description": "Implements a new static version of import matching. We can't really\nreuse what we current have for linking validation because it's very tied\ninto the JS API, takes a JS context, throws JS exceptions, etc.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309224",
      "email": "bvisness@mozilla.com",
      "hash": "0827140145744aed66c8d2d367cc456e406e11fa",
      "subject": "Bug 2036397: Implement import validation for core instances. r=rhunt"
    },
    "D309225": {
      "author": "Ben Visness",
      "avatar": "https://www.gravatar.com/avatar/3ef267ebbb5f160ff0810f3787be9a4e?d=identicon\u0026s=64",
      "cl": "D309225",
      "clUrl": "https://phabricator.services.mozilla.com/D309225",
      "description": "Just a bonus from my development of these patches, which I find quite\nuseful for debugging cases where functions types are misbehaving.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309225",
      "email": "bvisness@mozilla.com",
      "hash": "c54fcbfdc974512e4a3d1c427a9fcfde3737a026",
      "subject": "Bug 2036397: Add a ToString helper for FuncType. r=rhunt"
    },
    "D309350": {
      "author": "Dimi",
      "avatar": "https://www.gravatar.com/avatar/bd10912fd8637cc64f00edd465ca8b0d?d=identicon\u0026s=64",
      "cl": "D309350",
      "clUrl": "https://phabricator.services.mozilla.com/D309350",
      "description": "Add PassportRecord, mirroring AddressRecord/CreditCardRecord, to normalize\npassport records: the combined passport-name splits into given/additional/family\nparts (via FormAutofillNameUtils), and each issue/expiry date reconciles its\ncombined field with the month/day/year components.\n\nThe date reconciliation lives in a new shared DateNormalizationUtils (component\nvalidators, ISO parse/format, and a month/year multi-format parser). CreditCard\nexpiration handling is migrated onto it so the parse/validate logic is not\nduplicated.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309350",
      "email": "dlee@mozilla.com",
      "hash": "b2e9cb54cef447afd1aee9d42a1a4385b9106caf",
      "subject": "Bug 2050036 - P1. Normalize passport date and name fields via PassportRecord r=NeilDeakin,credential-management-reviewers"
    },
    "D309353": {
      "author": "Dimi",
      "avatar": "https://www.gravatar.com/avatar/bd10912fd8637cc64f00edd465ca8b0d?d=identicon\u0026s=64",
      "cl": "D309353",
      "clUrl": "https://phabricator.services.mozilla.com/D309353",
      "description": "Include the Application Services `autofill` component in Firefox Desktop and\nconfigure uniffi-bindgen-gecko-js to generate its JS bindings (the components'\nCargo.toml, config.toml, lib.rs and moz.build).\n\nThe remaining changes are the build artefacts from `./mach uniffi generate`:\nthe new RustAutofill.sys.mjs and its API docs, plus the regenerated sibling\nRust*.sys.mjs bindings and GeneratedScaffolding.cpp. Adding a component\nrenumbers the shared UniFFI function table, so the existing bindings and\nscaffolding are regenerated in lockstep.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309353",
      "email": "dlee@mozilla.com",
      "hash": "47ec1522e246cb3b179c0746b045a6447e3b62fe",
      "subject": "Bug 2050036 - P2. Expose the Application Services autofill component via UniFFI r=joschmidt"
    },
    "D309354": {
      "author": "Dimi",
      "avatar": "https://www.gravatar.com/avatar/bd10912fd8637cc64f00edd465ca8b0d?d=identicon\u0026s=64",
      "cl": "D309354",
      "clUrl": "https://phabricator.services.mozilla.com/D309354",
      "description": "Replace the temporary read-only passport stub with a PassportStorage adapter\nthat backs gFormAutofillStorage.passports with the Application Services\n`autofill` SQLite store (via the UniFFI bindings from P2), exposing the same\ncollection API as the addresses/credit-card collections. The store is opened\noff the main thread at a fixed profile path (autofill.sqlite). Add xpcshell\ncoverage for the collection.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309354",
      "email": "dlee@mozilla.com",
      "hash": "d3caf1234fdecc74495397fc40ce7b98f492ae8c",
      "subject": "Bug 2050036 - P3. Store Form Autofill passports in the Application Services store r=joschmidt,credential-management-reviewers"
    },
    "D309365": {
      "author": "Nicolas Silva",
      "avatar": "https://www.gravatar.com/avatar/a375423648d373880fdd9e4eccc6b920?d=identicon\u0026s=64",
      "cl": "D309365",
      "clUrl": "https://phabricator.services.mozilla.com/D309365",
      "description": "The goal of this patch is isolate the split composite code so that the bulk of the brush batching code that it was integrated in can eventually be removed. Unfortunately this won't help with removing the brush masking code that split composites still reliy on.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309365",
      "email": "nsilva@mozilla.com",
      "hash": "90c263d7a3db5a71b86541e09c02131da504d75e",
      "subject": "Bug 2049363 - Extract the split composite code out of the picture batching code. r=gw"
    },
    "D309416": {
      "author": "Leo Tenenbaum",
      "avatar": "https://www.gravatar.com/avatar/191826fbebe3973ebd6d6eb595ddb5c2?d=identicon\u0026s=64",
      "cl": "D309416",
      "clUrl": "https://phabricator.services.mozilla.com/D309416",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309416",
      "email": "ltenenbaum@mozilla.com",
      "hash": "4face25238c24d2dadf0a83beecbdfac39e39603",
      "subject": "Bug 2049464 - Spell checking for DOM-based EditContext. r=masayuki"
    },
    "D309440": {
      "author": "Mike Conley",
      "avatar": "https://www.gravatar.com/avatar/4b4985a7acf7db49dfddd7815b55a043?d=identicon\u0026s=64",
      "cl": "D309440",
      "clUrl": "https://phabricator.services.mozilla.com/D309440",
      "description": "Moves the DefaultBrowserHelper object out of main.js into a new\nDefaultBrowserHelper.mjs, imported with global: current so window/location/\ndocument still resolve to the preferences window. The object is moved basically\nverbatim. A later patch in this stack modifies its behaviour slightly.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309440",
      "email": "mconley@mozilla.com",
      "hash": "48c867254de1c9a1f435a9fc1da10f294de03c97",
      "subject": "Bug 2049877 - Extract DefaultBrowserHelper into its own module. r=hjones"
    },
    "D309444": {
      "author": "ahanot",
      "avatar": "https://www.gravatar.com/avatar/b7fccf9de5d5e5ac56c507a336850649?d=identicon\u0026s=64",
      "cl": "D309444",
      "clUrl": "https://phabricator.services.mozilla.com/D309444",
      "description": "First runtime step of the New Tab AdsClient integration. Instantiate the\nMozAdsClient singleton (from the ads-client UniFFI bindings added in bug\n2048346) in the New Tab parent process, gated behind a feature flag. This only\nproves the bindings load and the singleton initializes; it is not yet used to\nrequest or serve ads.\n\n- Add AdsClient.sys.mjs exposing a shared singleton (AdsClient) with\n  isEnabled(prefValues) and getClient().\n- Gate on trainhopConfig.adsClient.enabled (primary, train-hop-compatible)\n  plus a local unifiedAds.adsClient.enabled about:config override; default off.\n- Use a console-logging LoggerTelemetry stub (no Glean) and no SQLite cache;\n  the existing PersistentCache is untouched.\n- Load the bindings via lazy getters and gate on Firefox 154+, so the\n  train-hopped add-on keeps working on Beta/Release builds that predate them.\n- Load the singleton from AdsFeed, TopSitesFeed and DiscoveryStreamFeed at\n  startup when the flag is on, storing a reference for later use. This also\n  references the generated bindings, so the browser_all_files_referenced.js\n  allowlist entry for RustAdsClient.sys.mjs is no longer needed.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309444",
      "email": "ahanot@mozilla.com",
      "hash": "7b83a81579d66a65177d90b9ed0fa28bb6e073fa",
      "subject": "Bug 2051420 - Initialize the MozAdsClient singleton in New Tab behind a feature flag r=mconley"
    },
    "D309447": {
      "author": "Mike Conley",
      "avatar": "https://www.gravatar.com/avatar/4b4985a7acf7db49dfddd7815b55a043?d=identicon\u0026s=64",
      "cl": "D309447",
      "clUrl": "https://phabricator.services.mozilla.com/D309447",
      "description": "Generalizes the default-browser poll from a single callback to a set of\nsubscribers. pollForDefaultChanges() now adds a listener and returns an\nunsubscribe function, starting the timer on the first subscriber and stopping\nit once the last unsubscribes. Also recognizes the browserIcon sub-pane in the\npoll gate so it stays live there.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309447",
      "email": "mconley@mozilla.com",
      "hash": "867b99993b15d86273b2783a140161dc2278c746",
      "subject": "Bug 2049877 - Make DefaultBrowserHelper support multiple poll subscribers. r=hjones"
    },
    "D309458": {
      "author": "Leo Tenenbaum",
      "avatar": "https://www.gravatar.com/avatar/191826fbebe3973ebd6d6eb595ddb5c2?d=identicon\u0026s=64",
      "cl": "D309458",
      "clUrl": "https://phabricator.services.mozilla.com/D309458",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309458",
      "email": "ltenenbaum@mozilla.com",
      "hash": "ee02d139d2c4c4b70481bfc2156bfc93c88cfb21",
      "subject": "Bug 2051421 - Don't remove empty text node in EditContext editor. r=masayuki"
    },
    "D309629": {
      "author": "Sarah Clements",
      "avatar": "https://www.gravatar.com/avatar/a5c64c086e83ba611b034ee859d843d4?d=identicon\u0026s=64",
      "cl": "D309629",
      "clUrl": "https://phabricator.services.mozilla.com/D309629",
      "description": "* Adjust styling so the panel matches floating content area\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309629",
      "email": "sclements@mozilla.com",
      "hash": "19daf2b290f65685d8af739b3e68aab0347f8fdb",
      "subject": "Bug 2051885 - Make customize toolbar panel novafied r=desktop-theme-reviewers,kcochrane"
    },
    "D309670": {
      "author": "John M. Schanck",
      "avatar": "https://www.gravatar.com/avatar/291ff310b7805a4159d7f46af196813e?d=identicon\u0026s=64",
      "cl": "D309670",
      "clUrl": "https://phabricator.services.mozilla.com/D309670",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309670",
      "email": "jschanck@mozilla.com",
      "hash": "f9b10d9d71a5ba274f2f2faeed28022640f0bcf4",
      "subject": "Bug 2048727 - avoid timeout from clearing history data in test_sss_sanitizeOnShutdown_v2.js. r=mak"
    },
    "D309675": {
      "author": "Alastor Wu",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D309675",
      "clUrl": "https://phabricator.services.mozilla.com/D309675",
      "description": "Resuming playback after a seek recreates the audio sink, and AudioSinkWrapper\ndid this synchronously on the state machine thread. Initializing the audio\nstream there (cubeb stream init, tens of milliseconds for CoreAudio/AudioUnit on\nmacOS) stalls the playback clock, so audible seeks resume noticeably later than\nmuted seeks, which create no audio stream.\n\nThread a start type through MediaSink::Start so the state machine can tell the\nsink when a start is a seek resume rather than the initial playback start. On a\nseek resume the audio sink now initializes the audio stream asynchronously (the\npath already used when unmuting): playback resumes immediately on the system\nclock and switches to the audio clock once the stream is ready. Initial playback\nstart and the captured-stream sink are unchanged, as is the muted path.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309675",
      "email": "alastor0325@gmail.com",
      "hash": "a9322acd38f8cf6e8a4f0c8c5f14c195304af6c0",
      "subject": "Bug 2050845 - Part 1: Start the macOS audio sink asynchronously when resuming after a seek. r=media-playback-reviewers,jolin"
    },
    "D309676": {
      "author": "Alastor Wu",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D309676",
      "clUrl": "https://phabricator.services.mozilla.com/D309676",
      "description": "A seek that interrupts active playback leaves the decode pipeline primed and\nalready sustaining playback, so rebuilding the full cold-start preroll before\nrestarting the playback clock needlessly delays the resume. In that case use a\nminimal preroll and refresh the playback position at a finer cadence for a short\nwindow, so the resumed timeline starts and is observable promptly rather than\nadvancing in coarse steps. Size the minimal video preroll by decoder type, since\nsoftware decoding needs a larger cushion than hardware decoding to avoid stalling\nat resume, and restrict the reduced preroll to that immediate resume so a later\nunrelated start is unaffected.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309676",
      "email": "alastor0325@gmail.com",
      "hash": "fe11b1b274ef71619d749cb2a2e62eb17f3c61e3",
      "subject": "Bug 2050845 - Part 2: Resume playback with a minimal preroll and finer position reporting after a warm seek. r=padenot"
    },
    "D309677": {
      "author": "Alastor Wu",
      "avatar": "https://www.gravatar.com/avatar/7d8bcf82fc298508ec29373ad5eefccf?d=identicon\u0026s=64",
      "cl": "D309677",
      "clUrl": "https://phabricator.services.mozilla.com/D309677",
      "description": "When the audio stream restarts after a seek, its played position lags real time\nby the output latency, so adopting it the moment the callback fires freezes the\nreported position until it catches up. Keep advancing on the system clock - with\nthe stream start time and the decoded-audio queue kept aligned to it, so audio\nresumes from here with no A/V desync or backward jump - until the played position\nfirst reaches the system clock, then let the audio clock take over.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309677",
      "email": "alastor0325@gmail.com",
      "hash": "e3b68a02a62cffd766fce403222158d25115fa5a",
      "subject": "Bug 2050845 - Part 3: Keep the system clock until the audio stream catches up when resuming after a seek. r=padenot"
    },
    "D309680": {
      "author": "Nika Layzell",
      "avatar": "https://www.gravatar.com/avatar/fcf93a5a624020bf2256443c69e08b51?d=identicon\u0026s=64",
      "cl": "D309680",
      "clUrl": "https://phabricator.services.mozilla.com/D309680",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309680",
      "email": "nika@thelayzells.com",
      "hash": "cd3ea2c86c260f15d20bad85347a0edf02cbc6aa",
      "subject": "Bug 2049981 - Check subtree in NewWindowGlobal, r=smaug"
    },
    "D309688": {
      "author": "Henrik Skupin",
      "avatar": "https://www.gravatar.com/avatar/4ab832a8d5cae15967c0da59ebfb83f7?d=identicon\u0026s=64",
      "cl": "D309688",
      "clUrl": "https://phabricator.services.mozilla.com/D309688",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309688",
      "email": "mail@hskupin.info",
      "hash": "17a81fecda3526cff923d3043189c34ab656dde5",
      "subject": "Bug 2044589 - [geckodriver] Only add the notarized macOS builds to the Taskcluster index. r=taskgraph-reviewers,releng-reviewers,ahal"
    },
    "D309714": {
      "author": "Andy Leiserson",
      "avatar": "https://www.gravatar.com/avatar/38744a8eed407458243ba8021f56609a?d=identicon\u0026s=64",
      "cl": "D309714",
      "clUrl": "https://phabricator.services.mozilla.com/D309714",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309714",
      "email": "aleiserson@mozilla.com",
      "hash": "64991be16a1a0ad1d75ade356a39a57a787fe10e",
      "subject": "Bug 2051443 - WebGPU: Fix error case accounting for readback buffer IDs r=webgpu-reviewers,teoxoy"
    },
    "D309720": {
      "author": "Mark Striemer",
      "avatar": "https://www.gravatar.com/avatar/8407f1551cb10122bad1fc181e6177ac?d=identicon\u0026s=64",
      "cl": "D309720",
      "clUrl": "https://phabricator.services.mozilla.com/D309720",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309720",
      "email": "mstriemer@mozilla.com",
      "hash": "b45319af38c670c53567950c662e1e2c9fea4813",
      "subject": "Bug 2050524 - Basic theme picker UI r=fluent-reviewers,desktop-theme-reviewers,jules,flod"
    },
    "D309768": {
      "author": "Mark Banner",
      "avatar": "https://www.gravatar.com/avatar/97526b10278bf7be90be23244678debe?d=identicon\u0026s=64",
      "cl": "D309768",
      "clUrl": "https://phabricator.services.mozilla.com/D309768",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309768",
      "email": "standard8@mozilla.com",
      "hash": "e2746ba75e56a782dc95789507e329fd3cc8c548",
      "subject": "Bug 2042698 - Rework test_user_default_prefs.js to use async functionality to make it easier to extend. r=glandium"
    },
    "D309789": {
      "author": "Frederik Braun",
      "avatar": "https://www.gravatar.com/avatar/1f41f3ef916e1c1fc9401cf3212a6708?d=identicon\u0026s=64",
      "cl": "D309789",
      "clUrl": "https://phabricator.services.mozilla.com/D309789",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309789",
      "email": "fbraun@mozilla.com",
      "hash": "2822b2c44f34b4c04faa6b4abec989a1136b5357",
      "subject": "Bug 2051902 - stop using early_beta_or_earlier in dom:security code r=tschuster"
    },
    "D309804": {
      "author": "Kershaw Chang",
      "avatar": "https://www.gravatar.com/avatar/608e04ebca94be52b05c003d51d43e07?d=identicon\u0026s=64",
      "cl": "D309804",
      "clUrl": "https://phabricator.services.mozilla.com/D309804",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309804",
      "email": "kershaw@mozilla.com",
      "hash": "e16f27031559793091ff182158339f54a52a44cf",
      "subject": "Bug 2051776 - Tolerate a late loser Finish0RTT after ZeroRttHandle cleanup, r=necko-reviewers,valentin"
    },
    "D309808": {
      "author": "Tom Schuster",
      "avatar": "https://www.gravatar.com/avatar/643f0847a3bf01b6ac23263f1661d14e?d=identicon\u0026s=64",
      "cl": "D309808",
      "clUrl": "https://phabricator.services.mozilla.com/D309808",
      "description": "This pref was disabled by default almost one year ago in bug 1808979.\nThe old code became obsolete with bug 1790345.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309808",
      "email": "tschuster@mozilla.com",
      "hash": "9594d70f78d25e7ca88d932780cc24a2169b5a80",
      "subject": "Bug 2051922 - Remove security.csp.truncate_blocked_uri_for_frame_navigations pref. r=freddyb"
    },
    "D309927": {
      "author": "Matthew Gregan",
      "avatar": "https://www.gravatar.com/avatar/aeea283b2f56b75a7c959ccfb660a619?d=identicon\u0026s=64",
      "cl": "D309927",
      "clUrl": "https://phabricator.services.mozilla.com/D309927",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309927",
      "email": "kinetik@flim.org",
      "hash": "ff01a9ab9dda980aa556d51a792a7b1ba81cfb2a",
      "subject": "Bug 2050477 - r=media-playback-reviewers,alwu"
    },
    "D309955": {
      "author": "Andy Leiserson",
      "avatar": "https://www.gravatar.com/avatar/38744a8eed407458243ba8021f56609a?d=identicon\u0026s=64",
      "cl": "D309955",
      "clUrl": "https://phabricator.services.mozilla.com/D309955",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309955",
      "email": "aleiserson@mozilla.com",
      "hash": "a0723aeab7cd85231bcc555a2bcdf19efb855a07",
      "subject": "Bug 2049764 - Add `naga-types` to supply chain r=webgpu-reviewers,teoxoy"
    },
    "D309972": {
      "author": "unifolia",
      "avatar": "https://www.gravatar.com/avatar/4694b477c490cf60cd24b4c7467bcce3?d=identicon\u0026s=64",
      "cl": "D309972",
      "clUrl": "https://phabricator.services.mozilla.com/D309972",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309972",
      "email": "jlewis@mozilla.com",
      "hash": "5814ae195d9abec00ea98624fd5be969d477cd60",
      "subject": "Bug 2051858 - Smart Window sidebar jumps instead of sliding in while the left sidebar is open r=gcardieri"
    },
    "D309978": {
      "author": "Sotaro Ikeda",
      "avatar": "https://www.gravatar.com/avatar/a0c6bcb88fdc08a4e55f4fcf65cf0428?d=identicon\u0026s=64",
      "cl": "D309978",
      "clUrl": "https://phabricator.services.mozilla.com/D309978",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309978",
      "email": "sotaro.ikeda.g@gmail.com",
      "hash": "23421b79ddf21d0afc9b0a11e97c0fde1f1976e9",
      "subject": "Bug 2051653 r=gfx-reviewers,lsalzman"
    },
    "D309979": {
      "author": "Timothy Nikkel",
      "avatar": "https://www.gravatar.com/avatar/0646a42110a02dd585f200f270716852?d=identicon\u0026s=64",
      "cl": "D309979",
      "clUrl": "https://phabricator.services.mozilla.com/D309979",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D309979",
      "email": "tnikkel@gmail.com",
      "hash": "9ab8220e16b8af6c7cfb6878dd98307af24372b3",
      "subject": "Bug 2052485. For ScaleYCbCrToRGB32, only use the deprecated path if there is asm for it so it's actually faster. r=gfx-reviewers,lsalzman"
    },
    "D309980": {
      "author": "Makoto Kato",
      "avatar": "https://www.gravatar.com/avatar/1875645d5594d36bca29657d51d24ed6?d=identicon\u0026s=64",
      "cl": "D309980",
      "clUrl": "https://phabricator.services.mozilla.com/D309980",
      "description": "Currently GeckoView's sensor sampling rate is `SENSOR_DELAY_FASTEST`\n(200Hz). This setting was for VR and game. But Chrome/Android uses 60Hz\nfor sensors. So This fix changes the sensor sampling rate to 60Hz like\nChrome.\n\nCurrent value is too expensive for normal web browsing since some sites\nuses this sensor data for screen size detection (Bug 2044630) or for\nother purposes like Ads. So this change will reduce the power\nconsumption and improve the battery life.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D309980",
      "email": "m_kato@ga2.so-net.ne.jp",
      "hash": "76cb05a0d829c4992dc4e0497c5eaaa0da59828f",
      "subject": "Bug 1515780 - Sensor's sampling rate should be 60Hz like Chrome. r=geckoview-reviewers,ohall"
    },
    "D310004": {
      "author": "Nicolas Chevobbe",
      "avatar": "https://www.gravatar.com/avatar/f942478f2eaeb6cc42142cdd661976a7?d=identicon\u0026s=64",
      "cl": "D310004",
      "clUrl": "https://phabricator.services.mozilla.com/D310004",
      "description": "The InspectorUtils method expects the binding element, as we're also passing a pseudo element type,\nwhich will be used to retrieve the property on the pseudo element.\nA few test cases are added, both for the InspectorUtils method, as well as the CSS explainers tooltip.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310004",
      "email": "nchevobbe@mozilla.com",
      "hash": "438f1c55749a1d14e6706202f425165cbae3a935",
      "subject": "Bug 2050065 - [devtools] Pass binding element instead of pseudo element to InspectorUtils.getComputationSteps. r=devtools-reviewers,ochameau."
    },
    "D310033": {
      "author": "Marcin Koziński",
      "avatar": "https://www.gravatar.com/avatar/db35ce5112197baaa386bd37c89ef851?d=identicon\u0026s=64",
      "cl": "D310033",
      "clUrl": "https://phabricator.services.mozilla.com/D310033",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310033",
      "email": "mkozinski@mozilla.com",
      "hash": "92e4d3f6d2d028d0ef6ab9be0119322262272979",
      "subject": "Bug 2051906 – Remove custom-review-prompt Nimbus flag from and review prompt triggers from a failed experiment r=android-reviewers,twhite"
    },
    "D310035": {
      "author": "Jon Coppeard",
      "avatar": "https://www.gravatar.com/avatar/c9ec760b0d3a20a6775614baa4086871?d=identicon\u0026s=64",
      "cl": "D310035",
      "clUrl": "https://phabricator.services.mozilla.com/D310035",
      "description": "Currently we don't take account of the fact that we may run out of budget doing\nmain-thread-only marking at the start of a marking slice and return Finished\nwhen we're not.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310035",
      "email": "jcoppeard@mozilla.com",
      "hash": "65a949f6253e64149cb89ae2f46b1248275d4330",
      "subject": "Bug 2051882 - Part 1: Fix handling of budget expiry during main thread only marking r=sfink"
    },
    "D310036": {
      "author": "Jon Coppeard",
      "avatar": "https://www.gravatar.com/avatar/c9ec760b0d3a20a6775614baa4086871?d=identicon\u0026s=64",
      "cl": "D310036",
      "clUrl": "https://phabricator.services.mozilla.com/D310036",
      "description": "Tighten up checks when budgeting concurrent marking and add a couple of asserts\nabout marker state to make it clearer what's happening.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310036",
      "email": "jcoppeard@mozilla.com",
      "hash": "138b1734fba10844abb4e27fa8b12e3ba02ac6a9",
      "subject": "Bug 2051882 - Part 2: Don't mark concurrently if no work for it to do r=sfink"
    },
    "D310037": {
      "author": "Jon Coppeard",
      "avatar": "https://www.gravatar.com/avatar/c9ec760b0d3a20a6775614baa4086871?d=identicon\u0026s=64",
      "cl": "D310037",
      "clUrl": "https://phabricator.services.mozilla.com/D310037",
      "description": "These slices are triggered by the GC itself when a background task finishes,\nand so may occurr at any time. We want to limit the length of these slices\nbecause they can occur outside idle time.\n\nThis removes the millis parameter that was always zero.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310037",
      "email": "jcoppeard@mozilla.com",
      "hash": "aac51b3f3b8f6a960a36dda85f3dc02c3478058a",
      "subject": "Bug 2051882 - Part 3: Limit BG_TASK_FINISHED slice time r=sfink"
    },
    "D310038": {
      "author": "Jon Coppeard",
      "avatar": "https://www.gravatar.com/avatar/c9ec760b0d3a20a6775614baa4086871?d=identicon\u0026s=64",
      "cl": "D310038",
      "clUrl": "https://phabricator.services.mozilla.com/D310038",
      "description": "This will stop us interrupting and then immediately restarting concurrent\nmarking if it is running.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310038",
      "email": "jcoppeard@mozilla.com",
      "hash": "358ff39ba84de68e87dea2eb6eb01cf4aea175dc",
      "subject": "Bug 2051882 - Part 4: Don't trigger GC slices if there's no foreground work to do r=sfink"
    },
    "D310039": {
      "author": "Jon Coppeard",
      "avatar": "https://www.gravatar.com/avatar/c9ec760b0d3a20a6775614baa4086871?d=identicon\u0026s=64",
      "cl": "D310039",
      "clUrl": "https://phabricator.services.mozilla.com/D310039",
      "description": "This sets the idle flag in the slice budget depending on whether we are in idle\ntime and then uses that to yield eagerly after marking has finished for\ninternally triggered slices not running in idle time. This avoids transitioning\nfrom marking to sweeping (which in not interruptible) in an unscheduled slice.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310039",
      "email": "jcoppeard@mozilla.com",
      "hash": "692cde2b45b448b71f5712f400d89bb2b015bfd9",
      "subject": "Bug 2051882 - Part 5: Try to do less work from unscheduled slices r=sfink"
    },
    "D310040": {
      "author": "Marcin Koziński",
      "avatar": "https://www.gravatar.com/avatar/db35ce5112197baaa386bd37c89ef851?d=identicon\u0026s=64",
      "cl": "D310040",
      "clUrl": "https://phabricator.services.mozilla.com/D310040",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310040",
      "email": "mkozinski@mozilla.com",
      "hash": "f081fb3015a07b9b1979c49992636ad21fb23d86",
      "subject": "Bug 2052156 – Remove unused TWO_DAYS_MS constant from Settings.kt r=android-reviewers,gmalekpour"
    },
    "D310048": {
      "author": "Dão Gottwald",
      "avatar": "https://www.gravatar.com/avatar/45dfe136efbb8e5f89eb0b21775ab195?d=identicon\u0026s=64",
      "cl": "D310048",
      "clUrl": "https://phabricator.services.mozilla.com/D310048",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310048",
      "email": "dao@mozilla.com",
      "hash": "8d4978ed469640a9338c1262ccf95c4f5cbddc38",
      "subject": "Bug 2051473 - Also let the autocomplete panel use content's preferred color scheme. r=desktop-theme-reviewers,Itiel"
    },
    "D310054": {
      "author": "Yannis Juglaret",
      "avatar": "https://www.gravatar.com/avatar/acf03da5e024541e95fd10efea141450?d=identicon\u0026s=64",
      "cl": "D310054",
      "clUrl": "https://phabricator.services.mozilla.com/D310054",
      "description": "Both AudioSink::ReenqueueUnplayedAudioDataIfNeeded and\nMediaDecoderStateMachine::PushFakeAudioDataIfNeeded derive their packet\nsize from the front/back audio packet's frame count. A packet can\nlegitimately report zero frames (e.g. fully trimmed via SetTrimWindow),\nwhich makes packetFrameCount zero, so the loop never decrements its\nremaining-frames counter and spins forever, allocating until OOM.\n\nFall back to the default 1024-frame packet size when the reference\npacket has no frames.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310054",
      "email": "yjuglaret@mozilla.com",
      "hash": "a436b9bcc05027bfa9c8ca758f32672f036ba960",
      "subject": "Bug 2051945 - Avoid unbounded packetizing loop on zero-frame audio packets. r=media-playback-reviewers,padenot"
    },
    "D310056": {
      "author": "Alexandre Poirot",
      "avatar": "https://www.gravatar.com/avatar/da6d769a219551f618ed95bff2c36aca?d=identicon\u0026s=64",
      "cl": "D310056",
      "clUrl": "https://phabricator.services.mozilla.com/D310056",
      "description": "NetworkObserver codebase makes it hard to only trigger Override and\nLocalMode hooks for DevTools requests.\nSo start observing DevTools requests in light of upcoming bug 2038986\nand ignore them in the frontend until we have proper frontend\nimplementation.\n\nWent for this intermediate simpler approach in order to try to uplift\nthis patch for make the style editor work when using local mode.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310056",
      "email": "poirot.alex@gmail.com",
      "hash": "e81f945b978044526cb43a8f32641ad83794d77e",
      "subject": "Bug 2051247 - [devtools] Show (correct) stylesheet text content when using Local Mode or Network override. r=devtools-reviewers,jdescottes"
    },
    "D310067": {
      "author": "Nazım Can Altınova",
      "avatar": "https://www.gravatar.com/avatar/6ec3894dd8f6c79bebd9110120332aa9?d=identicon\u0026s=64",
      "cl": "D310067",
      "clUrl": "https://phabricator.services.mozilla.com/D310067",
      "description": "The profiler can't handle non-utf-8 characters, and the previous call\nwas actually preserving some invalid chars.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310067",
      "email": "canaltinova@gmail.com",
      "hash": "b4d7a6bbc7b3ed10efa2eb042814e9619efce829",
      "subject": "Bug 2052200 - Convert some potentially problematic log strings inside nsSHistory.cpp to UTF-8 r=farre"
    },
    "D310068": {
      "author": "Neil Deakin",
      "avatar": "https://www.gravatar.com/avatar/3e8ecccceb2961862d5cb3880ac94879?d=identicon\u0026s=64",
      "cl": "D310068",
      "clUrl": "https://phabricator.services.mozilla.com/D310068",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310068",
      "email": "neil@mozilla.com",
      "hash": "7441e05be2596fc4c635a5e70b7093c2f98962f8",
      "subject": "Bug 2052140, update address autofill ML configuration to use quantized model, and enable outside of Nightly, r=dimi,credential-management-reviewers"
    },
    "D310079": {
      "author": "Gela",
      "avatar": "https://www.gravatar.com/avatar/45f901b5a098b6fe07dbb371691f68e0?d=identicon\u0026s=64",
      "cl": "D310079",
      "clUrl": "https://phabricator.services.mozilla.com/D310079",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310079",
      "email": "gmalekpour@mozilla.com",
      "hash": "ce381fa392f31dba967afe2b7b3482f0d27bb809",
      "subject": "Bug 2050986 - Remove Scope Session r=android-reviewers,jonalmeida"
    },
    "D310091": {
      "author": "Andreas Farre",
      "avatar": "https://www.gravatar.com/avatar/5251913e02e39fe0d34962cae6373a9b?d=identicon\u0026s=64",
      "cl": "D310091",
      "clUrl": "https://phabricator.services.mozilla.com/D310091",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310091",
      "email": "farre@mozilla.com",
      "hash": "8beae29f4a116be1ac3007282bf70213d1aa2bed",
      "subject": "Bug 2049329 - Part 1: Add ORB HLS tests. r=dom-core-reviewers,smaug"
    },
    "D310092": {
      "author": "Andreas Farre",
      "avatar": "https://www.gravatar.com/avatar/5251913e02e39fe0d34962cae6373a9b?d=identicon\u0026s=64",
      "cl": "D310092",
      "clUrl": "https://phabricator.services.mozilla.com/D310092",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310092",
      "email": "farre@mozilla.com",
      "hash": "eab3cd609310e60e11c6020fd92d6673475be31b",
      "subject": "Bug 2049329 - Part 2: Add sniffer for VIDEO_MPEG_TS. r=media-playback-reviewers,jolin"
    },
    "D310093": {
      "author": "Andreas Farre",
      "avatar": "https://www.gravatar.com/avatar/5251913e02e39fe0d34962cae6373a9b?d=identicon\u0026s=64",
      "cl": "D310093",
      "clUrl": "https://phabricator.services.mozilla.com/D310093",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310093",
      "email": "farre@mozilla.com",
      "hash": "53e0aeeec0655d1aded79bd242c28b38328a6339",
      "subject": "Bug 2049329 - Part 3: Make sure HLS is treated as a media source. r=dom-core-reviewers,necko-reviewers,media-playback-reviewers,jolin,smaug,kershaw"
    },
    "D310094": {
      "author": "Andreas Farre",
      "avatar": "https://www.gravatar.com/avatar/5251913e02e39fe0d34962cae6373a9b?d=identicon\u0026s=64",
      "cl": "D310094",
      "clUrl": "https://phabricator.services.mozilla.com/D310094",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310094",
      "email": "farre@mozilla.com",
      "hash": "e594cee336ba7efd108b13c004cde1f7f03211a6",
      "subject": "Bug 2049329 - Part 4: Make GeckoHlsPlayer handle failure for bad resources. r=geckoview-reviewers,media-playback-reviewers,jolin,owlish"
    },
    "D310115": {
      "author": "John M. Schanck",
      "avatar": "https://www.gravatar.com/avatar/291ff310b7805a4159d7f46af196813e?d=identicon\u0026s=64",
      "cl": "D310115",
      "clUrl": "https://phabricator.services.mozilla.com/D310115",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310115",
      "email": "jschanck@mozilla.com",
      "hash": "ffcf658398ecc25064059a2eb638f75265e67bcf",
      "subject": "Bug 2052134 - null check SECKEY_ExtractPublicKey result in CoseVerificationCallback. r=keeler"
    },
    "D310124": {
      "author": "Dana Keeler",
      "avatar": "https://www.gravatar.com/avatar/72636a193847f1a9c45521d07eb0dc6e?d=identicon\u0026s=64",
      "cl": "D310124",
      "clUrl": "https://phabricator.services.mozilla.com/D310124",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310124",
      "email": "dkeeler@mozilla.com",
      "hash": "5c2e3f1bea94ab2145ce790e55a4949f95ee2547",
      "subject": "Bug 2052134 - add test for unknown key types in COSE signature certificates r=jschanck"
    },
    "D310127": {
      "author": "KS",
      "avatar": "https://www.gravatar.com/avatar/ec724a05e1cc31dcbf8e114d09256424?d=identicon\u0026s=64",
      "cl": "D310127",
      "clUrl": "https://phabricator.services.mozilla.com/D310127",
      "description": "Linux NaR builds reuse linux64 shippable pgo profiles. However NaR ships\nwith --as-milestone=release and this causes control flow mismatches (as\npointed out in Bug 1876157 for Windows)\n\nThis patch adds a dedicated NaR instrumented build and profile task to\nhave more representative performance.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310127",
      "email": "kshampur@mozilla.com",
      "hash": "6541115d5af925cc2c9128a59670a92bb8a9854a",
      "subject": "Bug 2052301 - Use a nightly-as-release profile when building linux nightly-as-release r=mstange,firefox-build-system-reviewers,glandium"
    },
    "D310140": {
      "author": "Updatebot",
      "avatar": "https://www.gravatar.com/avatar/cd270ac15e761e2d4c08e9c9b7cfecca?d=identicon\u0026s=64",
      "cl": "D310140",
      "clUrl": "https://phabricator.services.mozilla.com/D310140",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310140",
      "email": "updatebot@mozilla.com",
      "hash": "633bf2d5e7dfcb1f2429902651a10f2b5e4b4658",
      "subject": "Bug 2052311 - Update NSS to 9cd244e1a10de8260eafd83d535be46f2b0349d1. UPGRADE_NSS_RELEASE r=nss-reviewers,jschanck"
    },
    "D310185": {
      "author": "Dre Grant",
      "avatar": "https://www.gravatar.com/avatar/766f0b780d039fe61b18c3a95137d8ea?d=identicon\u0026s=64",
      "cl": "D310185",
      "clUrl": "https://phabricator.services.mozilla.com/D310185",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310185",
      "email": "dgrant@mozilla.com",
      "hash": "cefaf556a622574082fbae417de52281dfa34357",
      "subject": "Bug 2052371 - Add World Cup widget survey message strings. r=fluent-reviewers,reemhamz,flod"
    },
    "D310211": {
      "author": "Glenn Watson",
      "avatar": "https://www.gravatar.com/avatar/3d823baa293744dbe3cbe8ce33d77065?d=identicon\u0026s=64",
      "cl": "D310211",
      "clUrl": "https://phabricator.services.mozilla.com/D310211",
      "description": "The picture-cache invalidation stores prim corners quantized to 1/4px via\nround(v * 4). Those buckets are centered on the .5 boundary, which is exactly\nwhere the rasterizer's whole-pixel round() flips device pixels. So two corners\nthat render to different device pixels (e.g. 20.4 -\u003e 20 and 20.5 -\u003e 21) can share\none invalidation key, and a tile is not re-rasterized when it should be, leaving\nstale content. This was masked while prims were device-snapped (integer corners\nquantize unambiguously); it surfaces once prims carry sub-pixel positions.\n\nTruncate toward zero instead. This places the 1/4px bucket boundaries on every\nhalf-integer with the same sign-aware tie-ownership as round() (half away from\nzero), so a quant key uniquely determines the rendered device pixel for both\npositive and negative coordinates, while keeping the 1/4px tolerance for\nanti-aliased content. Verified: a full sweep over [-300, 300] including exact\nhalf-integers has zero keys mapping to two device pixels (600 with the old\nround).\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310211",
      "email": "git@chillybin.org",
      "hash": "2d5d6f15f148cb1795756ca747be2e5eb82638d9",
      "subject": "Bug 2052391 - Align tile-invalidation quantize with the rasterizer's pixel rounding r=gfx-reviewers,lsalzman"
    },
    "D310225": {
      "author": "Hubert B Manilla",
      "avatar": "https://www.gravatar.com/avatar/9a8e452716848b046c871e21035b4ea3?d=identicon\u0026s=64",
      "cl": "D310225",
      "clUrl": "https://phabricator.services.mozilla.com/D310225",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310225",
      "email": "hmanilla@mozilla.com",
      "hash": "ca7c2ed6e44a8f3a8d2029424ca3883389788722",
      "subject": "Bug 2052400 - [devtools] Remove backward compatibility comment for the show comments options r=devtools-reviewers,jdescottes"
    },
    "D310230": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D310230",
      "clUrl": "https://phabricator.services.mozilla.com/D310230",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310230",
      "email": "rvandermeulen@mozilla.com",
      "hash": "87a561ec313486c3326c8d9f044b627b7b511ebf",
      "subject": "Bug 2052398 - Update Android SDK Command-line Tools to version 21.0. r=android-reviewers,mcarare"
    },
    "D310231": {
      "author": "Ryan VanderMeulen",
      "avatar": "https://www.gravatar.com/avatar/51823ded02903fa76c961fe2a3c1318a?d=identicon\u0026s=64",
      "cl": "D310231",
      "clUrl": "https://phabricator.services.mozilla.com/D310231",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310231",
      "email": "rvandermeulen@mozilla.com",
      "hash": "ff649280ff1d265a16ecac9d89adf96e72f3278c",
      "subject": "Bug 2052398 - Compile with Android SDK 37.1. r=android-reviewers,jgraham,mcarare"
    },
    "D310236": {
      "author": "Mark Striemer",
      "avatar": "https://www.gravatar.com/avatar/8407f1551cb10122bad1fc181e6177ac?d=identicon\u0026s=64",
      "cl": "D310236",
      "clUrl": "https://phabricator.services.mozilla.com/D310236",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310236",
      "email": "mstriemer@mozilla.com",
      "hash": "0d529ebd5827afaf0e27a36e108ac9c390121da1",
      "subject": "Bug 2051590 - Use select design tokens in menulist r=desktop-theme-reviewers,dao,hjones"
    },
    "D310252": {
      "author": "Mike Hommey",
      "avatar": "https://www.gravatar.com/avatar/5d5f37905f36ca9989f88861a702cff3?d=identicon\u0026s=64",
      "cl": "D310252",
      "clUrl": "https://phabricator.services.mozilla.com/D310252",
      "description": "This used to be the case until bug 1803831, where it was changed to some\nother worker type, and now the discrepancy with other builds is causing\nresource problems, where the t-linux-kvm pool is too short on memory.\n\nBack in bug 1803831, for some reason, the GCP workers had valgrind\ncrash, but that's not the case anymore, so we can just restore the old\nstatus quo.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310252",
      "email": "mh+mozilla@glandium.org",
      "hash": "f47f713b511eb289fd0570000c149c8a84a817a0",
      "subject": "Bug 2024114 - Run valgrind tasks on the same worker type as builds. r=taskgraph-reviewers,jcristau"
    },
    "D310269": {
      "author": "Nicolas Chevobbe",
      "avatar": "https://www.gravatar.com/avatar/f942478f2eaeb6cc42142cdd661976a7?d=identicon\u0026s=64",
      "cl": "D310269",
      "clUrl": "https://phabricator.services.mozilla.com/D310269",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310269",
      "email": "nchevobbe@mozilla.com",
      "hash": "8762e0134c9e5f90b11fd6ebf2fbe931911136a1",
      "subject": "Bug 2034445 - [devtools] Cache getStyleSheetsText promises to avoid concurrent fetch to the same stylesheet. r=devtools-reviewers,jdescottes."
    },
    "D310270": {
      "author": "Masayuki Nakano",
      "avatar": "https://www.gravatar.com/avatar/900caab146bc7a489b3854cf10acf93f?d=identicon\u0026s=64",
      "cl": "D310270",
      "clUrl": "https://phabricator.services.mozilla.com/D310270",
      "description": "The method tests `IsForDesignMode()` to check the regression caused by a\nchange of `GetMostDistantInclusiveEditableAncestorNode()` with debug\nassertions.\n\n`IsForDesignMode()` should return `true` only when the editor is an\n`HTMLEditor`. If the editor is a `TextEditor`, the text control element\nmay be in the design mode if the document entered into the design mode\nwhile the text control gets focus. In this case, `IsForDesignMode()`\nshould return `false` if the editor is a `TextEditor` because the\ninstance should work for the text control rather than for the design\nmode.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310270",
      "email": "masayuki@d-toybox.com",
      "hash": "07c82bc80f9015b419895b316a4b54583e358dd3",
      "subject": "Bug 2052394 - Fix the assertions in `IMEContentObserver::InitWithEditor()` r=jjaschke"
    },
    "D310271": {
      "author": "Updatebot",
      "avatar": "https://www.gravatar.com/avatar/cd270ac15e761e2d4c08e9c9b7cfecca?d=identicon\u0026s=64",
      "cl": "D310271",
      "clUrl": "https://phabricator.services.mozilla.com/D310271",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310271",
      "email": "updatebot@mozilla.com",
      "hash": "e580dca6bbc61ca0f8e092ffdc6d9055a6878ce4",
      "subject": "Bug 2052436 - Update android nightly application-services version bump to 8341edd91f3413a87ae304047b8fa96066b32f0b r=pascalc"
    },
    "D310306": {
      "author": "Dão Gottwald",
      "avatar": "https://www.gravatar.com/avatar/45dfe136efbb8e5f89eb0b21775ab195?d=identicon\u0026s=64",
      "cl": "D310306",
      "clUrl": "https://phabricator.services.mozilla.com/D310306",
      "description": "Global-action results (the actions row) carry their per-action data -- `key`,\n`l10nId`, `l10nArgs`, `icon`, `dataset`, `engine` -- in `ActionsResult` objects\nheld on the result payload. `ActionsResult` stored that data in private fields\nexposed through getters, which a structured clone drops (it copies only own\nenumerable data properties), so over the actor message path the actions rendered\nblank; only `providerName`, a public field, survived.\n\nStore the data in plain public fields instead, so the payload stays structured-\ncloneable, and freeze the instance to keep it read-only as the getters did.\n`providerName` can no longer be stamped on after construction (the object is\nfrozen), so each provider passes its own name in; the constructor now requires\n`providerName` and `key` and throws without them.\n\nThe default in-process path is unaffected.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310306",
      "email": "dao@mozilla.com",
      "hash": "3642578ee50513d9a1405ab41bcea53bbcc308be",
      "subject": "Bug 2052554 - [IPC Urlbar] Phase 6: Make global-action results wire-safe. r=mbeier,urlbar-reviewers"
    },
    "D310350": {
      "author": "Julien Cristau",
      "avatar": "https://www.gravatar.com/avatar/15b9b3783e4671cd882bff1316df14c9?d=identicon\u0026s=64",
      "cl": "D310350",
      "clUrl": "https://phabricator.services.mozilla.com/D310350",
      "description": "This is used for ui-test-apk to distinguish between fenix and focus,\nentirely separate from the `shipping_product` attribute that is used by\nrelease promotion.  Remove the attribute for non-ui-test-apk tasks as\nunused, and in ui-test-apk replace it with a local task field populated\nvia task-context.\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310350",
      "email": "jcristau@mozilla.com",
      "hash": "320f4d9e060a5a1c2492257b30bc6979453be6cc",
      "subject": "Bug 2052531 - replace `shipping-product` attribute with local `app-name` context r=taskgraph-reviewers,releng-reviewers,bhearsum"
    },
    "D310371": {
      "author": "Julien Cristau",
      "avatar": "https://www.gravatar.com/avatar/15b9b3783e4671cd882bff1316df14c9?d=identicon\u0026s=64",
      "cl": "D310371",
      "clUrl": "https://phabricator.services.mozilla.com/D310371",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310371",
      "email": "jcristau@mozilla.com",
      "hash": "643462ec1ac65b2339f64159206fea92308909d4",
      "subject": "Bug 2052550 - replace test_apk transforms with task_context. r=taskgraph-reviewers,releng-reviewers,ahal"
    },
    "D310373": {
      "author": "hannajones",
      "avatar": "https://www.gravatar.com/avatar/679f3fb3f1d10ec10892fd611fea5c14?d=identicon\u0026s=64",
      "cl": "D310373",
      "clUrl": "https://phabricator.services.mozilla.com/D310373",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310373",
      "email": "hjones@mozilla.com",
      "hash": "7c19a6aae4739b5dd2c0d4f809c5db84b4d66a12",
      "subject": "Bug 2050760 - Fix permission dialog button spacing r=mstriemer,desktop-theme-reviewers"
    },
    "D310375": {
      "author": "Keith Cirkel",
      "avatar": "https://www.gravatar.com/avatar/87a4065b580b6f1e43858ab49d98c109?d=identicon\u0026s=64",
      "cl": "D310375",
      "clUrl": "https://phabricator.services.mozilla.com/D310375",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310375",
      "email": "keithamus@users.noreply.github.com",
      "hash": "6f65dac36eb312ec293a1b76d96def3118fd9d18",
      "subject": "Bug 2052491 - Refactor active-observable to be less flakey r=dom-core-reviewers,smaug"
    },
    "D310391": {
      "author": "John Bieling",
      "avatar": "https://www.gravatar.com/avatar/48839c54f769c8c451d0f0e4f852eed4?d=identicon\u0026s=64",
      "cl": "D310391",
      "clUrl": "https://phabricator.services.mozilla.com/D310391",
      "description": "This test depends on the default preference value from all.js (20). Due to\ndifferent implementation details, Thunderbird loads its production preferences\non top of the all.js defaults in its xpcshell environment, overriding this pref\nto 0. To make this test pass, the test needs to enforce the value it needs in\norder to pass (20).\n\nConfirmed fixed on try.\n - bad: https://treeherder.mozilla.org/jobs?repo=comm-central\u0026selectedTaskRun=TociuFeSQuuiohjjE3aO7g.0\n - good: https://treeherder.mozilla.org/jobs?repo=try-comm-central\u0026revision=e905f05488a7c19cdac0b03f6cb8a272dc655c64\u0026selectedTaskRun=UE2vICqfSxGGpnXt6omCIQ.0\n\nDifferential Revision: https://phabricator.services.mozilla.com/D310391",
      "email": "john@thunderbird.net",
      "hash": "ef797660933c8251548d466ca158f71feb5960e7",
      "subject": "Bug 2052563 - Set network.http.speculative-parallel-limit=20 for test_http3_421.js. r=necko-reviewers,jesup"
    },
    "D310398": {
      "author": "Randell Jesup",
      "avatar": "https://www.gravatar.com/avatar/707a3249883bc1c42dbd54339c8daf44?d=identicon\u0026s=64",
      "cl": "D310398",
      "clUrl": "https://phabricator.services.mozilla.com/D310398",
      "description": "Differential Revision: https://phabricator.services.mozilla.com/D310398",
      "email": "rjesup@mozilla.com",
      "hash": "8963f4916f8657e1a58316286a67e9999993f325",
      "subject": "Bug 2046810: Instrument nsStandardURL::BuildNormalizedSpec to get more details from crashes r=necko-reviewers,kershaw"
    },
    "a8b1116c9e52": {
      "author": "Lando",
      "avatar": "https://www.gravatar.com/avatar/e3fc5c639ea50123800e4b7471f88787?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "# ignore-this-changeset",
      "email": "lando@lando.moz.tools",
      "hash": "a8b1116c9e528a728864c972bc9eba65c31d4e42",
      "subject": "Bug 2047321: apply code formatting via Lando"
    },
    "aa177ac126a5": {
      "author": "Serban Stanca",
      "avatar": "https://www.gravatar.com/avatar/977312186062f329a7e4302ab972ae7b?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit ec1626bdc1a231895f259d004dc6a923c1c3037d.",
      "email": "sstanca@mozilla.com",
      "hash": "aa177ac126a52819722330efcc2d7b05fa9d2b8c",
      "subject": "Revert \"Bug 2051146 - Exit Fullscreen when opening Document PiP. r=edgar\" for causing mochitests assertion failures in CanonicalBrowsingContext.cpp."
    },
    "aece88812c23": {
      "author": "rperta",
      "avatar": "https://www.gravatar.com/avatar/95787d55656c719bd5b0c6754f5449a3?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 0fc6f607592050534353a3d658a503b98e0e25df.\n\nRevert \"Bug 2050612 - Part 1: Set correct exit status in design-system tests r=desktop-theme-reviewers,tgiles\"\n\nThis reverts commit 11ad8ccd4f5f071071baf69dad3f161770c7e834.",
      "email": "rperta@mozilla.com",
      "hash": "aece88812c23ebaa11de69252aee8d14fb85cddb",
      "subject": "Revert \"Bug 2050612 - Part 2: Test design-system tokens with mach command directly r=desktop-theme-reviewers,tgiles\" for causing node failures"
    },
    "b646f891060b": {
      "author": "rperta",
      "avatar": "https://www.gravatar.com/avatar/95787d55656c719bd5b0c6754f5449a3?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 1f8a62d7ada1f386681215f990fac993e9a6933b.",
      "email": "rperta@mozilla.com",
      "hash": "b646f891060b8da2017100bfdcdd5cacad830448",
      "subject": "Revert \"Bug 2029482 - Disallow sending isInDevToolsContext to parent. r=necko-reviewers,valentin\" for causing dt failures at browser_styleeditor_fetch-from-netmonitor.js"
    },
    "c26d2b38a389": {
      "author": "Alexandru Marc",
      "avatar": "https://www.gravatar.com/avatar/f90e8bfbc9c1383d73053a8809b77e48?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 2d5d6f15f148cb1795756ca747be2e5eb82638d9.",
      "email": "amarc@mozilla.com",
      "hash": "c26d2b38a389b1c6e6604c3dc3e115f555c44cb4",
      "subject": "Revert \"Bug 2052391 - Align tile-invalidation quantize with the rasterizer's pixel rounding r=gfx-reviewers,lsalzman\" for causing wr failures @ offset-rotate-005.html"
    },
    "cba78a3f5417": {
      "author": "Silaghi",
      "avatar": "https://www.gravatar.com/avatar/81acf29bb88b2a0ded61f47b93c59dea?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit 7b83a81579d66a65177d90b9ed0fa28bb6e073fa.",
      "email": "asilaghi@mozilla.com",
      "hash": "cba78a3f5417bf3079ada8a803b3e1304056b912",
      "subject": "Revert \"Bug 2051420 - Initialize the MozAdsClient singleton in New Tab behind a feature flag r=mconley\" for causing newtab failures"
    },
    "ce98ba143d78": {
      "author": "Lando",
      "avatar": "https://www.gravatar.com/avatar/e3fc5c639ea50123800e4b7471f88787?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "# ignore-this-changeset",
      "email": "lando@lando.moz.tools",
      "hash": "ce98ba143d78dab62237a5472af2eb14e15741ec",
      "subject": "Bug 2045783: apply code formatting via Lando"
    },
    "e082d62bc08f": {
      "author": "iulian moraru",
      "avatar": "https://www.gravatar.com/avatar/348b805af88f773829064778b66be468?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit bf715d4293d18c1cc341e2efb14b1a561f75b215.",
      "email": "imoraru@mozilla.com",
      "hash": "e082d62bc08f34bb1ebf0a412dba4f9a98cc8d16",
      "subject": "Revert \"Bug 2027850 - Manual Smart bar intent Configuration r=urlbar-reviewers,omarg,mak\" for causing bc failures on browser_chats_firefoxview.js."
    },
    "eabd5dd8fb23": {
      "author": "Silaghi",
      "avatar": "https://www.gravatar.com/avatar/81acf29bb88b2a0ded61f47b93c59dea?d=identicon\u0026s=64",
      "cl": "",
      "clUrl": "",
      "description": "This reverts commit ee02d139d2c4c4b70481bfc2156bfc93c88cfb21.\n\nRevert \"Bug 2049464 - Spell checking for DOM-based EditContext. r=masayuki\"\n\nThis reverts commit 4face25238c24d2dadf0a83beecbdfac39e39603.",
      "email": "asilaghi@mozilla.com",
      "hash": "eabd5dd8fb236d7d92cd37e1c4713e705a62bbcf",
      "subject": "Revert \"Bug 2051421, Bug 2049464 - Don't remove empty text node in EditContext editor. r=masayuki\" for causing mochitests failures at editcontext_spellcheck.html"
    }
  },
  "date": "2026-07-03",
  "days": 1,
  "generatedAt": "2026-07-03T22:07:18Z",
  "markdown": "## Highlights\n- **UI** Firefox's in-app theming got a broad unification pass, with browser theme colors now applied across all built-in themes and a new basic theme picker landing alongside it. [Phab D308663](https://phabricator.services.mozilla.com/D308663) [Phab D309720](https://phabricator.services.mozilla.com/D309720)\n- **Media** Audio interruption handling got much stricter: autoplay-gated media, Web Audio resume, and Web Speech self-start now defer or block correctly during interrupted audio sessions. [Phab D308945](https://phabricator.services.mozilla.com/D308945) [Phab D308946](https://phabricator.services.mozilla.com/D308946) [Phab D308947](https://phabricator.services.mozilla.com/D308947) [Phab D308948](https://phabricator.services.mozilla.com/D308948) [Phab D308949](https://phabricator.services.mozilla.com/D308949)\n- **Media** HLS and ORB handling moved forward with MPEG-TS sniffing, media-source treatment, bad-resource failure handling, and dedicated ORB tests, tightening streaming correctness and security boundaries. [Phab D310091](https://phabricator.services.mozilla.com/D310091) [Phab D310092](https://phabricator.services.mozilla.com/D310092) [Phab D310093](https://phabricator.services.mozilla.com/D310093) [Phab D310094](https://phabricator.services.mozilla.com/D310094)\n- **Security** NSS was updated and certificate verification got hardened with null checks and tests for unknown COSE key types, while several font parser checks landed to reduce unsafe edge cases. [Phab D310140](https://phabricator.services.mozilla.com/D310140) [Phab D310115](https://phabricator.services.mozilla.com/D310115) [Phab D310124](https://phabricator.services.mozilla.com/D310124) [Phab D308373](https://phabricator.services.mozilla.com/D308373) [Phab D308374](https://phabricator.services.mozilla.com/D308374) [Phab D308375](https://phabricator.services.mozilla.com/D308375)\n- **Perf** GC scheduling got a focused tuning series to avoid unnecessary slices, cap background work, and handle budget expiry better, aiming at smoother main-thread behavior. [Phab D310035](https://phabricator.services.mozilla.com/D310035) [Phab D310036](https://phabricator.services.mozilla.com/D310036) [Phab D310037](https://phabricator.services.mozilla.com/D310037) [Phab D310038](https://phabricator.services.mozilla.com/D310038) [Phab D310039](https://phabricator.services.mozilla.com/D310039)\n- **DevTools** Stylesheet text loading and style computation were fixed in Local Mode and override flows, plus concurrent stylesheet fetches now coalesce instead of duplicating work. [Phab D310056](https://phabricator.services.mozilla.com/D310056) [Phab D310004](https://phabricator.services.mozilla.com/D310004) [Phab D310269](https://phabricator.services.mozilla.com/D310269)\n- **Web Platform** DOM-based EditContext gained spellchecking support and stopped removing empty text nodes, improving correctness for rich text editing flows. [Phab D309416](https://phabricator.services.mozilla.com/D309416) [Phab D309458](https://phabricator.services.mozilla.com/D309458)\n- **Rendering** Multicol absolute-positioned layout support expanded significantly, with fragmentation, containing-block, display-list, and WPT coverage all landing together. [Phab D307145](https://phabricator.services.mozilla.com/D307145) [Phab D307146](https://phabricator.services.mozilla.com/D307146) [Phab D304804](https://phabricator.services.mozilla.com/D304804) [Phab D307674](https://phabricator.services.mozilla.com/D307674) [Phab D307147](https://phabricator.services.mozilla.com/D307147) [Phab D307675](https://phabricator.services.mozilla.com/D307675)\n\n## What landed by area\n\n### Firefox UI and theming\n- **UI** Added a vertical visual picker configuration for theme selection. [Phab D308091](https://phabricator.services.mozilla.com/D308091)\n- **UI** Added the basic theme picker UI. [Phab D309720](https://phabricator.services.mozilla.com/D309720)\n- **UI** Let the autocomplete panel follow content's preferred color scheme. [Phab D310048](https://phabricator.services.mozilla.com/D310048)\n- **UI** Gave ghost moz-button a visible border in Nova prefers-contrast. [Phab D309193](https://phabricator.services.mozilla.com/D309193)\n- **UI** Switched menulist to select design tokens. [Phab D310236](https://phabricator.services.mozilla.com/D310236)\n- **UI** Fixed permission dialog button spacing. [Phab D310373](https://phabricator.services.mozilla.com/D310373)\n- **UI** Novafied the customize toolbar panel. [Phab D309629](https://phabricator.services.mozilla.com/D309629)\n- **UI** Fixed Smart Window sidebar animation when the left sidebar is already open. [Phab D309972](https://phabricator.services.mozilla.com/D309972)\n- **UI** Fixed New Tab card image width so it stays correct regardless of card width. [Phab D307845](https://phabricator.services.mozilla.com/D307845)\n- **Privacy** Removed the \"0 trackers blocked\" state from the Privacy Panel. [Phab D308300](https://phabricator.services.mozilla.com/D308300)\n- **A11y** Converted `selected` to a standard boolean attribute. [Phab D186734](https://phabricator.services.mozilla.com/D186734)\n\n### New Tab, Urlbar, defaults, and browser shell\n- **Refactor** Extracted DefaultBrowserHelper into its own module. [Phab D309440](https://phabricator.services.mozilla.com/D309440)\n- **UI** Made DefaultBrowserHelper support multiple poll subscribers. [Phab D309447](https://phabricator.services.mozilla.com/D309447)\n- **UI** Added custom browser icon variants and embedded them as executable resources. [Phab D308650](https://phabricator.services.mozilla.com/D308650)\n- **UI** Batched widget maximize and minimize prefs into a single SET_MULTIPLE_PREFS update to avoid staggered resize. [Phab D308852](https://phabricator.services.mozilla.com/D308852)\n- **UI** Initialized the MozAdsClient singleton in New Tab behind a feature flag. [Phab D309444](https://phabricator.services.mozilla.com/D309444)\n- **UI** Landed manual Smart Bar intent configuration. [Phab D307418](https://phabricator.services.mozilla.com/D307418)\n- **Refactor** Made global-action Urlbar results wire-safe as part of IPC Urlbar phase 6. [Phab D310306](https://phabricator.services.mozilla.com/D310306)\n- **UI** Removed an old hack around QR code share menu behavior. [Phab D299174](https://phabricator.services.mozilla.com/D299174)\n\n### Web Platform, DOM, editing, and storage\n- **Web Platform** Added spell checking for DOM-based EditContext. [Phab D309416](https://phabricator.services.mozilla.com/D309416)\n- **Web Platform** Stopped removing empty text nodes in the EditContext editor. [Phab D309458](https://phabricator.services.mozilla.com/D309458)\n- **Refactor** Made active-observable less flaky. [Phab D310375](https://phabricator.services.mozilla.com/D310375)\n- **Web Platform** Added subtree checks in NewWindowGlobal. [Phab D309680](https://phabricator.services.mozilla.com/D309680)\n- **Refactor** Removed Preferences.sys.mjs APIs that were test-only or unused. [Phab D302732](https://phabricator.services.mozilla.com/D302732)\n- **Refactor** Added `nsIPrefBranch.clearUserBranch`. [Phab D305810](https://phabricator.services.mozilla.com/D305810)\n- **Refactor** Reworked `test_user_default_prefs.js` to use async flows for easier extension. [Phab D309768](https://phabricator.services.mozilla.com/D309768)\n- **A11y** Prevented children from being attached to outerdoc. [Phab D305369](https://phabricator.services.mozilla.com/D305369)\n- **A11y** Ensured a hide event never fires during a split show event. [Phab D306672](https://phabricator.services.mozilla.com/D306672)\n- **Web Platform** Set Sensors sampling rate to 60Hz to match Chrome. [Phab D309980](https://phabricator.services.mozilla.com/D309980)\n\n### Networking, cookies, and protocol plumbing\n- **Networking** Instrumented `nsStandardURL::BuildNormalizedSpec` to capture better crash details. [Phab D310398](https://phabricator.services.mozilla.com/D310398)\n- **Networking** Capped PUDPSocket actors per PBackground. [Phab D302915](https://phabricator.services.mozilla.com/D302915)\n- **Networking** Raised `network.http.speculative-parallel-limit` to 20 for `test_http3_421.js`. [Phab D310391](https://phabricator.services.mozilla.com/D310391)\n- **Networking** Tolerated a late loser `Finish0RTT` after ZeroRttHandle cleanup. [Phab D309804](https://phabricator.services.mozilla.com/D309804)\n- **Networking** Added thread-safety checks to `TRRQuery`. [Phab D305601](https://phabricator.services.mozilla.com/D305601)\n- **Refactor** Cleaned up `TRRQuery::CompleteLookup`. [Phab D305279](https://phabricator.services.mozilla.com/D305279)\n- **Refactor** Cleaned up `nsStandardURL::Deserialize`. [Phab D305274](https://phabricator.services.mozilla.com/D305274)\n- **Networking** Disallowed sending `isInDevToolsContext` to parent. [Phab D293448](https://phabricator.services.mozilla.com/D293448)\n- **Networking** Fixed cookie handling. [Phab D292251](https://phabricator.services.mozilla.com/D292251)\n\n### Media, audio, and playback\n- **Media** Tracked audio-session interruption state in the content process. [Phab D308945](https://phabricator.services.mozilla.com/D308945)\n- **Media** Blocked self-start of autoplay-gated media during audio-session interruption. [Phab D308946](https://phabricator.services.mozilla.com/D308946)\n- **Media** Deferred Web Audio resume requests made during interruption. [Phab D308947](https://phabricator.services.mozilla.com/D308947)\n- **Media** Blocked self-start of Web Speech during interruption. [Phab D308948](https://phabricator.services.mozilla.com/D308948)\n- **Media** Added integration tests for self-start blocking during audio-session interruption. [Phab D308949](https://phabricator.services.mozilla.com/D308949)\n- **Media** Started the macOS audio sink asynchronously when resuming after a seek. [Phab D309675](https://phabricator.services.mozilla.com/D309675)\n- **Media** Resumed playback after warm seek with minimal preroll and finer position reporting. [Phab D309676](https://phabricator.services.mozilla.com/D309676)\n- **Media** Kept the system clock until audio catches up after seek resume. [Phab D309677](https://phabricator.services.mozilla.com/D309677)\n- **Media** Avoided an unbounded packetizing loop on zero-frame audio packets. [Phab D310054](https://phabricator.services.mozilla.com/D310054)\n- **Media** Added ORB tests for HLS. [Phab D310091](https://phabricator.services.mozilla.com/D310091)\n- **Media** Added sniffing for `VIDEO_MPEG_TS`. [Phab D310092](https://phabricator.services.mozilla.com/D310092)\n- **Media** Ensured HLS is treated as a media source. [Phab D310093](https://phabricator.services.mozilla.com/D310093)\n- **Media** Made GeckoHlsPlayer handle bad resources more gracefully. [Phab D310094](https://phabricator.services.mozilla.com/D310094)\n- **Media** Tracked protected-playback readiness conditions for MFCDM. [Phab D308937](https://phabricator.services.mozilla.com/D308937)\n- **Media** Recorded protected-playback readiness as it is established for MFCDM. [Phab D308938](https://phabricator.services.mozilla.com/D308938)\n- **Media** Pre-warmed HDCP at CDM init for MFCDM protected playback. [Phab D308939](https://phabricator.services.mozilla.com/D308939)\n- **Media** Held protected topology activation until readiness settles for MFCDM. [Phab D308940](https://phabricator.services.mozilla.com/D308940)\n- **Media** Removed the unused `mHardwareResetInProgress` flag. [Phab D308941](https://phabricator.services.mozilla.com/D308941)\n- **Media** Added bounded last-resort recovery for protected-activation errors in MFCDM. [Phab D308942](https://phabricator.services.mozilla.com/D308942)\n- **Media** Refreshed readiness conditions once a protected frame is produced for MFCDM. [Phab D308943](https://phabricator.services.mozilla.com/D308943)\n- **Media** Recorded a protected-playback readiness Glean probe for MFCDM. [Phab D308944](https://phabricator.services.mozilla.com/D308944)\n- **Media** Landed a media playback change under [bug 2050477](https://bugzilla.mozilla.org/show_bug.cgi?id=2050477). [Phab D309927](https://phabricator.services.mozilla.com/D309927)\n\n### Rendering, graphics, WebGPU, and wasm\n- **Rendering** Refactored abspos continuation position computation. [Phab D307145](https://phabricator.services.mozilla.com/D307145)\n- **Rendering** Passed block frame `ReflowOutput` down into `ReflowAbsoluteDescendantsInInlineFrame()`. [Phab D307146](https://phabricator.services.mozilla.com/D307146)\n- **Rendering** Added support for abspos fragmentation when the containing block is formed inline. [Phab D304804](https://phabricator.services.mozilla.com/D304804)\n- **Rendering** Built display items for block-frame abspos descendants whose containing block is formed by inline. [Phab D307674](https://phabricator.services.mozilla.com/D307674)\n- **Rendering** Added WPTs for abspos under inline elements in multicol. [Phab D307147](https://phabricator.services.mozilla.com/D307147)\n- **Rendering** Marked the new multicol abspos WPTs as PASS. [Phab D307675](https://phabricator.services.mozilla.com/D307675)\n- **GPU** Added `naga-types` to the WebGPU supply chain. [Phab D309955](https://phabricator.services.mozilla.com/D309955)\n- **GPU** Fixed WebGPU error-case accounting for readback buffer IDs. [Phab D309714](https://phabricator.services.mozilla.com/D309714)\n- **Rendering** Extracted split composite code out of picture batching. [Phab D309365](https://phabricator.services.mozilla.com/D309365)\n- **Rendering** Removed unused picture-effect brush compositing paths. [Phab D308514](https://phabricator.services.mozilla.com/D308514)\n- **Rendering** Composited identity-filter pictures via the quad path. [Phab D308513](https://phabricator.services.mozilla.com/D308513)\n- **Perf** Aligned tile-invalidation quantization with rasterizer pixel rounding. [Phab D310211](https://phabricator.services.mozilla.com/D310211)\n- **Perf** Restricted `ScaleYCbCrToRGB32` to the deprecated path only when assembly actually makes it faster. [Phab D309979](https://phabricator.services.mozilla.com/D309979)\n- **Security** Flipped the polarity of a bounds check in cairo code. [Phab D307892](https://phabricator.services.mozilla.com/D307892)\n- **GPU** Landed a gfx-side fix under [bug 2051653](https://bugzilla.mozilla.org/show_bug.cgi?id=2051653). [Phab D309978](https://phabricator.services.mozilla.com/D309978)\n- **Web Platform** Added `FuncType::ToString` for wasm component model plumbing. [Phab D309225](https://phabricator.services.mozilla.com/D309225)\n- **Web Platform** Implemented import validation for core instances. [Phab D309224](https://phabricator.services.mozilla.com/D309224)\n- **Web Platform** Implemented `canonopt` and `canon lower`. [Phab D309223](https://phabricator.services.mozilla.com/D309223)\n- **Web Platform** Implemented inline exports for core instances. [Phab D309222](https://phabricator.services.mozilla.com/D309222)\n- **Refactor** Reworked `ComponentItem` to support raw items. [Phab D309221](https://phabricator.services.mozilla.com/D309221)\n- **Refactor** Moved large Component definitions into `.cpp` files. [Phab D309220](https://phabricator.services.mozilla.com/D309220)\n\n### DevTools, profiler, and diagnostics\n- **DevTools** Showed correct stylesheet text content when using Local Mode or Network override. [Phab D310056](https://phabricator.services.mozilla.com/D310056)\n- **DevTools** Passed the binding element instead of pseudo element to `InspectorUtils.getComputationSteps`. [Phab D310004](https://phabricator.services.mozilla.com/D310004)\n- **DevTools** Cached `getStyleSheetsText` promises to avoid concurrent fetches for the same stylesheet. [Phab D310269](https://phabricator.services.mozilla.com/D310269)\n- **DevTools** Removed a backward-compatibility comment for show-comments options. [Phab D310225](https://phabricator.services.mozilla.com/D310225)\n- **Perf** Removed the CPU Utilization checkbox and `cpu` feature references from the profiler frontend and perf harnesses. [Phab D306737](https://phabricator.services.mozilla.com/D306737)\n- **Perf** Removed the CPUUtilization profiler feature and now always gathers thread CPU. [Phab D306736](https://phabricator.services.mozilla.com/D306736)\n- **Refactor** Converted problematic `nsSHistory.cpp` log strings to UTF-8. [Phab D310067](https://phabricator.services.mozilla.com/D310067)\n- **UI** Fixed assertions in `IMEContentObserver::InitWithEditor()`. [Phab D310270](https://phabricator.services.mozilla.com/D310270)\n\n### Security, crypto, and privacy plumbing\n- **Security** Updated NSS to `9cd244e1a10de8260eafd83d535be46f2b0349d1`. [Phab D310140](https://phabricator.services.mozilla.com/D310140)\n- **Security** Stopped using `early_beta_or_earlier` in `dom:security` code. [Phab D309789](https://phabricator.services.mozilla.com/D309789)\n- **Security** Removed the `security.csp.truncate_blocked_uri_for_frame_navigations` pref. [Phab D309808](https://phabricator.services.mozilla.com/D309808)\n- **Security** Stopped using `nsIPrompt` directly in `pippki.sys.mjs`. [Phab D309171](https://phabricator.services.mozilla.com/D309171)\n- **Security** Added a test for unknown key types in COSE signature certificates. [Phab D310124](https://phabricator.services.mozilla.com/D310124)\n- **Security** Added a null check for `SECKEY_ExtractPublicKey` in `CoseVerificationCallback`. [Phab D310115](https://phabricator.services.mozilla.com/D310115)\n- **Security** Validated `fdselect` entries before use. [Phab D308373](https://phabricator.services.mozilla.com/D308373)\n- **Security** Added glyph ID range checks. [Phab D308374](https://phabricator.services.mozilla.com/D308374)\n- **Security** Added a Type 1 stack size check. [Phab D308375](https://phabricator.services.mozilla.com/D308375)\n- **Privacy** Added telemetry to the login storage migrator. [Phab D307491](https://phabricator.services.mozilla.com/D307491)\n\n### Android, autofill, and mobile\n- **Mobile** Updated address autofill ML config to use a quantized model and enabled it outside Nightly. [Phab D310068](https://phabricator.services.mozilla.com/D310068)\n- **Mobile** Stored Form Autofill passports in the Application Services store. [Phab D309354](https://phabricator.services.mozilla.com/D309354)\n- **Mobile** Exposed the Application Services autofill component via UniFFI. [Phab D309353](https://phabricator.services.mozilla.com/D309353)\n- **Mobile** Normalized passport date and name fields via `PassportRecord`. [Phab D309350](https://phabricator.services.mozilla.com/D309350)\n- **Mobile** Compiled with Android SDK 37.1. [Phab D310231](https://phabricator.services.mozilla.com/D310231)\n- **Build** Updated Android SDK Command-line Tools to version 21.0. [Phab D310230](https://phabricator.services.mozilla.com/D310230)\n- **Mobile** Removed the custom-review-prompt Nimbus flag and review prompt triggers from a failed experiment. [Phab D310033](https://phabricator.services.mozilla.com/D310033)\n- **Mobile** Removed Scope Session. [Phab D310079](https://phabricator.services.mozilla.com/D310079)\n- **Refactor** Removed an unused `TWO_DAYS_MS` constant from `Settings.kt`. [Phab D310040](https://phabricator.services.mozilla.com/D310040)\n- **Mobile** Allowed summarization to happen while the page is still loading. [Phab D308114](https://phabricator.services.mozilla.com/D308114)\n- **Build** Updated Android nightly application-services to `8341edd91f3413a87ae304047b8fa96066b32f0b`. [Phab D310271](https://phabricator.services.mozilla.com/D310271)\n\n### Build, CI, release, and platform plumbing\n- **Build** Replaced `test_apk` transforms with `task_context`. [Phab D310371](https://phabricator.services.mozilla.com/D310371)\n- **Build** Replaced the `shipping-product` attribute with local `app-name` context. [Phab D310350](https://phabricator.services.mozilla.com/D310350)\n- **Build** Used a nightly-as-release profile when building Linux nightly-as-release. [Phab D310127](https://phabricator.services.mozilla.com/D310127)\n- **Build** Passed `CC`, `CXX`, and similar moz.configure values as lists into the build system. [Phab D216402](https://phabricator.services.mozilla.com/D216402)\n- **Build** Ran valgrind tasks on the same worker type as builds. [Phab D310252](https://phabricator.services.mozilla.com/D310252)\n- **Build** Indexed only notarized macOS geckodriver builds in Taskcluster. [Phab D309688](https://phabricator.services.mozilla.com/D309688)\n- **Build** Handled `XDG_CONFIG_HOME` for Thunderbird profiles. [Phab D309109](https://phabricator.services.mozilla.com/D309109)\n\n### JS engine and runtime internals\n- **Perf** Added release assertions to bailout code. [Phab D309004](https://phabricator.services.mozilla.com/D309004)\n- **Perf** Fixed GC budget expiry handling during main-thread-only marking. [Phab D310035](https://phabricator.services.mozilla.com/D310035)\n- **Perf** Stopped concurrent marking when there is no work to do. [Phab D310036](https://phabricator.services.mozilla.com/D310036)\n- **Perf** Limited `BG_TASK_FINISHED` slice time. [Phab D310037](https://phabricator.services.mozilla.com/D310037)\n- **Perf** Stopped triggering GC slices when there is no foreground work. [Phab D310038](https://phabricator.services.mozilla.com/D310038)\n- **Perf** Reduced work done from unscheduled slices. [Phab D310039](https://phabricator.services.mozilla.com/D310039)\n- **Refactor** Weakened an assertion about OOM during delayed-marking queue processing in tests. [Phab D308893](https://phabricator.services.mozilla.com/D308893)\n\n## Reverts \u0026 Reapplies\n- **UI** Reverted MozAdsClient initialization in New Tab after newtab failures. [bug 2051420](https://bugzilla.mozilla.org/show_bug.cgi?id=2051420)\n- **Refactor** Reverted IPC Urlbar phase 6 wire-safe global-action results after xpcshell failures in `test_quicksuggest.js`. [bug 2052554](https://bugzilla.mozilla.org/show_bug.cgi?id=2052554)\n- **UI** Reverted manual Smart Bar intent configuration after browser-chrome failures in `browser_chats_firefoxview.js`. [bug 2027850](https://bugzilla.mozilla.org/show_bug.cgi?id=2027850)\n- **Networking** Reverted the PUDPSocket actor cap after media data channel failures in `peerConnection_extmapRenegotiation.html`. [bug 2043221](https://bugzilla.mozilla.org/show_bug.cgi?id=2043221)\n- **Web Platform** Reverted the EditContext text-node and spellcheck work after mochitest failures in `editcontext_spellcheck.html`. [bug 2051421](https://bugzilla.mozilla.org/show_bug.cgi?id=2051421)\n- **Build** Reverted direct mach testing for design-system tokens after node failures. [bug 2050612](https://bugzilla.mozilla.org/show_bug.cgi?id=2050612)\n- **Media** Reverted GeckoHlsPlayer bad-resource failure handling after WPT failures in `sandboxed-video.html`. [bug 2049329](https://bugzilla.mozilla.org/show_bug.cgi?id=2049329)\n- **DevTools** Reverted correct stylesheet text loading for Local Mode and Network override after multiple DevTools failures. [bug 2051247](https://bugzilla.mozilla.org/show_bug.cgi?id=2051247)\n- **DevTools** Reverted the `InspectorUtils.getComputationSteps` binding-element change after DevTools failures in `browser_styleeditor_fetch-from-netmonitor.js`. [bug 2050065](https://bugzilla.mozilla.org/show_bug.cgi?id=2050065)\n- **Networking** Reverted disallowing `isInDevToolsContext` to parent after DevTools failures in `browser_styleeditor_fetch-from-netmonitor.js`. [bug 2029482](https://bugzilla.mozilla.org/show_bug.cgi?id=2029482)\n- **Rendering** Reverted tile-invalidation quantization alignment after WebRender failures in `offset-rotate-005.html`. [bug 2052391](https://bugzilla.mozilla.org/show_bug.cgi?id=2052391)\n- **Perf** Reverted the \"do less work from unscheduled slices\" GC patch on developer request. [bug 2051882](https://bugzilla.mozilla.org/show_bug.cgi?id=2051882)\n- **Media** Reverted MFCDM protected-playback readiness probe recording after Windows build bustage. [bug 2048342](https://bugzilla.mozilla.org/show_bug.cgi?id=2048342)\n- **UI** Reverted exiting Fullscreen when opening Document PiP after mochitest assertion failures in `CanonicalBrowsingContext.cpp`. [bug 2051146](https://bugzilla.mozilla.org/show_bug.cgi?id=2051146)\n- **Security** Reverted the `pippki.sys.mjs` prompt plumbing change after LeakSanitizer failures. [bug 1425832](https://bugzilla.mozilla.org/show_bug.cgi?id=1425832)\n- **UI** Reverted always showing an add-shortcut button for New Tab shortcuts after mochitest failures. [bug 2035622](https://bugzilla.mozilla.org/show_bug.cgi?id=2035622)",
  "repo": "firefox",
  "repoDisplay": "Firefox",
  "rollGroups": [
    {
      "name": "No",
      "count": 6
    }
  ],
  "since": "2026-07-03",
  "totals": {
    "commits": 158,
    "features": 152,
    "rolls": 6
  },
  "until": "2026-07-03"
}