I think No.2 is the correct sentence because of the tense "has been promising" is from the past until to now. And it's a activity more than the result. No.1 is wrong. Because the key word "since" is talking about the time of past she known. And it's using present perfect tense to express the meaning that it doesn't make any sense.
You're right that #2 is the right one. The first sentence doesn't work because "promise" is a momentary verb; its duration is not long. Therefore, we need to use a continuous tense to indicate that she repeatedly promised to do something.
If you have a question about the English language and would like to ask one of our many English teachers and language experts, please click the button below to let us know: