SIGN IN SIGN UP

fix(dflash2): cut the boundary snapshot before the assistant tag

Live run with thinking on showed the boundary entry never matching:
the snapshot covered the full prompt, whose trailing generation-tag /
think-opener tokens are exactly what the next prompt renders
differently, so the entry diverged in its last tokens every time.

Split the prefill at the last <|im_start|> token and freeze the cache
there instead: the conversation up to the latest user message is
template-stable. The second prefill phase continues into the same live
cache; the drafter hidden window is the concatenation of both phases.

Also log boundary stores, clone failures, and per-entry common-prefix
lengths on a miss at INFO so a silent miss is diagnosable from the
engine log.
J
Jinho Jang committed
2dd4528685667197ef6ca680e3a40815818aba9d
Parent: 5ce794b