{"data":{"id":"magento2-40881","source":"github-pr","sourceRef":"magento/magento2#40881","title":"Magento2 redirects to homepage instead of showing error with wrong menu declaration","pr":{"number":40881,"url":"https://github.com/magento/magento2/pull/40881","author":"aasim110","mergedAt":"2026-08-14T09:28:44Z","mergeCommit":"e650aad6d22d75e3c4b88d2a0da93d13b6ff8f2d","headCommit":"3476fdd8c4d56b1ad2ca1580b6e8c946567108b4","baseRef":"2.4-develop","diffSha256":"b0346e63054daa40413f10cc8c35b15da5f07e38f06669cbc24ba0329f3ad552"},"issues":[{"number":36632,"url":"https://github.com/magento/magento2/issues/36632","title":"Magento2 redirects to homepage instead of showing error with wrong menu declaration","labels":["Area: Admin UI","Area: UI Framework","Issue: Confirmed","Priority: P2","Progress: PR Created","Progress: done","Reported on 2.4.x","Reproduced on 2.4.x","Triage: Dev.Experience"],"kind":"human"}],"fixedIn":null,"containingTags":[],"reportedOn":null,"codeMatch":{"2.4.6":"clean","2.4.6-p1":"clean","2.4.6-p2":"clean","2.4.6-p3":"clean","2.4.6-p4":"clean","2.4.6-p5":"clean","2.4.6-p6":"clean","2.4.6-p7":"clean","2.4.6-p8":"clean","2.4.6-p9":"clean","2.4.6-p10":"clean","2.4.6-p11":"clean","2.4.6-p12":"clean","2.4.6-p13":"clean","2.4.6-p14":"clean","2.4.6-p15":"clean","2.4.7":"clean","2.4.7-p1":"clean","2.4.7-p2":"clean","2.4.7-p3":"clean","2.4.7-p4":"clean","2.4.7-p5":"clean","2.4.7-p6":"clean","2.4.7-p7":"clean","2.4.7-p8":"clean","2.4.7-p9":"clean","2.4.7-p10":"clean","2.4.8":"clean","2.4.8-p1":"clean","2.4.8-p2":"clean","2.4.8-p3":"clean","2.4.8-p4":"clean","2.4.8-p5":"clean","2.4.9":"clean"},"affectedVersions":["2.4.6","2.4.6-p1","2.4.6-p2","2.4.6-p3","2.4.6-p4","2.4.6-p5","2.4.6-p6","2.4.6-p7","2.4.6-p8","2.4.6-p9","2.4.6-p10","2.4.6-p11","2.4.6-p12","2.4.6-p13","2.4.6-p14","2.4.6-p15","2.4.7","2.4.7-p1","2.4.7-p2","2.4.7-p3","2.4.7-p4","2.4.7-p5","2.4.7-p6","2.4.7-p7","2.4.7-p8","2.4.7-p9","2.4.7-p10","2.4.8","2.4.8-p1","2.4.8-p2","2.4.8-p3","2.4.8-p4","2.4.8-p5","2.4.9"],"components":["magento/module-backend"],"files":[{"path":"app/code/Magento/Backend/Model/Menu/Config.php","change":"modified","package":"magento/module-backend"}],"stripped":{"tests":["app/code/Magento/Backend/Test/Unit/Model/Menu/ConfigTest.php"],"docs":[],"outsideCode":[]},"linesChanged":52,"mergeBatched":false,"excluded":null,"sections":{"description":null,"stepsToReproduce":null,"expectedResult":null,"actualResult":null,"source":null},"signatures":[],"labels":{"area":["Admin UI","UI Framework"],"component":[],"priority":"P2","severity":null,"reportedOn":["2.4.x"]},"categories":["Admin"],"triage":{"model":"@cf/cloudflare/clef","requestHash":"1c55fb3bc1d15e404041e4b6f93e0eebab8bee1566eef4f7283aff0613ca1f13","isBugfix":0.9705,"changeKind":{"choice":"bugfix","probabilities":{"bugfix":0.9664,"feature":0.0077,"refactor":0.0133,"tests_only":0.0063,"docs_only":0.0031,"dependency":0.0032},"confidence":0.921},"scope":{"score":0.6725,"probabilities":{"0":0.468,"1":0.3915,"2":0.1405},"confidence":0.088},"risk":{"score":0.4013,"probabilities":{"0":0.6639,"1":0.2709,"2":0.0652},"confidence":0.2776},"area":{"choice":"admin","probabilities":{"catalog":0.0075,"checkout":0.0051,"customer":0.0088,"admin":0.846,"graphql_api":0.0042,"framework":0.1014,"frontend":0.0093,"other":0.0177},"confidence":0.6875},"securityRelevant":0.0224,"reportedVersion":{"choice":"unspecified","probabilities":{"2.4.0":0.0061,"2.4.0-p1":0.0048,"2.4.1":0.0077,"2.4.1-p1":0.0065,"2.4.2":0.0145,"2.4.2-p1":0.0104,"2.4.2-p2":0.0115,"2.4.3":0.0215,"2.4.3-p1":0.0246,"2.4.3-p2":0.0158,"2.4.3-p3":0.0102,"2.4.4":0.0232,"2.4.4-p1":0.0241,"2.4.4-p10":0.0091,"2.4.4-p11":0.0132,"2.4.4-p12":0.01,"2.4.4-p13":0.0089,"2.4.4-p14":0.0111,"2.4.4-p15":0.0081,"2.4.4-p16":0.0087,"2.4.4-p17":0.0074,"2.4.4-p18":0.0063,"2.4.4-p2":0.004,"2.4.4-p3":0.005,"2.4.4-p4":0.0072,"2.4.4-p5":0.0063,"2.4.4-p6":0.0066,"2.4.4-p7":0.0078,"2.4.4-p8":0.0062,"2.4.4-p9":0.0057,"2.4.5":0.0156,"2.4.5-p1":0.015,"2.4.5-p10":0.0083,"2.4.5-p11":0.0118,"2.4.5-p12":0.0098,"2.4.5-p13":0.0082,"2.4.5-p14":0.0084,"2.4.5-p15":0.0065,"2.4.5-p16":0.0063,"2.4.5-p17":0.0072,"2.4.5-p2":0.0041,"2.4.5-p3":0.0054,"2.4.5-p4":0.007,"2.4.5-p5":0.0063,"2.4.5-p6":0.0069,"2.4.5-p7":0.0071,"2.4.5-p8":0.0053,"2.4.5-p9":0.0045,"2.4.6":0.0223,"2.4.6-p1":0.0254,"2.4.6-p10":0.0083,"2.4.6-p11":0.0113,"2.4.6-p12":0.0092,"2.4.6-p13":0.0097,"2.4.6-p14":0.0097,"2.4.6-p15":0.0068,"2.4.6-p2":0.005,"2.4.6-p3":0.0079,"2.4.6-p4":0.0093,"2.4.6-p5":0.0096,"2.4.6-p6":0.0081,"2.4.6-p7":0.0076,"2.4.6-p8":0.0061,"2.4.6-p9":0.005,"2.4.7":0.0141,"2.4.7-p1":0.017,"2.4.7-p10":0.0095,"2.4.7-p2":0.0097,"2.4.7-p3":0.0129,"2.4.7-p4":0.0158,"2.4.7-p5":0.0128,"2.4.7-p6":0.0133,"2.4.7-p7":0.011,"2.4.7-p8":0.0087,"2.4.7-p9":0.0058,"2.4.8":0.0135,"2.4.8-p1":0.0144,"2.4.8-p2":0.0147,"2.4.8-p3":0.014,"2.4.8-p4":0.014,"2.4.8-p5":0.0116,"2.4.9":0.0138,"unspecified":0.1559},"confidence":0.0232},"backportWorthy":{"score":1.4059,"probabilities":{"0":0.1627,"1":0.2687,"2":0.5686},"confidence":0.133}},"curated":{"title":"Fixes admin redirect loop instead of an error when menu.xml is invalid","description":"When a module's menu.xml declares an invalid menu item, such as one with a missing parent item, the raw exceptions went uncaught and ended in a redirect loop (ERR_TOO_MANY_REDIRECTS) without logs or helpful messages. Backend Menu Config::getMenu() now wraps these exceptions in a LocalizedException with diagnostic messages and also logs generic exceptions.","categories":["Admin"],"author":"claude-code/opus-5.5","date":"2026-10-06","reviewedBy":null},"tests":{"2.4.8-p5":{"before":"not-runnable","after":"error","adapted":false,"runAt":"2026-10-06T09:20:33.168Z","releaseCommit":"870a22c63d9d9b68fa3297962e2d5d5841115814","suites":{"unit":{"before":"not-runnable","after":"error","runAt":"2026-10-06T09:20:33.168Z"}}},"2.4.9":{"before":"not-runnable","after":"pass","adapted":false,"runAt":"2026-10-06T09:20:33.720Z","releaseCommit":"755e34dd689021c5165db9d35ecff74f7dc51527","suites":{"unit":{"before":"not-runnable","after":"pass","runAt":"2026-10-06T09:20:33.720Z"}}},"2.4.7-p10":{"before":"not-runnable","after":"error","adapted":false,"runAt":"2026-10-06T09:29:35.545Z","releaseCommit":"72561bf80652f57cc642a03e2c9a51d74a285b14","suites":{"unit":{"before":"not-runnable","after":"error","runAt":"2026-10-06T09:29:35.545Z"}}}}},"_documentation":"https://magento.watch/api","_description":"Upstream fix magento2-40881 details"}