I found problem with DataBreakpointInfo request when user change selected frame a lot. VSCode doesn’t send repeated Scopes requests for a frame, so the frame from the last Scopes request is selected even after changing frames in the UI. This causes problems with DataBreakpointInfo requests because lldb-dap cannot find variables in this frame. I think the solution is to add frameId to scope's variables reference, allowing scopes from different frames to be distinguished.