[fix] race condition

This commit is contained in:
Azamat 2026-04-02 20:56:26 +03:00
parent fb974fff1e
commit f5d13feaf9
7 changed files with 185 additions and 63 deletions

View file

@ -12,6 +12,7 @@ from adapter.docker.runtime import DockerSandboxRuntime
from adapter.observability.factory import build_observability
from adapter.observability.runtime import ObservabilityRuntime
from domain.user import User
from repository.sandbox_lock import ProcessLocalSandboxLifecycleLocker
from repository.sandbox_session import InMemorySandboxSessionRepository
from repository.user import InMemoryUserRepository
from usecase.interface import Clock
@ -85,6 +86,7 @@ def build_container(
observability.tracer, [User(id='123', email='aza@gglamer.ru', name='gglamer')]
)
sandbox_repository = InMemorySandboxSessionRepository()
sandbox_locker = ProcessLocalSandboxLifecycleLocker()
sandbox_runtime = DockerSandboxRuntime(app_config.sandbox, docker_client)
repositories = AppRepositories(
@ -99,6 +101,7 @@ def build_container(
),
create_sandbox=CreateSandbox(
repository=sandbox_repository,
locker=sandbox_locker,
runtime=sandbox_runtime,
clock=clock,
logger=observability.logger,
@ -106,6 +109,7 @@ def build_container(
),
cleanup_expired_sandboxes=CleanupExpiredSandboxes(
repository=sandbox_repository,
locker=sandbox_locker,
runtime=sandbox_runtime,
clock=clock,
logger=observability.logger,