Both RaDaK and Malbim understand that David was not telling Shelomo to execute Shime'i outright, but each saw it to be done differently:
- RaDak writes( on MelakhimI 2:8):
ירד לקראתי - שאמחול לו ונשבעתי לו שלא אמיתנו, אף על פי שנשבעתי לו שלא אמיתנו, חייב מיתה הוא, ולשמור שבועתי לא תמיתנו, עד שתמצא לו עלה ועון וסבב אתה הדבר שיבא לידי עון, שיהיה לך דין עליו, כדי להמיתו כי איש חכם אתה ותדע למצוא לו עילה
In my translation:
Came down to meet me - that I may absolve him and I swore that I would not put him to death, [and] although I swore that I would not put him to death, he is to be put to death, and [in order] to keep my oath you shall not put him to death, until you find him cause and iniquity and turn it so that he comes to an iniquity, so you have a judgment to put upon him, in order to put him to death for you are a wise man and will find him a cause.
- Malbim writes( on MelakhimI 2:9):
ועתה - רצה לומר אני נשבעתי ומחלתי לו ועתה אם יחטא לך אל תנקהו, כי איש חכם אתה וידעת את אשר תעשה לו לנסותו אם פי מלך ישמור כראוי ואם רעה תמצא בו והורדת את שיבתו בדם שאול, ואל תמחול לו
In My translation:
And now - meaning to say I swore and absolved him and now if he sins to you hold him not guiltless, for you are a wise man, and you will surely know what you ought to do to him to test him if he obeys the king appropriately and if you find wrong in him and you shall bring his hoary head down to the grave with blood and do not absolve him.
According to RaDaQ's interpretation David's absolution and oath did not remove from Shime'i the requirement of death for his actions, but only David's ability to carry it out( or Shlomo's ability to do so in his name). So, he instructed Shelomo to find a way to do so.
According to Malbim's interpretation, Shime'i was not to be put to death( for his crime against David), but his loyalty was not to be trusted, and David forgiving him was not to be considered a precedent for any subsequent crimes. So, he instructed Shelomo to test Shime'i, and only if he found him guilty to execute him, and to not absolve him.