Problem
Six use cases in packages/core/src/usecase/ import ServerManagerFactory from @tf2qs/providers instead of @tf2qs/core:
packages/core/src/usecase/CreateServerForUser.ts
packages/core/src/usecase/DeleteServer.ts
packages/core/src/usecase/DeleteServerForUser.ts
packages/core/src/usecase/TerminateLongRunningServers.ts
packages/core/src/usecase/TerminatePendingServers.ts
packages/core/src/usecase/TerminateServersWithoutCredit.ts
All contain:
import { ServerManagerFactory } from '@tf2qs/providers';
This violates the Clean Architecture constraint that the core layer must not depend on the providers layer. The ServerManagerFactory interface is already defined in packages/core/src/services/ServerManagerFactory.ts and re-exported from packages/core/index.ts. The providers package re-exports it with export type { ServerManagerFactory } — so it works, but the dependency direction is wrong.
Fix
Change all 6 import lines from:
import { ServerManagerFactory } from '@tf2qs/providers';
to:
import { ServerManagerFactory } from '@tf2qs/core';
No functional change required — this is purely an import direction fix.
Problem
Six use cases in
packages/core/src/usecase/importServerManagerFactoryfrom@tf2qs/providersinstead of@tf2qs/core:All contain:
This violates the Clean Architecture constraint that the core layer must not depend on the providers layer. The
ServerManagerFactoryinterface is already defined inpackages/core/src/services/ServerManagerFactory.tsand re-exported frompackages/core/index.ts. The providers package re-exports it withexport type { ServerManagerFactory }— so it works, but the dependency direction is wrong.Fix
Change all 6 import lines from:
to:
No functional change required — this is purely an import direction fix.