They are not interchangeable in meaning, although either one forms a grammatically correct sentence in your examples.
One might think someone would have posted a more complete answer by now.
This "One" is, a 'generic you'. It refers to a generic/unspecified person. 'One' referred to FF when he wrote that, and to me when I read it, and to you when you read it (seperately to each one of us, not to all of us a a class of 'ones who tink that ...').
This "someone" is a 'generic specific' individual. When 'the "one"' in this sentence anticipates a resolution, he thinks "Won't someone do something? A person could have posted a more complete answer by now". If this answer that I'm writing is "more complete" (or if we ignore "more complete", and just anticipate "an answer"), then I have chosen to be that someone.
For a more thorough, formal approach, see the links posted in the comments (by tchrist and FumbleFingers). Also from FF, you will likely be better served at ELL (this is ELU).