Skip to content

chore(deps)(deps): bump fastapi from 0.128.0 to 0.135.1

70ee2b2
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Open

chore(deps)(deps): bump fastapi from 0.128.0 to 0.135.1 #164

chore(deps)(deps): bump fastapi from 0.128.0 to 0.135.1
70ee2b2
Select commit
Loading
Failed to load commit list.
GitHub Actions / Test Results (Python 3.12) failed Mar 2, 2026 in 0s

1 errors, 9 fail, 3 skipped, 46 pass in 26s

59 tests   46 ✅  26s ⏱️
 1 suites   3 💤
 1 files     9 ❌  1 🔥

Results for commit 70ee2b2.

Annotations

Check warning on line 0 in tests.api.test_health_ready

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_ready_endpoint (tests.api.test_health_ready) failed

junit.xml [took 0s]
Raw output
assert 'status' in {'error': True, 'error_code': 'ERR_5033', 'message': 'RAG service is currently unavailable', 'timestamp': '2026-03-02T09:31:44.696108', 'details': {'service': 'RAG', 'original_message': "{'status': 'not_ready', 'checks': {'database': True, 'vector_db': False, 'embeddings': False}, 'check_details': {'database': {'status': 'ok', 'message': 'At least one database accessible'}, 'vector_db': {'status': 'failed', 'message': 'RAG retrieval or ChromaDB client not initialized'}, 'embeddings': {'status': 'failed', 'message': 'RAG retrieval or embedding service not initialized'}}, 'timestamp': '2026-03-02T09:31:44.695898'}"}}
tests/api/test_health_ready.py:42: in test_ready_endpoint
    assert "status" in data
E   assert 'status' in {'error': True, 'error_code': 'ERR_5033', 'message': 'RAG service is currently unavailable', 'timestamp': '2026-03-02T09:31:44.696108', 'details': {'service': 'RAG', 'original_message': "{'status': 'not_ready', 'checks': {'database': True, 'vector_db': False, 'embeddings': False}, 'check_details': {'database': {'status': 'ok', 'message': 'At least one database accessible'}, 'vector_db': {'status': 'failed', 'message': 'RAG retrieval or ChromaDB client not initialized'}, 'embeddings': {'status': 'failed', 'message': 'RAG retrieval or embedding service not initialized'}}, 'timestamp': '2026-03-02T09:31:44.695898'}"}}

Check warning on line 0 in tests.test_anti_anthropomorphism.TestAntiAnthropomorphism

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_identity_rejects_fake_consciousness (tests.test_anti_anthropomorphism.TestAntiAnthropomorphism) failed

junit.xml [took 0s]
Raw output
assert True is False
 +  where True = ValidationResult(passed=True, reasons=[], patched_answer=None).passed
tests/test_anti_anthropomorphism.py:29: in test_identity_rejects_fake_consciousness
    assert result.passed is False
E   assert True is False
E    +  where True = ValidationResult(passed=True, reasons=[], patched_answer=None).passed

Check warning on line 0 in tests.test_backend_api.TestBackendAPI

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_chat_endpoints_exist (tests.test_backend_api.TestBackendAPI) failed

