for 1) I'm assuming you are using the disallow bad moves option. I'm not a big fan of it myself so haven't tested it much. I recall long ago having some similar issues where the internal state gets corrupted because a disallowed action isn't correctly rolled back.
(Just to be clear it disallows moves which would cause the puzzle to immediately be in a state with a clear violation of the rules, it doesn't disallow moves which are not a match for the final solution... I'm assuming you aren't being confused by that.)
2) I'm guessing is related, if the internal state gets corrupted in the right way it'll be unable to recognize that the loop was solved correctly.
I asked my AI session to do a quick investigation and it thinks the issue could possibly have been to do with puzzle state being preserved over browser refresh incorrectly, or with having previously used 'solve' and then undo on that solve. I've pushed its fixes (which do appear valid), if you continue to see issues I can try and check again. (Although I'm low on AI quota at this point

)