@@ -276,6 +276,7 @@ localRunner (HydrationRunnerT m) s parent = do
276276 s0 <- HydrationRunnerT get
277277 (a, s') <- HydrationRunnerT $ lift $ local (\_ -> parent) $ runStateT m (s0 { _hydrationState_previousNode = s })
278278 traverse_ removeSubsequentNodes $ _hydrationState_previousNode s'
279+ HydrationRunnerT $ modify' $ \hs -> hs { _hydrationState_failed = _hydrationState_failed s' }
279280 pure a
280281
281282{-# INLINABLE runHydrationRunnerT #-}
@@ -1195,6 +1196,7 @@ hydrateTextNode doc t = do
11951196 where
11961197 go parent mLastNode = maybe (Node.getFirstChild parent) Node.getNextSibling mLastNode >>= \case
11971198 Nothing -> do
1199+ HydrationRunnerT $ modify' $ \s -> s { _hydrationState_failed = True }
11981200 n <- createTextNode doc t
11991201 insertAfterPreviousNode n
12001202 pure n
@@ -1210,6 +1212,7 @@ hydrateTextNode doc t = do
12101212 DOM.splitText_ originalNode $ fromIntegral $ T.length t
12111213 return originalNode
12121214 Nothing -> do
1215+ HydrationRunnerT $ modify' $ \s -> s { _hydrationState_failed = True }
12131216 n <- createTextNode doc t
12141217 insertAfterPreviousNode n
12151218 pure n