Teknium
fd760435c6
test(bedrock): make the botocore stub windows airtight — kills the vendored-import flake
...
CI flake mechanism (PR #92617 red, reproduced standalone): tests plant
fake botocore modules via patch.dict; when the REAL botocore.exceptions
is first imported in an interpreter state where a fake parent is (or
was) installed, its 'from botocore.vendored import requests' resolves
against a module with no __path__ and every exception test in the worker
dies with "No module named 'botocore.vendored'" — ordering-dependent,
so green locally, red in CI workers.
Defenses (both, in depth):
- test_bedrock_adapter.py pre-imports the real botocore.exceptions at
module scope, before any test can stub sys.modules — later imports are
cache hits that can never re-execute the vendored import under a
poisoned parent. Proven standalone: fake-parent repro fails without
the pre-import, succeeds with it.
- autouse _boto_sys_modules_hygiene fixtures in all three files that
plant fake boto* modules (adapter, integration, model-picker):
snapshot every boto* sys.modules entry before each test, evict+restore
after — no stub window can leak state into a later test regardless of
worker ordering.
- importorskip targets botocore.exceptions (the module the tests
actually need) instead of bare botocore, so a torn install skips
instead of erroring.
148/148 across the four affected suites.
2026-08-22 19:30:10 -07:00
..
2026-05-19 17:27:24 -07:00
2026-06-19 11:37:51 -07:00
2026-08-15 01:04:19 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 15:24:14 -07:00
2026-07-29 13:10:23 -07:00
2026-08-03 22:54:54 +05:30
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-06-28 00:57:42 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-10 09:38:28 +05:30
2026-08-16 10:51:11 -07:00
2026-08-07 18:07:19 +05:30
2026-08-16 14:34:30 +05:30
2026-07-27 11:53:48 -04:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 15:37:24 -07:00
2026-08-14 21:41:26 -07:00
2026-07-29 13:10:23 -07:00
2026-08-06 17:03:10 +05:30
2026-08-02 23:48:42 +05:30
2026-08-16 10:27:52 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-21 16:12:57 +05:30
2026-08-19 19:42:07 -07:00
2026-08-02 16:16:36 -07:00
2026-08-02 21:17:49 +05:30
2026-08-04 11:25:18 +05:30
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-04 23:33:39 +05:30
2026-07-29 13:10:23 -07:00
2026-05-28 22:26:25 -07:00
2026-07-29 13:10:23 -07:00
2026-08-15 10:22:47 +05:30
2026-07-29 13:10:23 -07:00
2026-08-13 23:43:54 -07:00
2026-08-20 00:16:22 -07:00
2026-08-14 21:39:44 -07:00
2026-07-29 15:37:24 -07:00
2026-07-29 13:10:23 -07:00
2026-08-15 10:22:47 +05:30
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-05-28 22:26:25 -07:00
2026-05-20 11:44:10 -07:00
2026-08-08 14:56:38 +05:30
2026-08-16 01:55:51 -07:00
2026-08-04 11:26:15 +05:30
2026-07-29 13:10:23 -07:00
2026-08-17 13:19:58 +05:30
2026-06-27 19:23:15 -07:00
2026-07-29 13:10:23 -07:00
2026-08-14 21:19:55 -07:00
2026-07-02 04:51:56 +05:30
2026-07-29 13:10:23 -07:00
2026-08-04 17:53:17 +00:00
2026-07-29 13:10:23 -07:00
2026-08-15 13:36:25 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-05-29 19:23:05 -07:00
2026-07-29 13:10:23 -07:00
2026-08-03 20:43:38 +05:30
2026-07-26 20:59:21 -07:00
2026-08-08 19:17:02 -07:00
2026-07-29 13:10:23 -07:00
2026-08-13 12:31:02 -07:00
2026-06-27 04:39:26 -07:00
2026-07-29 13:10:23 -07:00
2026-08-15 00:36:03 -07:00
2026-07-29 13:10:23 -07:00
2026-07-31 23:18:12 -07:00
2026-08-03 22:53:32 +05:30
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-20 11:36:54 +05:30
2026-07-29 13:10:23 -07:00
2026-07-05 13:42:46 -07:00
2026-08-02 22:15:20 +05:30
2026-07-29 15:37:24 -07:00
2026-05-28 22:26:25 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 15:21:26 -07:00
2026-07-29 13:10:23 -07:00
2026-08-14 21:41:26 -07:00
2026-07-29 13:10:23 -07:00
2026-08-17 03:25:07 -07:00
2026-07-29 13:10:23 -07:00
2026-08-21 15:02:29 -07:00
2026-07-29 13:10:23 -07:00
2026-07-31 21:52:36 -07:00
2026-07-29 13:10:23 -07:00
2026-08-21 17:24:22 +05:30
2026-08-14 10:39:25 -07:00
2026-07-29 15:21:26 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-01 05:06:00 -07:00
2026-07-28 19:06:59 +05:30
2026-08-21 00:24:32 -07:00
2026-08-03 10:01:45 +05:30
2026-08-15 01:04:19 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 15:37:24 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 15:37:24 -07:00
2026-08-12 19:15:02 -07:00
2026-07-29 13:10:23 -07:00
2026-07-20 02:25:57 -07:00
2026-07-29 15:37:24 -07:00
2026-08-13 10:07:39 -07:00
2026-08-06 02:22:08 +05:30
2026-08-13 02:03:40 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 19:48:37 -07:00
2026-08-20 00:03:50 +05:30
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-03 19:32:50 +05:30
2026-07-29 13:10:23 -07:00
2026-07-31 22:33:03 -07:00
2026-08-20 03:15:14 +05:30
2026-07-29 13:10:23 -07:00
2026-08-20 20:20:23 -07:00
2026-08-15 18:15:57 -07:00
2026-08-02 16:16:36 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-06 03:53:38 +05:30
2026-08-18 16:27:32 -07:00
2026-07-29 13:10:23 -07:00
2026-08-14 22:11:30 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-16 01:55:00 -07:00
2026-07-29 13:10:23 -07:00
2026-08-22 19:30:10 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-08-08 14:08:44 -07:00
2026-07-29 15:37:24 -07:00
2026-07-29 13:10:23 -07:00
2026-07-11 03:44:02 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-05-27 05:43:20 -07:00
2026-07-29 13:10:23 -07:00
2026-08-13 03:04:45 -07:00
2026-08-10 10:01:44 +05:30
2026-06-10 12:39:44 -07:00
2026-07-29 13:10:23 -07:00
2026-08-15 00:34:29 -07:00
2026-08-14 21:20:03 -07:00
2026-07-29 13:10:23 -07:00
2026-08-18 02:12:13 -07:00
2026-07-29 13:10:23 -07:00
2026-08-15 23:03:52 -07:00
2026-08-08 14:18:26 +05:30
2026-07-29 13:10:23 -07:00
2026-08-03 20:43:38 +05:30
2026-08-16 10:34:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00
2026-07-29 13:10:23 -07:00