I think the show and books want us to come to the conclusion that it was Joffrey who sent the assassin. But I’m convinced it was LF. He blatantly lied with his explanation of how he’d lost the dagger. I think Tyrion should’ve trusted his gut instincts and confronted LF like he originally was going to when he became acting Hand of the King. I think the dagger has always belonged to LF. He never lost it. He might’ve showed it to Robert, made sure Robert was seen with it, but then got it back. In my opinion, LF is behind the assassin to force a break between the Starks and the Lannisters to send the realm into chaos so he can climb that ladder he loves so much. He might’ve thought Bran wasn’t going to survive anyway, or what kind of life could a cripple even have, and so he decided to take advantage of a tragedy.