From 0862232db41235f1d496325ab39dba4937b59e20 Mon Sep 17 00:00:00 2001 From: Shuchang Zheng Date: Tue, 7 May 2024 11:23:17 -0400 Subject: [PATCH] auto detect skyvern context and set context if it's not set (#269) --- skyvern/forge/api_app.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/skyvern/forge/api_app.py b/skyvern/forge/api_app.py index 7b8f85257..e0175b6c4 100644 --- a/skyvern/forge/api_app.py +++ b/skyvern/forge/api_app.py @@ -80,8 +80,12 @@ async def unexpected_exception(request: Request, exc: Exception) -> JSONResponse @app.middleware("http") async def request_middleware(request: Request, call_next: Callable[[Request], Awaitable[Response]]) -> Response: - request_id = str(uuid.uuid4()) - skyvern_context.set(SkyvernContext(request_id=request_id)) + curr_ctx = skyvern_context.current() + if not curr_ctx: + request_id = str(uuid.uuid4()) + skyvern_context.set(SkyvernContext(request_id=request_id)) + elif not curr_ctx.request_id: + curr_ctx.request_id = str(uuid.uuid4()) try: return await call_next(request)