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