A vibe coded tangled fork which supports pijul.

knotmirror: kill subscription on failure

So that we can actually know the runtime subscription status and
resubscribe on requestCrawl

Signed-off-by: Seongmin Lee <git@boltless.me>

+6
+6
knotmirror/knotstream/slurper.go
··· 116 116 117 117 func (s *KnotSlurper) subscribeWithRedialer(ctx context.Context, host models.Host, sub *subscription) { 118 118 l := s.logger.With("host", host.Hostname) 119 + defer func() { 120 + s.subsLk.Lock() 121 + defer s.subsLk.Unlock() 122 + 123 + delete(s.subs, host.Hostname) 124 + }() 119 125 120 126 dialer := websocket.Dialer{ 121 127 HandshakeTimeout: time.Second * 5,