Eventually LLM output degrades when most of the context is its own output. So should there also be an input stream of experience? The proverbial "staring out the window", fed into the model to keep it grounded and give hooks to go off?
To put that into perspective for other readers: I've been running for about 10 years also, but typically 2x a week (10k mid-week, 15~20k weekend), I have no real data on my heart rate from when I started, but at rest I'm now typically at 60bpm.
I measure almost daily due to medication and having a minor heart defect, and I have noticed that if I skip a week of running, it'll slowly go up, averaging at ~62bpm, but when I train for a (half) marathon I typically increase my distance a bit and try to train every other day (~3x/week) then my heart rate a rest goes down a bit to be consistently below 60bpm (58bpm avg).
40bpm is very low, for non-athletes this would be considered dangerously low, but I guess daily running at OPs distance would classify OP as an athlete. Also keep in mind that heart rate differs per person, some people just naturally have a low heartbeat.