)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"564c346592409f58eb8a2d594a192d2843360f92","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"ab182aaa_5ec543c2","updated":"2026-07-31 10:19:06.000000000","message":"this is WIP and will need to be updated","commit_id":"d8992a5f918b02d03067a85a3fe92dc8c9ed1aa3"}],"watcher/tests/functional/base.py":[{"author":{"_account_id":28006,"name":"teim-ci","display_name":"teim-ci","email":"ci@seanmooney.info","username":"ci-sean-mooney","status":"this is a third-party ci account run by sean-k-mooney on irc\nhosted at zuul.teim.app"},"tag":"autogenerated:zuul:automatic-ci","change_message_id":"763a9f4d64fb3a9906836431e74de04293024a61","unresolved":false,"context_lines":[{"line_number":282,"context_line":"                start_de\u003dself.START_DECISION_ENGINE,"},{"line_number":283,"context_line":"                start_applier\u003dself.START_APPLIER,"},{"line_number":284,"context_line":"                log_name\u003dself.id(),"},{"line_number":285,"context_line":"                cast_as_call\u003dself.CAST_AS_CALL,"},{"line_number":286,"context_line":"                compute_topology\u003dself.COMPUTE_TOPOLOGY,"},{"line_number":287,"context_line":"                use_ironic_emulator\u003dself.USE_IRONIC_EMULATOR,"},{"line_number":288,"context_line":"            )"}],"source_content_type":"text/x-python","patch_set":2,"id":"669fec4d_49f77994","line":285,"updated":"2026-07-31 10:53:07.000000000","message":"The WatcherFunctionalTestCase defines IRONIC_NODES \u003d None alongside USE_IRONIC_EMULATOR, but setUp() only passes use_ironic_emulator to WatcherEnvironment and omits ironic_nodes\u003dself.IRONIC_NODES. Setting IRONIC_NODES on a subclass has no effect.\n\n**Severity**: SUGGESTION | **Confidence**: 0.9\n\n**Benefit**: A test author setting IRONIC_NODES on a subclass would expect initial Ironic topology to be loaded, but nothing would happen. They would need to discover that load_topology(ironic_nodes\u003d...) is the only working path, wasting time and potentially masking test failures.\n\n**Recommendation**:\nEither pass `ironic_nodes\u003dself.IRONIC_NODES` in the WatcherEnvironment constructor call within setUp(), or remove the IRONIC_NODES class attribute if load_topology() is intended as the sole mechanism for loading Ironic nodes.","commit_id":"0d816d655cedf8052cc50e292cde079446e6cdb0"}]}
