It is ok to say 'forget it, it doesn't work with a sandbox'. So I have successfully created a project and done a retrieve source from org. I'm focusing on APEX classes for the moment. I can open, edit, save, and update the sandbox copy of the class with a deploy source to org.
Here's the strange thing:
If I create a new class in my sandbox and then do a retrieve source from org the new class is not picked up. If I create the class in VS Code and do a deploy source to org the new class is pushed over to the sandbox. If I update the class in the sandbox and do a retrieve OR update the class in VS Code and do a deploy then everything works as I would expect.
I initially thought is was this 'source of truth' idea but I don't think so. Thoughts?