Languages are learnt in the long run, and it's a very volatile knowledge that erodes quickly with time. It's not like a project you can stop in the 'finished' state.
Rather than milestones, I use the system of Spaced Repetition, just like Mnemosyne or Anki, but not only for flash card: for any piece of my learning material.
There are goals:
- Read lessons.
- Read books of level A2, B1, B2
- Read genuine Papers. And understand titles, then article abstracts, then entire articles.
- See listen youtube genuine tv/film videos, music.
- and so on
For each item/action performed, I do a approximative self estimation for 0 to 5.
0: I need to reread/listen the learning ressource as soon as possible. If it was really too much hard, I give up that resource for a long time.
1: it's a little better, but let's retry that soon.
2: there's been progress, but I should restart that item again so as to carve it in mind
3: it's ok but should be redone one day to be sure it's still ok.
4: it's becoming ok, yes only one rehearsal and that's it,
5: well let's wait 6 month or one year and see if it's really carved.
something like that. with time going some learning resources becomes obsolete, some remains too difficult to be taken in account for the moment...
More than milestones, it's an evolving learning program.