junit.xml [took 0s]
Raw output
Exception: parameter `request` must be an instance of starlette.requests.Request
+ Exception Group Traceback (most recent call last):
  |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 81, in collapse_excgroups
  |     yield
  |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 192, in __call__
  |     async with anyio.create_task_group() as task_group:
  |                ^^^^^^^^^^^^^^^^^^^^^^^^^
  |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 783, in __aexit__
  |     raise BaseExceptionGroup(
  | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/_pytest/runner.py", line 353, in from_call
    |     result: TResult | None = func()
    |                              ^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/_pytest/runner.py", line 245, in <lambda>
    |     lambda: runtest_hook(item=item, **kwds),
    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__
    |     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec
    |     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 167, in _multicall
    |     raise exception
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall
    |     teardown.throw(exception)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/_pytest/logging.py", line 850, in pytest_runtest_call
    |     yield
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall
    |     teardown.throw(exception)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper
    |     return result.get_result()
    |            ^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_result.py", line 103, in get_result
    |     raise exc.with_traceback(tb)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper
    |     res = yield
    |           ^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall
    |     teardown.throw(exception)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/_pytest/capture.py", line 900, in pytest_runtest_call
    |     return (yield)
    |             ^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall
    |     teardown.throw(exception)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/_pytest/skipping.py", line 268, in pytest_runtest_call
    |     return (yield)
    |             ^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall
    |     res = hook_impl.function(*args)
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/_pytest/runner.py", line 179, in pytest_runtest_call
    |     item.runtest()
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/_pytest/python.py", line 1720, in runtest
    |     self.ihook.pytest_pyfunc_call(pyfuncitem=self)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_hooks.py", line 512, in __call__
    |     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_manager.py", line 120, in _hookexec
    |     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 167, in _multicall
    |     raise exception
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 139, in _multicall
    |     teardown.throw(exception)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper
    |     return result.get_result()
    |            ^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_result.py", line 103, in get_result
    |     raise exc.with_traceback(tb)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper
    |     res = yield
    |           ^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/pluggy/_callers.py", line 121, in _multicall
    |     res = hook_impl.function(*args)
    |           ^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/_pytest/python.py", line 166, in pytest_pyfunc_call
    |     result = testfunction(**testargs)
    |              ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/tests/test_backend_api.py", line 36, in test_chat_endpoints_exist
    |     response = client.post("/api/chat/openai", json={"message": "test"})
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py", line 546, in post
    |     return super().post(
    |            ^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 1144, in post
    |     return self.request(
    |            ^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py", line 445, in request
    |     return super().request(
    |            ^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 825, in request
    |     return self.send(request, auth=auth, follow_redirects=follow_redirects)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 914, in send
    |     response = self._send_handling_auth(
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 942, in _send_handling_auth
    |     response = self._send_handling_redirects(
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 979, in _send_handling_redirects
    |     response = self._send_single_request(request)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 1014, in _send_single_request
    |     response = transport.handle_request(request)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py", line 348, in handle_request
    |     raise exc
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py", line 345, in handle_request
    |     portal.call(self.app, scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/anyio/from_thread.py", line 334, in call
    |     return cast(T_Retval, self.start_task_soon(func, *args).result())
    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/concurrent/futures/_base.py", line 456, in result
    |     return self.__get_result()
    |            ^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
    |     raise self._exception
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/anyio/from_thread.py", line 259, in _call_func
    |     retval = await retval_or_awaitable
    |              ^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/applications.py", line 1160, in __call__
    |     await super().__call__(scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/applications.py", line 107, in __call__
    |     await self.middleware_stack(scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/errors.py", line 186, in __call__
    |     raise exc
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/errors.py", line 164, in __call__
    |     await self.app(scope, receive, _send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    |     with recv_stream, send_stream, collapse_excgroups():
    |                                    ^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    |     self.gen.throw(value)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    |     raise exc
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    |     response = await self.dispatch_func(request, call_next)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/security_middleware.py", line 25, in dispatch
    |     response = await call_next(request)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    |     raise app_exc from app_exc.__cause__ or app_exc.__context__
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    |     await self.app(scope, receive_or_disconnect, send_no_error)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    |     with recv_stream, send_stream, collapse_excgroups():
    |                                    ^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    |     self.gen.throw(value)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    |     raise exc
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    |     response = await self.dispatch_func(request, call_next)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/middleware/evaluation_bypass.py", line 58, in dispatch
    |     response = await call_next(request)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    |     raise app_exc from app_exc.__cause__ or app_exc.__context__
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    |     await self.app(scope, receive_or_disconnect, send_no_error)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    |     with recv_stream, send_stream, collapse_excgroups():
    |                                    ^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    |     self.gen.throw(value)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    |     raise exc
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    |     response = await self.dispatch_func(request, call_next)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/middleware/request_deduplication.py", line 78, in dispatch
    |     return await call_next(request)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    |     raise app_exc from app_exc.__cause__ or app_exc.__context__
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    |     await self.app(scope, receive_or_disconnect, send_no_error)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    |     with recv_stream, send_stream, collapse_excgroups():
    |                                    ^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    |     self.gen.throw(value)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    |     raise exc
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    |     response = await self.dispatch_func(request, call_next)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/middleware/http_cache_middleware.py", line 99, in dispatch
    |     response = await call_next(request)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    |     raise app_exc from app_exc.__cause__ or app_exc.__context__
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    |     await self.app(scope, receive_or_disconnect, send_no_error)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    |     with recv_stream, send_stream, collapse_excgroups():
    |                                    ^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    |     self.gen.throw(value)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    |     raise exc
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    |     response = await self.dispatch_func(request, call_next)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/request_tracking_middleware.py", line 64, in dispatch
    |     response = await call_next(request)
    |                ^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    |     raise app_exc from app_exc.__cause__ or app_exc.__context__
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    |     await self.app(scope, receive_or_disconnect, send_no_error)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/cors.py", line 87, in __call__
    |     await self.app(scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/exceptions.py", line 63, in __call__
    |     await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    |     raise exc
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    |     await app(scope, receive, sender)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
    |     await self.app(scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/routing.py", line 716, in __call__
    |     await self.middleware_stack(scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/routing.py", line 736, in app
    |     await route.handle(scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/routing.py", line 290, in handle
    |     await self.app(scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py", line 130, in app
    |     await wrap_app_handling_exceptions(app, request)(scope, receive, send)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    |     raise exc
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    |     await app(scope, receive, sender)
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py", line 116, in app
    |     response = await f(request)
    |                ^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py", line 670, in app
    |     raw_response = await run_endpoint_function(
    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py", line 324, in run_endpoint_function
    |     return await dependant.call(**values)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/routers/chat_router.py", line 11543, in chat_openai
    |     return await chat_with_rag(dummy_request, request)
    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/slowapi/extension.py", line 725, in async_wrapper
    |     raise Exception(
    | Exception: parameter `request` must be an instance of starlette.requests.Request
    +------------------------------------

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/tests/test_backend_api.py", line 36, in test_chat_endpoints_exist
    response = client.post("/api/chat/openai", json={"message": "test"})
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py", line 546, in post
    return super().post(
           ^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 1144, in post
    return self.request(
           ^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py", line 445, in request
    return super().request(
           ^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 825, in request
    return self.send(request, auth=auth, follow_redirects=follow_redirects)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 914, in send
    response = self._send_handling_auth(
               ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 942, in _send_handling_auth
    response = self._send_handling_redirects(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 979, in _send_handling_redirects
    response = self._send_single_request(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py", line 1014, in _send_single_request
    response = transport.handle_request(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py", line 348, in handle_request
    raise exc
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py", line 345, in handle_request
    portal.call(self.app, scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/anyio/from_thread.py", line 334, in call
    return cast(T_Retval, self.start_task_soon(func, *args).result())
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/concurrent/futures/_base.py", line 456, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/anyio/from_thread.py", line 259, in _call_func
    retval = await retval_or_awaitable
             ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/applications.py", line 1160, in __call__
    await super().__call__(scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/applications.py", line 107, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/errors.py", line 186, in __call__
    raise exc
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/errors.py", line 164, in __call__
    await self.app(scope, receive, _send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    raise exc
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/security_middleware.py", line 25, in dispatch
    response = await call_next(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    raise exc
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/middleware/evaluation_bypass.py", line 58, in dispatch
    response = await call_next(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    raise exc
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/middleware/request_deduplication.py", line 78, in dispatch
    return await call_next(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    raise exc
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/middleware/http_cache_middleware.py", line 99, in dispatch
    response = await call_next(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py", line 87, in collapse_excgroups
    raise exc
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/request_tracking_middleware.py", line 64, in dispatch
    response = await call_next(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/cors.py", line 87, in __call__
    await self.app(scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/exceptions.py", line 63, in __call__
    await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    raise exc
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    await app(scope, receive, sender)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
    await self.app(scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/routing.py", line 716, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/routing.py", line 736, in app
    await route.handle(scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/routing.py", line 290, in handle
    await self.app(scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py", line 130, in app
    await wrap_app_handling_exceptions(app, request)(scope, receive, send)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    raise exc
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    await app(scope, receive, sender)
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py", line 116, in app
    response = await f(request)
               ^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py", line 670, in app
    raw_response = await run_endpoint_function(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py", line 324, in run_endpoint_function
    return await dependant.call(**values)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/routers/chat_router.py", line 11543, in chat_openai
    return await chat_with_rag(dummy_request, request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/slowapi/extension.py", line 725, in async_wrapper
    raise Exception(
Exception: parameter `request` must be an instance of starlette.requests.Request

The above exception was the direct cause of the following exception:
tests/test_backend_api.py:36: in test_chat_endpoints_exist
    response = client.post("/api/chat/openai", json={"message": "test"})
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py:546: in post
    return super().post(
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py:1144: in post
    return self.request(
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py:445: in request
    return super().request(
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py:825: in request
    return self.send(request, auth=auth, follow_redirects=follow_redirects)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py:914: in send
    response = self._send_handling_auth(
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py:942: in _send_handling_auth
    response = self._send_handling_redirects(
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py:979: in _send_handling_redirects
    response = self._send_single_request(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/httpx/_client.py:1014: in _send_single_request
    response = transport.handle_request(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py:348: in handle_request
    raise exc
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/testclient.py:345: in handle_request
    portal.call(self.app, scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/anyio/from_thread.py:334: in call
    return cast(T_Retval, self.start_task_soon(func, *args).result())
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/concurrent/futures/_base.py:456: in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/concurrent/futures/_base.py:401: in __get_result
    raise self._exception
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/anyio/from_thread.py:259: in _call_func
    retval = await retval_or_awaitable
             ^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/applications.py:1160: in __call__
    await super().__call__(scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/applications.py:107: in __call__
    await self.middleware_stack(scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/errors.py:186: in __call__
    raise exc
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/errors.py:164: in __call__
    await self.app(scope, receive, _send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:191: in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py:158: in __exit__
    self.gen.throw(value)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py:87: in collapse_excgroups
    raise exc
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:193: in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend/api/security_middleware.py:25: in dispatch
    response = await call_next(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:168: in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:144: in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:191: in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py:158: in __exit__
    self.gen.throw(value)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py:87: in collapse_excgroups
    raise exc
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:193: in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend/api/middleware/evaluation_bypass.py:58: in dispatch
    response = await call_next(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:168: in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:144: in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:191: in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py:158: in __exit__
    self.gen.throw(value)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py:87: in collapse_excgroups
    raise exc
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:193: in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend/api/middleware/request_deduplication.py:78: in dispatch
    return await call_next(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:168: in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:144: in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:191: in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py:158: in __exit__
    self.gen.throw(value)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py:87: in collapse_excgroups
    raise exc
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:193: in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend/api/middleware/http_cache_middleware.py:99: in dispatch
    response = await call_next(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:168: in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:144: in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:191: in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py:158: in __exit__
    self.gen.throw(value)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_utils.py:87: in collapse_excgroups
    raise exc
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:193: in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend/api/request_tracking_middleware.py:64: in dispatch
    response = await call_next(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:168: in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/base.py:144: in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/cors.py:87: in __call__
    await self.app(scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/middleware/exceptions.py:63: in __call__
    await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py:53: in wrapped_app
    raise exc
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py:42: in wrapped_app
    await app(scope, receive, sender)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/middleware/asyncexitstack.py:18: in __call__
    await self.app(scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/routing.py:716: in __call__
    await self.middleware_stack(scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/routing.py:736: in app
    await route.handle(scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/routing.py:290: in handle
    await self.app(scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py:130: in app
    await wrap_app_handling_exceptions(app, request)(scope, receive, send)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py:53: in wrapped_app
    raise exc
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/starlette/_exception_handler.py:42: in wrapped_app
    await app(scope, receive, sender)
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py:116: in app
    response = await f(request)
               ^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py:670: in app
    raw_response = await run_endpoint_function(
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/fastapi/routing.py:324: in run_endpoint_function
    return await dependant.call(**values)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
backend/api/routers/chat_router.py:11543: in chat_openai
    return await chat_with_rag(dummy_request, request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/site-packages/slowapi/extension.py:725: in async_wrapper
    raise Exception(
E   Exception: parameter `request` must be an instance of starlette.requests.Request

Check warning on line 0 in tests.test_backend_api.TestBackendAPI

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_openai_chat_with_mock (tests.test_backend_api.TestBackendAPI) failed

junit.xml [took 0s]
Raw output
AttributeError: <module 'backend.api.main' from '/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/main.py'> does not have the attribute 'openai_client'
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/unittest/mock.py:1393: in patched
    with self.decoration_helper(patched,
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py:137: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/unittest/mock.py:1375: in decoration_helper
    arg = exit_stack.enter_context(patching)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/contextlib.py:526: in enter_context
    result = _enter(cm)
             ^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/unittest/mock.py:1467: in __enter__
    original, local = self.get_original()
                      ^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/unittest/mock.py:1437: in get_original
    raise AttributeError(
E   AttributeError: <module 'backend.api.main' from '/home/runner/work/StillMe-Learning-AI-System-RAG-Foundation/StillMe-Learning-AI-System-RAG-Foundation/backend/api/main.py'> does not have the attribute 'openai_client'

Check failure on line 0 in tests.test_backend_api.TestLearningService

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_learning_service_initialization (tests.test_backend_api.TestLearningService) with error

junit.xml [took 0s]
Raw output
failed on setup with "AttributeError: module 'backend.services' has no attribute 'learning_service'"
tests/test_backend_api.py:77: in mock_learning_service
    with patch('backend.services.learning_service.LearningService') as mock:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/unittest/mock.py:1451: in __enter__
    self.target = self.getter()
                  ^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/pkgutil.py:528: in resolve_name
    result = getattr(result, p)
             ^^^^^^^^^^^^^^^^^^
E   AttributeError: module 'backend.services' has no attribute 'learning_service'

Check warning on line 0 in tests.test_citation_formatter_phase1.TestSafeFallback

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_empty_context_docs (tests.test_citation_formatter_phase1.TestSafeFallback) failed

junit.xml [took 0s]
Raw output
assert ("don't have specific sources" in '[general knowledge] (No relevant sources found in knowledge base)' or "I don't have" in '[general knowledge] (no relevant sources found in knowledge base)')
 +  where '[general knowledge] (no relevant sources found in knowledge base)' = <built-in method lower of str object at 0x7f06c55a25d0>()
 +    where <built-in method lower of str object at 0x7f06c55a25d0> = '[general knowledge] (No relevant sources found in knowledge base)'.lower
tests/test_citation_formatter_phase1.py:414: in test_empty_context_docs
    assert "don't have specific sources" in citation or "I don't have" in citation.lower()
E   assert ("don't have specific sources" in '[general knowledge] (No relevant sources found in knowledge base)' or "I don't have" in '[general knowledge] (no relevant sources found in knowledge base)')
E    +  where '[general knowledge] (no relevant sources found in knowledge base)' = <built-in method lower of str object at 0x7f06c55a25d0>()
E    +    where <built-in method lower of str object at 0x7f06c55a25d0> = '[general knowledge] (No relevant sources found in knowledge base)'.lower

Check warning on line 0 in tests.test_citation_formatter_phase1.TestIntellectualHumility

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_no_false_confidence (tests.test_citation_formatter_phase1.TestIntellectualHumility) failed

junit.xml [took 0s]
Raw output
assert ("don't have" in '[general knowledge] (no relevant sources found in knowledge base)' or 'specific sources' in '[general knowledge] (no relevant sources found in knowledge base)')
 +  where '[general knowledge] (no relevant sources found in knowledge base)' = <built-in method lower of str object at 0x7f06c55a25d0>()
 +    where <built-in method lower of str object at 0x7f06c55a25d0> = '[general knowledge] (No relevant sources found in knowledge base)'.lower
 +  and   '[general knowledge] (no relevant sources found in knowledge base)' = <built-in method lower of str object at 0x7f06c55a25d0>()
 +    where <built-in method lower of str object at 0x7f06c55a25d0> = '[general knowledge] (No relevant sources found in knowledge base)'.lower
tests/test_citation_formatter_phase1.py:701: in test_no_false_confidence
    assert "don't have" in citation.lower() or "specific sources" in citation.lower()
E   assert ("don't have" in '[general knowledge] (no relevant sources found in knowledge base)' or 'specific sources' in '[general knowledge] (no relevant sources found in knowledge base)')
E    +  where '[general knowledge] (no relevant sources found in knowledge base)' = <built-in method lower of str object at 0x7f06c55a25d0>()
E    +    where <built-in method lower of str object at 0x7f06c55a25d0> = '[general knowledge] (No relevant sources found in knowledge base)'.lower
E    +  and   '[general knowledge] (no relevant sources found in knowledge base)' = <built-in method lower of str object at 0x7f06c55a25d0>()
E    +    where <built-in method lower of str object at 0x7f06c55a25d0> = '[general knowledge] (No relevant sources found in knowledge base)'.lower

Check warning on line 0 in tests.test_common_modules.TestConfigManager

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_config_manager_initialization (tests.test_common_modules.TestConfigManager) failed

junit.xml [took 0s]
Raw output
AttributeError: Mock object has no attribute 'get'
tests/test_common_modules.py:78: in test_config_manager_initialization
    assert config_manager.get("key1") == "value1"
           ^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/unittest/mock.py:660: in __getattr__
    raise AttributeError("Mock object has no attribute %r" % name)
E   AttributeError: Mock object has no attribute 'get'

Check warning on line 0 in tests.test_common_modules.TestConfigManager

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_config_file_loading (tests.test_common_modules.TestConfigManager) failed

junit.xml [took 0s]
Raw output
AttributeError: Mock object has no attribute 'get'
tests/test_common_modules.py:93: in test_config_file_loading
    assert config_manager.get("file_key") == "file_value"
           ^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/unittest/mock.py:660: in __getattr__
    raise AttributeError("Mock object has no attribute %r" % name)
E   AttributeError: Mock object has no attribute 'get'

Check warning on line 0 in tests.test_common_modules.TestConfigManager

See this annotation in the file changed.

@github-actions github-actions / Test Results (Python 3.12)

test_environment_variable_override (tests.test_common_modules.TestConfigManager) failed

junit.xml [took 0s]
Raw output
AttributeError: Mock object has no attribute 'get'
tests/test_common_modules.py:107: in test_environment_variable_override
    assert config_manager.get("key1") == "env_value"
           ^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.12/x64/lib/python3.12/unittest/mock.py:660: in __getattr__
    raise AttributeError("Mock object has no attribute %r" % name)
E   AttributeError: Mock object has no attribute 'get'