Bug 312814

Summary: [iOS] imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/selectedcontent-mutations.html is a constant text failure
Product: WebKit Reporter: Diego De La Toba <d_delatoba>
Component: New BugsAssignee: Diego De La Toba <d_delatoba>
Status: RESOLVED FIXED    
Severity: Normal CC: cdumez, webkit-bot-watchers-bugzilla, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Diego De La Toba
Reported 2026-04-20 14:17:28 PDT
imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/selectedcontent-mutations.html is a constant text failure on iOS. HISTORY: https://results.webkit.org/?suite=layout-tests&test=imported%2Fw3c%2Fweb-platform-tests%2Fhtml%2Fsemantics%2Fforms%2Fthe-select-element%2Fcustomizable-select%2Fselectedcontent-mutations.html DIFF: --- /Volumes/Data/worker/Apple-iOS-26-Simulator-Release-WK2-Tests/build/layout-test-results/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/selectedcontent-mutations-expected.txt +++ /Volumes/Data/worker/Apple-iOS-26-Simulator-Release-WK2-Tests/build/layout-test-results/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/selectedcontent-mutations-actual.txt @@ -16,7 +16,7 @@ PASS MutationObserver records during parsing of <select> with <selectedcontent>: test1 PASS MutationObserver records during parsing of <select> with <selectedcontent>: test2 -FAIL MutationObserver records during parsing of <select> with <selectedcontent>: test3 assert_array_equals: test3 lengths differ, expected array […, "Type: childList | Target: selectedcontent | Added: [#text: \"inner1\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [selectedcontent] | After: #text: \"\"", "Type: childList | Target: selectedcontent | Added: [#text: \"outer2\"]", "Type: childList | Target: selectedcontent | Added: [selectedcontent] | After: #text: \"outer2\"", "Type: childList | Target: selectedcontent | Added: [#text: \"inner2\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: select | Added: [#text: \"\"] | After: button", "Type: childList | Target: select | Added: [option] | After: #text: \"\"", "Type: childList | Target: selectedcontent | Removed: [#text: \"outer1\", selectedcontent, #text: \"\"]", "Type: childList | Target: selectedcontent | Removed: [#text: \"inner1\"]", "Type: childList | Target: selectedcontent | Removed: [#text: \"outer2\", selectedcontent, #text: \"\"]", "Type: childList | Target: selectedcontent | Removed: [#text: \"inner2\"]", "Type: childList | Target: option | Added: [#text: \"option\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"option\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"option\"]", "Type: childList | Target: select | Added: [#text: \"\"] | After: option", "Type: childList | Target: div#test3 | Added: [#text: \"\"] | After: select"] length 28, got […, "Type: childList | Target: button | Added: [selectedcontent] | After: #text: \"\"", "Type: childList | Target: selectedcontent | Added: [#text: \"outer1\"]", "Type: childList | Target: selectedcontent | Added: [selectedcontent] | After: #text: \"outer1\"", "Type: childList | Target: selectedcontent | Added: [#text: \"inner1\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [selectedcontent] | After: #text: \"\"", "Type: childList | Target: selectedcontent | Removed: [#text: \"outer1\", selectedcontent, #text: \"\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"outer2\"]", "Type: childList | Target: selectedcontent | Added: [selectedcontent] | After: #text: \"outer2\"", "Type: childList | Target: selectedcontent | Added: [#text: \"inner2\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: select | Added: [#text: \"\"] | After: button", "Type: childList | Target: select | Added: [option] | After: #text: \"\"", "Type: childList | Target: option | Added: [#text: \"option\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"option\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"option\"] | Removed: [#text: \"outer2\", selectedcontent, #text: \"\"]", "Type: childList | Target: select | Added: [#text: \"\"] | After: option", "Type: childList | Target: div#test3 | Added: [#text: \"\"] | After: select"] length 25 +FAIL MutationObserver records during parsing of <select> with <selectedcontent>: test3 assert_array_equals: test3 lengths differ, expected array […, "Type: childList | Target: selectedcontent | Added: [#text: \"inner1\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [selectedcontent] | After: #text: \"\"", "Type: childList | Target: selectedcontent | Added: [#text: \"outer2\"]", "Type: childList | Target: selectedcontent | Added: [selectedcontent] | After: #text: \"outer2\"", "Type: childList | Target: selectedcontent | Added: [#text: \"inner2\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: select | Added: [#text: \"\"] | After: button", "Type: childList | Target: select | Added: [option] | After: #text: \"\"", "Type: childList | Target: selectedcontent | Removed: [#text: \"outer1\", selectedcontent, #text: \"\"]", "Type: childList | Target: selectedcontent | Removed: [#text: \"inner1\"]", "Type: childList | Target: selectedcontent | Removed: [#text: \"outer2\", selectedcontent, #text: \"\"]", "Type: childList | Target: selectedcontent | Removed: [#text: \"inner2\"]", "Type: childList | Target: option | Added: [#text: \"option\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"option\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"option\"]", "Type: childList | Target: select | Added: [#text: \"\"] | After: option", "Type: childList | Target: div#test3 | Added: [#text: \"\"] | After: select"] length 28, got […, "Type: childList | Target: selectedcontent | Added: [#text: \"outer1\"]", "Type: childList | Target: selectedcontent | Added: [selectedcontent] | After: #text: \"outer1\"", "Type: childList | Target: selectedcontent | Added: [#text: \"inner1\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [selectedcontent] | After: #text: \"\"", "Type: childList | Target: selectedcontent | Removed: [#text: \"outer1\", selectedcontent, #text: \"\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"outer2\"]", "Type: childList | Target: selectedcontent | Added: [selectedcontent] | After: #text: \"outer2\"", "Type: childList | Target: selectedcontent | Added: [#text: \"inner2\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: select | Added: [#text: \"\"] | After: button", "Type: childList | Target: select | Added: [option] | After: #text: \"\"", "Type: childList | Target: selectedcontent | Removed: [#text: \"outer2\", selectedcontent, #text: \"\"]", "Type: childList | Target: option | Added: [#text: \"option\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"option\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"option\"]", "Type: childList | Target: select | Added: [#text: \"\"] | After: option", "Type: childList | Target: div#test3 | Added: [#text: \"\"] | After: select"] length 26 FAIL MutationObserver records during parsing of <select> with <selectedcontent>: test4 assert_array_equals: test4 lengths differ, expected array […, "Type: childList | Target: button | Added: [#text: \"\"]", "Type: childList | Target: button | Added: [selectedcontent] | After: #text: \"\"", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: select | Added: [#text: \"\"] | After: button", "Type: childList | Target: select | Added: [div] | After: #text: \"\"", "Type: childList | Target: div | Added: [#text: \"\"]", "Type: childList | Target: div | Added: [option] | After: #text: \"\"", "Type: childList | Target: option | Added: [#text: \"one\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"one\"]", "Type: childList | Target: div | Added: [#text: \"\"] | After: option", "Type: childList | Target: select | Added: [#text: \"\"] | After: div", "Type: childList | Target: select | Added: [div] | After: #text: \"\"", "Type: childList | Target: div | Added: [#text: \"\"]", "Type: childList | Target: div | Added: [option] | After: #text: \"\"", "Type: childList | Target: selectedcontent | Removed: [#text: \"one\"]", "Type: childList | Target: option | Added: [#text: \"two\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"two\"]", "Type: childList | Target: div | Added: [#text: \"\"] | After: option", "Type: childList | Target: select | Added: [#text: \"\"] | After: div", "Type: childList | Target: div#test4 | Added: [#text: \"\"] | After: select"] length 24, got […, "Type: childList | Target: select | Added: [button] | After: #text: \"\"", "Type: childList | Target: button | Added: [#text: \"\"]", "Type: childList | Target: button | Added: [selectedcontent] | After: #text: \"\"", "Type: childList | Target: button | Added: [#text: \"\"] | After: selectedcontent", "Type: childList | Target: select | Added: [#text: \"\"] | After: button", "Type: childList | Target: select | Added: [div] | After: #text: \"\"", "Type: childList | Target: div | Added: [#text: \"\"]", "Type: childList | Target: div | Added: [option] | After: #text: \"\"", "Type: childList | Target: option | Added: [#text: \"one\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"one\"]", "Type: childList | Target: div | Added: [#text: \"\"] | After: option", "Type: childList | Target: select | Added: [#text: \"\"] | After: div", "Type: childList | Target: select | Added: [div] | After: #text: \"\"", "Type: childList | Target: div | Added: [#text: \"\"]", "Type: childList | Target: div | Added: [option] | After: #text: \"\"", "Type: childList | Target: option | Added: [#text: \"two\"]", "Type: childList | Target: selectedcontent | Added: [#text: \"two\"] | Removed: [#text: \"one\"]", "Type: childList | Target: div | Added: [#text: \"\"] | After: option", "Type: childList | Target: select | Added: [#text: \"\"] | After: div", "Type: childList | Target: div#test4 | Added: [#text: \"\"] | After: select"] length 23 PASS MutationObserver records during parsing of <select> with <selectedcontent>: test5 PASS MutationObserver records during parsing of <select> with <selectedcontent>: test6 DIFF URL: https://build.webkit.org/results/Apple-iOS-26-Simulator-Release-WK2-Tests/311584@main%20(2675)/imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/selectedcontent-mutations-pretty-diff.html REPRODUCTION: I was able to reproduce this on iOS 26.4 release ToT with the following: run-webkit-tests --iOS-simulator --force --no-retry imported/w3c/web-platform-tests/html/semantics/forms/the-select-element/customizable-select/selectedcontent-mutations.html I am going to mark expectations as FAIL while this pends investigation.
Attachments
Radar WebKit Bug Importer
Comment 1 2026-04-20 14:17:35 PDT
Diego De La Toba
Comment 2 2026-04-20 14:18:04 PDT
Looks like a rebaseline that was not accounted for in 310930@main.
Diego De La Toba
Comment 3 2026-04-20 14:18:08 PDT
Looks like a rebaseline that was not accounted for in 310930@main.
Diego De La Toba
Comment 4 2026-04-20 14:21:44 PDT
Test gardening pull request: https://github.com/WebKit/WebKit/pull/63156
EWS
Comment 5 2026-04-20 14:23:37 PDT
Test gardening commit 311620@main (6870f85b854f): <https://commits.webkit.org/311620@main> Reviewed commits have been landed. Closing PR #63156 and removing active labels.
Diego De La Toba
Comment 6 2026-04-20 14:28:51 PDT
Diego De La Toba
Comment 7 2026-04-21 09:56:10 PDT
EWS
Comment 8 2026-04-21 18:38:05 PDT
Committed 311734@main (b9d8e98a3ba5): <https://commits.webkit.org/311734@main> Reviewed commits have been landed. Closing PR #63236 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.