diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,13 @@
 # Changelog for extensible-effects-concurrent
 
+## 0.13.0
+
+- Fix bad constraints in `Queue` observer
+
+## 0.12.2
+
+- Fix some compiler warnings
+
 ## 0.12.1
 
 - Fix build errors with GHC-8.6
diff --git a/examples/example-3/Main.hs b/examples/example-3/Main.hs
--- a/examples/example-3/Main.hs
+++ b/examples/example-3/Main.hs
@@ -10,7 +10,7 @@
 
 main :: IO ()
 main = withAsyncLogChannel
-  1000
+  (1000 :: Int)
   (ioLogMessageWriter
     (fileAppender "extensible-effects-concurrent-example-3.log")
   )
diff --git a/extensible-effects-concurrent.cabal b/extensible-effects-concurrent.cabal
--- a/extensible-effects-concurrent.cabal
+++ b/extensible-effects-concurrent.cabal
@@ -1,5 +1,5 @@
 name:           extensible-effects-concurrent
-version:        0.12.1
+version:        0.13.0
 description:    Please see the README on GitHub at <https://github.com/sheyll/extensible-effects-concurrent#readme>
 synopsis:       Message passing concurrency as extensible-effect
 homepage:       https://github.com/sheyll/extensible-effects-concurrent#readme
diff --git a/src/Control/Eff/Concurrent/Api/Observer/Queue.hs b/src/Control/Eff/Concurrent/Api/Observer/Queue.hs
--- a/src/Control/Eff/Concurrent/Api/Observer/Queue.hs
+++ b/src/Control/Eff/Concurrent/Api/Observer/Queue.hs
@@ -99,7 +99,6 @@
      , Observable o
      , HasLogging IO q
      , HasLogging IO r
-     , Member Interrupts q
      , Member Interrupts r
      , Lifted IO r
      , HasCallStack
@@ -128,7 +127,6 @@
      , HasLogging IO r
      , HasLogging IO q
      , Member Interrupts r
-     , Member Interrupts q
      , Lifted IO q
      , HasCallStack
      , MonadCatch (Eff r)
diff --git a/src/Control/Eff/Concurrent/Api/Server.hs b/src/Control/Eff/Concurrent/Api/Server.hs
--- a/src/Control/Eff/Concurrent/Api/Server.hs
+++ b/src/Control/Eff/Concurrent/Api/Server.hs
@@ -341,13 +341,13 @@
    . ( HasCallStack
      , Typeable api
      , SetMember Process (Process effScheduler) eff
-     , Member (Exc (ExitReason 'Recoverable)) eff
+     , Member Interrupts eff
      )
   => SchedulerProxy effScheduler
   -> ApiHandler api eff
   -> MessageSelector (Eff eff ApiServerCmd)
-selectHandlerMethod px handlers = selectDynamicMessageLazy
-  (fmap (applyHandlerMethod px handlers) . fromDynamic)
+selectHandlerMethod px handlers =
+  selectDynamicMessageLazy (fmap (applyHandlerMethod px handlers) . fromDynamic)
 
 -- | Apply either the '_callCallback', '_castCallback' or the '_terminateCallback'
 -- callback to an incoming request.
@@ -355,7 +355,7 @@
   :: forall eff effScheduler api
    . ( Typeable api
      , SetMember Process (Process effScheduler) eff
-     , Member (Exc (ExitReason 'Recoverable)) eff
+     , Member Interrupts eff
      , HasCallStack
      )
   => SchedulerProxy effScheduler
@@ -381,7 +381,7 @@
    . ( Typeable p
      , HasCallStack
      , SetMember Process (Process q) r
-     , Member (Exc (ExitReason 'Recoverable)) r
+     , Member Interrupts r
      )
   => SchedulerProxy q
   -> Api p ( 'Synchronous x)
@@ -397,7 +397,7 @@
    . ( Typeable p
      , HasCallStack
      , SetMember Process (Process q) r
-     , Member (Exc (ExitReason 'Recoverable)) r
+     , Member Interrupts r
      )
   => SchedulerProxy q
   -> Api p 'Asynchronous
diff --git a/src/Control/Eff/Concurrent/Process/ForkIOScheduler.hs b/src/Control/Eff/Concurrent/Process/ForkIOScheduler.hs
--- a/src/Control/Eff/Concurrent/Process/ForkIOScheduler.hs
+++ b/src/Control/Eff/Concurrent/Process/ForkIOScheduler.hs
@@ -237,7 +237,7 @@
 -- top of 'SchedulerIO' effect. All logging is sent to standard output.
 defaultMain :: HasCallStack => Eff InterruptableProcEff () -> IO ()
 defaultMain c =
-  withAsyncLogChannel 1024
+  withAsyncLogChannel (1024 :: Int)
     (multiMessageLogWriter ($ printLogMessage))
     (handleLoggingAndIO_ (schedule c))
 
