diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,7 @@
 # trace-embrace changelog
 
+## Version 1.0.3 2025-03-07
+  * bugfix: config yaml change didn't trigger rebuild
+  * fix link to tw\'
+
 ## Version 1.0.2 2025-03-06
diff --git a/src/Debug/TraceEmbrace/Config/Load.hs b/src/Debug/TraceEmbrace/Config/Load.hs
--- a/src/Debug/TraceEmbrace/Config/Load.hs
+++ b/src/Debug/TraceEmbrace/Config/Load.hs
@@ -126,16 +126,17 @@
   (unrefine $ yc.runtimeLevelsOverrideEnvVar)
 
 getConfig :: Q TraceEmbraceConfig
-getConfig = go
+getConfig = do
+  c <- runIO (readIORef traceEmbraceConfigRef) >>= loadIfNothing
+  addDependentFile traceEmbraceConfigFileName
+  pure c
   where
-    go = runIO (readIORef traceEmbraceConfigRef) >>= \case
+    loadIfNothing = \case
       Nothing -> do
         c <- yaml2Config <$> runIO loadYamlConfig
         runIO (atomicWriteIORef traceEmbraceConfigRef (Just c))
-        addDependentFile traceEmbraceConfigFileName
         pure c
       Just c -> pure c
-
 
 traceAll :: [LeveledModulePrefix]
 traceAll = emptyPrefixTraceLevel Trace
diff --git a/trace-embrace.cabal b/trace-embrace.cabal
--- a/trace-embrace.cabal
+++ b/trace-embrace.cabal
@@ -1,13 +1,13 @@
 cabal-version:   3.0
 name:            trace-embrace
-version:         1.0.2
+version:         1.0.3
 license:         BSD-3-Clause
 license-file:    LICENSE
 category:        Development
 author:          Daniil Iaitskov <dyaitskov@gmail.com>
 maintainer:      Daniil Iaitskov <dyaitskov@gmail.com>
 stability:       experimental
-synopsis:        Compile and runtime configurable version of Debug.Trace module
+synopsis:        Smart version of Debug.Trace module
 homepage:        https://github.com/yaitskov/trace-embrace
 bug-reports:     https://github.com/yaitskov/trace-embrace/issues
 build-type:      Simple
@@ -165,7 +165,7 @@
     <https://hackage.haskell.org/package/trace-embrace/docs/Debug-TraceEmbrace.html#v:tr tr>
     <https://hackage.haskell.org/package/trace-embrace/docs/Debug-TraceEmbrace.html#v:tw tw>
     and
-    <https://hackage.haskell.org/package/trace-embrace/docs/Debug-TraceEmbrace.html#v:tw%27 tw\'>
+    <https://hackage.haskell.org/package/trace-embrace/docs/Debug-TraceEmbrace.html#v:tw-39- tw\'>
     functions can forward tracing messages to
     <https://hackage.haskell.org/package/base/docs/System-IO.html#v:hPutStrLn hPutStrLn>
     or
@@ -288,7 +288,7 @@
     For tracing returning values wrapped into
     <https://hackage.haskell.org/package/trace-embrace/docs/Debug-TraceEmbrace.html#t:ShowTrace ShowTrace>
     use
-    <https://hackage.haskell.org/package/trace-embrace/docs/Debug-TraceEmbrace.html#v:tw%27 tw\'>.
+    <https://hackage.haskell.org/package/trace-embrace/docs/Debug-TraceEmbrace.html#v:tw-39- tw\'>.
     
     === Pattern matching syntax
     #pattern-matching-syntax#
@@ -307,7 +307,7 @@
     
     A trace line for the snippet above would be:
     
-    Module:fun: 7 get; v: Just 1; x: 1
+    Module:fun: 7 get; v: 1; x: 1
     
     === Unlifted vars
     #unlifted-vars#
