)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":35133,"name":"Jan Jasek","email":"jjasek@redhat.com","username":"janjasek"},"change_message_id":"0320c059dff7d6d2b4a0a1eda3661fa36744b320","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":3,"id":"a3b746df_193ca3e8","updated":"2026-09-09 07:55:31.000000000","message":"Hi guys, thanks for the patch!\nI think that the fix is correct, but I think that the commit message is a little bit misleading.\nWe are still running the Angular panel in CI - there is used ```magic-search``` (```.search-input```) which causes API reload + Angular table re-render.\n\nI think that the statement\n```The WebDriverWait polls until exactly one matching row exists,\neliminating the timing race between send_keys() and the 300ms\ndebounce in horizon.datatables.set_quota_filter().```\n\nCould be (probably, I did not checked it deeply) correct in case of Django panel - but then your fix will not work, because Django panel does not have selector ```td[class\u003d\u0027rsp-p1 word-wrap\u0027]```\n\nI am also honestly not sure where ```horizon.datatables.set_quota_filter()``` in the commit message is coming from. I was not able to find this function anywhere in our codebase.\n\nMaybe I am missing something? If anyone can clarify it/correct me, I will be happy.\nThanks!","commit_id":"1e94f2cfad31bfec75e457012019c6fd5c7aa1ae"},{"author":{"_account_id":32432,"name":"Owen McGonagle","email":"omcgonag@redhat.com","username":"omcgonag"},"change_message_id":"f2f11a0aa575878b3332ee802d03db49a9b608f0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"75203e82_d15dce74","updated":"2026-09-09 14:23:45.000000000","message":"I did not test it - but last change/patch in Patchset 3 looks good.","commit_id":"9a9b25b4562eda56231aa96c80b80de7bc6e9a85"},{"author":{"_account_id":35133,"name":"Jan Jasek","email":"jjasek@redhat.com","username":"janjasek"},"change_message_id":"0e690fdd8387b36b076f513d4c345db8bda8ed39","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"d1250b2a_37fbdf81","updated":"2026-09-10 10:45:30.000000000","message":"LGTM, thanks!","commit_id":"9a9b25b4562eda56231aa96c80b80de7bc6e9a85"},{"author":{"_account_id":35133,"name":"Jan Jasek","email":"jjasek@redhat.com","username":"janjasek"},"change_message_id":"784f920c6064110ae6ce04def85983504d6184cc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"38c6ad6f_8b1d19b7","updated":"2026-09-11 15:02:22.000000000","message":"The failing test is ```AssertionError: assert \u0027Success: User credential updated successfully.\u0027 in [\u0027Error: Unable to update user credential. Details\u0027]```\nIt seems to be a real issue but not related to this patch.","commit_id":"9a9b25b4562eda56231aa96c80b80de7bc6e9a85"},{"author":{"_account_id":35133,"name":"Jan Jasek","email":"jjasek@redhat.com","username":"janjasek"},"change_message_id":"e2a8c746f93736cb29606c685d7efa8a1e6de185","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"8c752519_47a0172b","updated":"2026-09-11 15:02:55.000000000","message":"recheck","commit_id":"9a9b25b4562eda56231aa96c80b80de7bc6e9a85"}],"openstack_dashboard/test/selenium/integration/test_images.py":[{"author":{"_account_id":35133,"name":"Jan Jasek","email":"jjasek@redhat.com","username":"janjasek"},"change_message_id":"872b3c4fff82bc7b8b5217127040344ca666809a","unresolved":true,"context_lines":[{"line_number":348,"context_line":"    driver.get(url)"},{"line_number":349,"context_line":"    filter_input_field \u003d driver.find_element(By.CSS_SELECTOR, \".search-input\")"},{"line_number":350,"context_line":"    filter_input_field.send_keys(image_name)"},{"line_number":351,"context_line":"    WebDriverWait(driver, 10).until("},{"line_number":352,"context_line":"        lambda d: len(d.find_elements("},{"line_number":353,"context_line":"            By.CSS_SELECTOR, \"td[class\u003d\u0027rsp-p1 word-wrap\u0027]\")) \u003d\u003d 1)"},{"line_number":354,"context_line":"    current_page_definition \u003d widgets.get_image_table_definition(driver)"}],"source_content_type":"text/x-python","patch_set":2,"id":"131596d8_d40dd530","line":351,"range":{"start_line":351,"start_character":26,"end_line":351,"end_character":28},"updated":"2026-06-25 11:21:25.000000000","message":"Hi @omcgonag@redhat.com, we are using the same pattern in multiple places and we trying to avoid hardcoded numbers. Most often we are using ```config.selenium.page_timeout```","commit_id":"aece380f05960146591aaa5d420a41870295f303"},{"author":{"_account_id":32432,"name":"Owen McGonagle","email":"omcgonag@redhat.com","username":"omcgonag"},"change_message_id":"caec40f0ac6cc8e541771648fce20b2eee904350","unresolved":false,"context_lines":[{"line_number":348,"context_line":"    driver.get(url)"},{"line_number":349,"context_line":"    filter_input_field \u003d driver.find_element(By.CSS_SELECTOR, \".search-input\")"},{"line_number":350,"context_line":"    filter_input_field.send_keys(image_name)"},{"line_number":351,"context_line":"    WebDriverWait(driver, 10).until("},{"line_number":352,"context_line":"        lambda d: len(d.find_elements("},{"line_number":353,"context_line":"            By.CSS_SELECTOR, \"td[class\u003d\u0027rsp-p1 word-wrap\u0027]\")) \u003d\u003d 1)"},{"line_number":354,"context_line":"    current_page_definition \u003d widgets.get_image_table_definition(driver)"}],"source_content_type":"text/x-python","patch_set":2,"id":"86aa2439_eca7a7f1","line":351,"range":{"start_line":351,"start_character":26,"end_line":351,"end_character":28},"in_reply_to":"131596d8_d40dd530","updated":"2026-09-09 14:19:10.000000000","message":"hardcoded timeout removed.","commit_id":"aece380f05960146591aaa5d420a41870295f303"}]}
