diff --git a/ironic_tempest_plugin/tests/api/admin/test_nodes.py b/ironic_tempest_plugin/tests/api/admin/test_nodes.py
index 6d63768..3da3f3e 100644
--- a/ironic_tempest_plugin/tests/api/admin/test_nodes.py
+++ b/ironic_tempest_plugin/tests/api/admin/test_nodes.py
@@ -372,7 +372,7 @@
     def test_create_node_resource_class_old_api(self):
         """Try to create a node with resource class using older api version."""
         resource_class = data_utils.arbitrary_string()
-        self.assertRaises(lib_exc.UnexpectedResponseCode, self.create_node,
+        self.assertRaises(lib_exc.NotAcceptable, self.create_node,
                           self.chassis['uuid'], resource_class=resource_class)
 
     @decorators.attr(type='negative')
@@ -380,7 +380,7 @@
     def test_update_node_resource_class_old_api(self):
         """Try to update a node with resource class using older api version."""
         resource_class = data_utils.arbitrary_string()
-        self.assertRaises(lib_exc.UnexpectedResponseCode,
+        self.assertRaises(lib_exc.NotAcceptable,
                           self.client.update_node,
                           self.node['uuid'], resource_class=resource_class)
 
@@ -390,10 +390,10 @@
         """Try to list nodes with resource class using older api version."""
         resource_class = data_utils.arbitrary_string()
         self.assertRaises(
-            lib_exc.UnexpectedResponseCode,
+            lib_exc.NotAcceptable,
             self.client.list_nodes, resource_class=resource_class)
         self.assertRaises(
-            lib_exc.UnexpectedResponseCode,
+            lib_exc.NotAcceptable,
             self.client.list_nodes_detail, resource_class=resource_class)
 
 
@@ -1043,10 +1043,9 @@
     @decorators.idempotent_id('5419af7b-4e27-4be4-88f6-e01c598a8102')
     def test_list_node_traits_old_api(self):
         """Try to list traits for a node using an older api version."""
-        exc = self.assertRaises(
-            lib_exc.UnexpectedResponseCode,
+        self.assertRaises(
+            lib_exc.NotAcceptable,
             self.client.list_node_traits, self.node['uuid'])
-        self.assertEqual(406, exc.resp.status)
 
     @decorators.attr(type='negative')
     @decorators.idempotent_id('a4353f3a-bedc-4579-9c7e-4bebcd95903d')
@@ -1096,10 +1095,9 @@
     @decorators.idempotent_id('eb75b3c8-ac9c-4399-90a2-c0030bfde7a6')
     def test_list_nodes_traits_field(self):
         """Try to list nodes' traits field using older api version."""
-        exc = self.assertRaises(
-            lib_exc.UnexpectedResponseCode,
+        self.assertRaises(
+            lib_exc.NotAcceptable,
             self.client.list_nodes, fields='traits')
-        self.assertEqual(406, exc.resp.status)
 
     @decorators.attr(type='negative')
     @decorators.idempotent_id('214ae7fc-149b-4657-b6bc-66353d49ade8')
diff --git a/ironic_tempest_plugin/tests/api/admin/test_ports_negative.py b/ironic_tempest_plugin/tests/api/admin/test_ports_negative.py
index bd338f9..8a812a6 100644
--- a/ironic_tempest_plugin/tests/api/admin/test_ports_negative.py
+++ b/ironic_tempest_plugin/tests/api/admin/test_ports_negative.py
@@ -354,7 +354,7 @@
         node_id = self.node['uuid']
         address = data_utils.rand_mac_address()
 
-        self.assertRaises((lib_exc.BadRequest, lib_exc.UnexpectedResponseCode),
+        self.assertRaises((lib_exc.BadRequest, lib_exc.NotAcceptable),
                           self.create_port,
                           node_id=node_id, address=address,
                           physical_network='physnet1')
@@ -371,7 +371,7 @@
                   'op': 'replace',
                   'value': new_physnet}]
 
-        self.assertRaises((lib_exc.BadRequest, lib_exc.UnexpectedResponseCode),
+        self.assertRaises((lib_exc.BadRequest, lib_exc.NotAcceptable),
                           self.client.update_port,
                           port['uuid'], patch)
 
diff --git a/zuul.d/project.yaml b/zuul.d/project.yaml
index 1be91a6..4d9da27 100644
--- a/zuul.d/project.yaml
+++ b/zuul.d/project.yaml
@@ -11,8 +11,6 @@
         - ironic-standalone-2024.1
         - ironic-standalone-2023.2:
             voting: false
-        - ironic-standalone-2023.1:
-            voting: false
         - ironic-tempest-functional-python3
         - ironic-tempest-functional-python3-2024.2
         - ironic-tempest-functional-python3-2024.1
@@ -22,22 +20,16 @@
         - ironic-tempest-functional-rbac-scope-enforced-2024.1
         - ironic-tempest-functional-rbac-scope-enforced-2023.2:
             voting: false
-        - ironic-tempest-functional-rbac-scope-enforced-2023.1:
-            voting: false
         - ironic-standalone-anaconda
         - ironic-standalone-anaconda-2024.2
         - ironic-standalone-anaconda-2024.1
         - ironic-standalone-anaconda-2023.2:
             voting: false
-        - ironic-standalone-anaconda-2023.1:
-            voting: false
         - ironic-standalone-redfish
         - ironic-standalone-redfish-2024.2
         - ironic-standalone-redfish-2024.1
         - ironic-standalone-redfish-2023.2:
             voting: false
-        - ironic-standalone-redfish-2023.1:
-            voting: false
         # NOTE(dtantsur): inspector is deprecated and rarely sees any changes,
         # no point in running many jobs
         - ironic-inspector-tempest
@@ -56,8 +48,6 @@
             voting: false
         - ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-2023.2:
             voting: false
-        - ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-2023.1:
-            voting: false
         - ironic-inspector-tempest-discovery:
             voting: false
     gate:
diff --git a/zuul.d/stable-jobs.yaml b/zuul.d/stable-jobs.yaml
index 87c6a7f..c75f782 100644
--- a/zuul.d/stable-jobs.yaml
+++ b/zuul.d/stable-jobs.yaml
@@ -14,11 +14,6 @@
     override-checkout: stable/2023.2
 
 - job:
-    name: ironic-standalone-2023.1
-    parent: ironic-standalone
-    override-checkout: stable/2023.1
-
-- job:
     name: ironic-standalone-redfish-2024.2
     parent: ironic-standalone
     override-checkout: stable/2024.2
@@ -34,11 +29,6 @@
     override-checkout: stable/2023.2
 
 - job:
-    name: ironic-standalone-redfish-2023.1
-    parent: ironic-standalone
-    override-checkout: stable/2023.1
-
-- job:
     name: ironic-standalone-anaconda-2024.2
     parent: ironic-standalone-anaconda
     override-checkout: stable/2024.2
@@ -54,11 +44,6 @@
     override-checkout: stable/2023.2
 
 - job:
-    name: ironic-standalone-anaconda-2023.1
-    parent: ironic-standalone-anaconda
-    override-checkout: stable/2023.1
-
-- job:
     name: ironic-tempest-functional-python3-2024.2
     parent: ironic-tempest-functional-python3
     override-checkout: stable/2024.2
@@ -74,11 +59,6 @@
     override-checkout: stable/2023.2
 
 - job:
-    name: ironic-tempest-functional-python3-2023.1
-    parent: ironic-tempest-functional-python3
-    override-checkout: stable/2023.1
-
-- job:
     name: ironic-tempest-functional-rbac-scope-enforced-2024.2
     parent: ironic-tempest-functional-rbac-scope-enforced
     override-checkout: stable/2024.2
@@ -94,11 +74,6 @@
     override-checkout: stable/2023.2
 
 - job:
-    name: ironic-tempest-functional-rbac-scope-enforced-2023.1
-    parent: ironic-tempest-functional-rbac-scope-enforced
-    override-checkout: stable/2023.1
-
-- job:
     name: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-2024.2
     parent: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode
     override-checkout: stable/2024.2
@@ -114,11 +89,6 @@
     override-checkout: stable/2023.2
 
 - job:
-    name: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode-2023.1
-    parent: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode
-    override-checkout: stable/2023.1
-
-- job:
     name: ironic-inspector-tempest-2024.2
     parent: ironic-inspector-tempest
     override-checkout: stable/2024.2
