diff --git a/changelog.d/5-internal/cleanup-module-structure b/changelog.d/5-internal/cleanup-module-structure
new file mode 100644
index 0000000000..c89b967339
--- /dev/null
+++ b/changelog.d/5-internal/cleanup-module-structure
@@ -0,0 +1 @@
+Move Brig.Sem.* modules to Brig.Effects (consistency)
\ No newline at end of file
diff --git a/services/brig/brig.cabal b/services/brig/brig.cabal
index 661b91679e..353fb359f7 100644
--- a/services/brig/brig.cabal
+++ b/services/brig/brig.cabal
@@ -58,8 +58,14 @@ library
Brig.Effects.BlacklistPhonePrefixStore.Cassandra
Brig.Effects.BlacklistStore
Brig.Effects.BlacklistStore.Cassandra
+ Brig.Effects.CodeStore
+ Brig.Effects.CodeStore.Cassandra
Brig.Effects.Delay
+ Brig.Effects.PasswordResetStore
+ Brig.Effects.PasswordResetStore.CodeStore
Brig.Effects.SFT
+ Brig.Effects.UserPendingActivationStore
+ Brig.Effects.UserPendingActivationStore.Cassandra
Brig.Email
Brig.Federation.Client
Brig.Index.Eval
@@ -85,12 +91,6 @@ library
Brig.Queue.Types
Brig.RPC
Brig.Run
- Brig.Sem.CodeStore
- Brig.Sem.CodeStore.Cassandra
- Brig.Sem.PasswordResetStore
- Brig.Sem.PasswordResetStore.CodeStore
- Brig.Sem.UserPendingActivationStore
- Brig.Sem.UserPendingActivationStore.Cassandra
Brig.SMTP
Brig.Team.API
Brig.Team.DB
diff --git a/services/brig/src/Brig/API.hs b/services/brig/src/Brig/API.hs
index d724135c50..9b7ce571d2 100644
--- a/services/brig/src/Brig/API.hs
+++ b/services/brig/src/Brig/API.hs
@@ -25,9 +25,9 @@ import qualified Brig.API.Internal as Internal
import qualified Brig.API.Public as Public
import Brig.Effects.BlacklistPhonePrefixStore (BlacklistPhonePrefixStore)
import Brig.Effects.BlacklistStore (BlacklistStore)
-import Brig.Sem.CodeStore
-import Brig.Sem.PasswordResetStore (PasswordResetStore)
-import Brig.Sem.UserPendingActivationStore (UserPendingActivationStore)
+import Brig.Effects.CodeStore
+import Brig.Effects.PasswordResetStore (PasswordResetStore)
+import Brig.Effects.UserPendingActivationStore (UserPendingActivationStore)
import qualified Data.Swagger.Build.Api as Doc
import Network.Wai.Routing (Routes)
import Polysemy
diff --git a/services/brig/src/Brig/API/Internal.hs b/services/brig/src/Brig/API/Internal.hs
index 5efb8ab1c0..d5f62c1472 100644
--- a/services/brig/src/Brig/API/Internal.hs
+++ b/services/brig/src/Brig/API/Internal.hs
@@ -45,9 +45,9 @@ import Brig.Effects.BlacklistStore (BlacklistStore)
import qualified Brig.IO.Intra as Intra
import Brig.Options hiding (internalEvents, sesQueue)
import qualified Brig.Provider.API as Provider
-import Brig.Sem.CodeStore (CodeStore)
-import Brig.Sem.PasswordResetStore (PasswordResetStore)
-import Brig.Sem.UserPendingActivationStore (UserPendingActivationStore)
+import Brig.Effects.CodeStore (CodeStore)
+import Brig.Effects.PasswordResetStore (PasswordResetStore)
+import Brig.Effects.UserPendingActivationStore (UserPendingActivationStore)
import qualified Brig.Team.API as Team
import Brig.Team.DB (lookupInvitationByEmail)
import Brig.Types.Connection
diff --git a/services/brig/src/Brig/API/Public.hs b/services/brig/src/Brig/API/Public.hs
index fa51d1b925..1e44ef1bd0 100644
--- a/services/brig/src/Brig/API/Public.hs
+++ b/services/brig/src/Brig/API/Public.hs
@@ -49,9 +49,9 @@ import Brig.Effects.BlacklistStore (BlacklistStore)
import qualified Brig.IO.Intra as Intra
import Brig.Options hiding (internalEvents, sesQueue)
import qualified Brig.Provider.API as Provider
-import Brig.Sem.CodeStore (CodeStore)
-import Brig.Sem.PasswordResetStore (PasswordResetStore)
-import Brig.Sem.UserPendingActivationStore (UserPendingActivationStore)
+import Brig.Effects.CodeStore (CodeStore)
+import Brig.Effects.PasswordResetStore (PasswordResetStore)
+import Brig.Effects.UserPendingActivationStore (UserPendingActivationStore)
import qualified Brig.Team.API as Team
import qualified Brig.Team.Email as Team
import Brig.Types.Activation (ActivationPair)
diff --git a/services/brig/src/Brig/API/User.hs b/services/brig/src/Brig/API/User.hs
index afd82173ec..3fd0834bcd 100644
--- a/services/brig/src/Brig/API/User.hs
+++ b/services/brig/src/Brig/API/User.hs
@@ -116,12 +116,12 @@ import qualified Brig.InternalEvent.Types as Internal
import Brig.Options hiding (Timeout, internalEvents)
import Brig.Password
import qualified Brig.Queue as Queue
-import Brig.Sem.CodeStore (CodeStore)
-import qualified Brig.Sem.CodeStore as E
-import Brig.Sem.PasswordResetStore (PasswordResetStore)
-import qualified Brig.Sem.PasswordResetStore as E
-import Brig.Sem.UserPendingActivationStore (UserPendingActivation (..), UserPendingActivationStore)
-import qualified Brig.Sem.UserPendingActivationStore as UserPendingActivationStore
+import Brig.Effects.CodeStore (CodeStore)
+import qualified Brig.Effects.CodeStore as E
+import Brig.Effects.PasswordResetStore (PasswordResetStore)
+import qualified Brig.Effects.PasswordResetStore as E
+import Brig.Effects.UserPendingActivationStore (UserPendingActivation (..), UserPendingActivationStore)
+import qualified Brig.Effects.UserPendingActivationStore as UserPendingActivationStore
import qualified Brig.Team.DB as Team
import Brig.Types.Activation (ActivationPair)
import Brig.Types.Connection
diff --git a/services/brig/src/Brig/CanonicalInterpreter.hs b/services/brig/src/Brig/CanonicalInterpreter.hs
index 6460a79c42..37b22f9233 100644
--- a/services/brig/src/Brig/CanonicalInterpreter.hs
+++ b/services/brig/src/Brig/CanonicalInterpreter.hs
@@ -5,12 +5,12 @@ import Brig.Effects.BlacklistPhonePrefixStore (BlacklistPhonePrefixStore)
import Brig.Effects.BlacklistPhonePrefixStore.Cassandra (interpretBlacklistPhonePrefixStoreToCassandra)
import Brig.Effects.BlacklistStore (BlacklistStore)
import Brig.Effects.BlacklistStore.Cassandra (interpretBlacklistStoreToCassandra)
-import Brig.Sem.CodeStore (CodeStore)
-import Brig.Sem.CodeStore.Cassandra (codeStoreToCassandra, interpretClientToIO)
-import Brig.Sem.PasswordResetStore (PasswordResetStore)
-import Brig.Sem.PasswordResetStore.CodeStore (passwordResetStoreToCodeStore)
-import Brig.Sem.UserPendingActivationStore (UserPendingActivationStore)
-import Brig.Sem.UserPendingActivationStore.Cassandra (userPendingActivationStoreToCassandra)
+import Brig.Effects.CodeStore (CodeStore)
+import Brig.Effects.CodeStore.Cassandra (codeStoreToCassandra, interpretClientToIO)
+import Brig.Effects.PasswordResetStore (PasswordResetStore)
+import Brig.Effects.PasswordResetStore.CodeStore (passwordResetStoreToCodeStore)
+import Brig.Effects.UserPendingActivationStore (UserPendingActivationStore)
+import Brig.Effects.UserPendingActivationStore.Cassandra (userPendingActivationStoreToCassandra)
import qualified Cassandra as Cas
import Control.Lens ((^.))
import Imports
diff --git a/services/brig/src/Brig/Data/Activation.hs b/services/brig/src/Brig/Data/Activation.hs
index 71efc8a17f..a360a4c8d1 100644
--- a/services/brig/src/Brig/Data/Activation.hs
+++ b/services/brig/src/Brig/Data/Activation.hs
@@ -35,8 +35,8 @@ import Brig.App (Env)
import Brig.Data.User
import Brig.Data.UserKey
import Brig.Options
-import qualified Brig.Sem.CodeStore as E
-import Brig.Sem.CodeStore.Cassandra
+import qualified Brig.Effects.CodeStore as E
+import Brig.Effects.CodeStore.Cassandra
import Brig.Types.Intra
import Cassandra
import Control.Error
diff --git a/services/brig/src/Brig/Sem/CodeStore.hs b/services/brig/src/Brig/Effects/CodeStore.hs
similarity index 97%
rename from services/brig/src/Brig/Sem/CodeStore.hs
rename to services/brig/src/Brig/Effects/CodeStore.hs
index 7c449c61ab..96f3e7c63b 100644
--- a/services/brig/src/Brig/Sem/CodeStore.hs
+++ b/services/brig/src/Brig/Effects/CodeStore.hs
@@ -16,7 +16,7 @@
-- with this program. If not, see .
{-# LANGUAGE TemplateHaskell #-}
-module Brig.Sem.CodeStore where
+module Brig.Effects.CodeStore where
import Data.Id
import Data.Time.Clock
diff --git a/services/brig/src/Brig/Sem/CodeStore/Cassandra.hs b/services/brig/src/Brig/Effects/CodeStore/Cassandra.hs
similarity index 98%
rename from services/brig/src/Brig/Sem/CodeStore/Cassandra.hs
rename to services/brig/src/Brig/Effects/CodeStore/Cassandra.hs
index 786fc63643..e6cae09099 100644
--- a/services/brig/src/Brig/Sem/CodeStore/Cassandra.hs
+++ b/services/brig/src/Brig/Effects/CodeStore/Cassandra.hs
@@ -16,14 +16,14 @@
-- with this program. If not, see .
{-# LANGUAGE RecordWildCards #-}
-module Brig.Sem.CodeStore.Cassandra
+module Brig.Effects.CodeStore.Cassandra
( codeStoreToCassandra,
interpretClientToIO,
)
where
import Brig.Data.Instances ()
-import Brig.Sem.CodeStore
+import Brig.Effects.CodeStore
import Cassandra
import Data.ByteString.Conversion (toByteString')
import Data.Id
diff --git a/services/brig/src/Brig/Sem/PasswordResetStore.hs b/services/brig/src/Brig/Effects/PasswordResetStore.hs
similarity index 96%
rename from services/brig/src/Brig/Sem/PasswordResetStore.hs
rename to services/brig/src/Brig/Effects/PasswordResetStore.hs
index fe696473f1..aab8274893 100644
--- a/services/brig/src/Brig/Sem/PasswordResetStore.hs
+++ b/services/brig/src/Brig/Effects/PasswordResetStore.hs
@@ -16,7 +16,7 @@
-- with this program. If not, see .
{-# LANGUAGE TemplateHaskell #-}
-module Brig.Sem.PasswordResetStore where
+module Brig.Effects.PasswordResetStore where
import Brig.Types.User (PasswordResetPair)
import Data.Id
diff --git a/services/brig/src/Brig/Sem/PasswordResetStore/CodeStore.hs b/services/brig/src/Brig/Effects/PasswordResetStore/CodeStore.hs
similarity index 95%
rename from services/brig/src/Brig/Sem/PasswordResetStore/CodeStore.hs
rename to services/brig/src/Brig/Effects/PasswordResetStore/CodeStore.hs
index 2104d01ee4..c0248aa4e5 100644
--- a/services/brig/src/Brig/Sem/PasswordResetStore/CodeStore.hs
+++ b/services/brig/src/Brig/Effects/PasswordResetStore/CodeStore.hs
@@ -15,13 +15,13 @@
-- You should have received a copy of the GNU Affero General Public License along
-- with this program. If not, see .
-module Brig.Sem.PasswordResetStore.CodeStore
+module Brig.Effects.PasswordResetStore.CodeStore
( passwordResetStoreToCodeStore,
)
where
-import Brig.Sem.CodeStore
-import Brig.Sem.PasswordResetStore
+import Brig.Effects.CodeStore
+import Brig.Effects.PasswordResetStore
import Brig.Types.User (PasswordResetPair)
import Data.Id
import Data.Time
diff --git a/services/brig/src/Brig/Sem/UserPendingActivationStore.hs b/services/brig/src/Brig/Effects/UserPendingActivationStore.hs
similarity index 93%
rename from services/brig/src/Brig/Sem/UserPendingActivationStore.hs
rename to services/brig/src/Brig/Effects/UserPendingActivationStore.hs
index a23f1d5a87..69a1db7397 100644
--- a/services/brig/src/Brig/Sem/UserPendingActivationStore.hs
+++ b/services/brig/src/Brig/Effects/UserPendingActivationStore.hs
@@ -1,6 +1,6 @@
{-# LANGUAGE TemplateHaskell #-}
-module Brig.Sem.UserPendingActivationStore where
+module Brig.Effects.UserPendingActivationStore where
import Data.Id
import Data.Time.Clock
diff --git a/services/brig/src/Brig/Sem/UserPendingActivationStore/Cassandra.hs b/services/brig/src/Brig/Effects/UserPendingActivationStore/Cassandra.hs
similarity index 94%
rename from services/brig/src/Brig/Sem/UserPendingActivationStore/Cassandra.hs
rename to services/brig/src/Brig/Effects/UserPendingActivationStore/Cassandra.hs
index 5aa923ddc1..f3c4f8835e 100644
--- a/services/brig/src/Brig/Sem/UserPendingActivationStore/Cassandra.hs
+++ b/services/brig/src/Brig/Effects/UserPendingActivationStore/Cassandra.hs
@@ -1,9 +1,9 @@
-module Brig.Sem.UserPendingActivationStore.Cassandra
+module Brig.Effects.UserPendingActivationStore.Cassandra
( userPendingActivationStoreToCassandra,
)
where
-import Brig.Sem.UserPendingActivationStore
+import Brig.Effects.UserPendingActivationStore
import Cassandra
import Data.Id (UserId)
import Data.Time (UTCTime)
diff --git a/services/brig/src/Brig/Run.hs b/services/brig/src/Brig/Run.hs
index 8a5eba0a1c..732f3a03c3 100644
--- a/services/brig/src/Brig/Run.hs
+++ b/services/brig/src/Brig/Run.hs
@@ -39,8 +39,8 @@ import Brig.CanonicalInterpreter
import qualified Brig.InternalEvent.Process as Internal
import Brig.Options hiding (internalEvents, sesQueue)
import qualified Brig.Queue as Queue
-import Brig.Sem.UserPendingActivationStore (UserPendingActivation (UserPendingActivation), UserPendingActivationStore)
-import qualified Brig.Sem.UserPendingActivationStore as UsersPendingActivationStore
+import Brig.Effects.UserPendingActivationStore (UserPendingActivation (UserPendingActivation), UserPendingActivationStore)
+import qualified Brig.Effects.UserPendingActivationStore as UsersPendingActivationStore
import Brig.Types.Intra (AccountStatus (PendingInvitation))
import Brig.Version
import qualified Control.Concurrent.Async as Async
diff --git a/services/brig/src/Brig/Team/API.hs b/services/brig/src/Brig/Team/API.hs
index 9afa8b0a36..373c4087af 100644
--- a/services/brig/src/Brig/Team/API.hs
+++ b/services/brig/src/Brig/Team/API.hs
@@ -35,7 +35,7 @@ import qualified Brig.Email as Email
import qualified Brig.IO.Intra as Intra
import Brig.Options (setMaxTeamSize, setTeamInvitationTimeout)
import qualified Brig.Phone as Phone
-import Brig.Sem.UserPendingActivationStore (UserPendingActivationStore)
+import Brig.Effects.UserPendingActivationStore (UserPendingActivationStore)
import qualified Brig.Team.DB as DB
import Brig.Team.Email
import Brig.Team.Util (ensurePermissionToAddUser, ensurePermissions)
diff --git a/services/brig/test/integration/API/User/Util.hs b/services/brig/test/integration/API/User/Util.hs
index 8c23cb39a0..a2573fc269 100644
--- a/services/brig/test/integration/API/User/Util.hs
+++ b/services/brig/test/integration/API/User/Util.hs
@@ -23,8 +23,8 @@ import Bilge hiding (accept, timeout)
import Bilge.Assert
import qualified Brig.Code as Code
import Brig.Options (Opts)
-import Brig.Sem.CodeStore
-import Brig.Sem.CodeStore.Cassandra
+import Brig.Effects.CodeStore
+import Brig.Effects.CodeStore.Cassandra
import Brig.Types.Team.LegalHold (LegalHoldClientRequest (..))
import qualified Brig.ZAuth
import qualified Cassandra as DB