Warning: this story contains spoilers for Sunday's "Sonny Boy" episode of Fear the Walking Dead. "It's not too late. Something my daddy used to say," the late John Dorie (Garret Dillahunt) recalled when imparting advice from his estranged father in Fear the Walking Dead's Season 6. "It's not too late to learn something, to do the right thing, fix a mistake." In Season 7B's "Sonny Boy" episode, John Dorie Sr. (Keith Carradine) and widowed daughter-in-law June Dorie (Jenna Elfman) fight to live up to John Jr.'s legacy when Morgan's (Lennie James) infant daughter, Baby Mo, mysteriously goes missing inside the walker-defended Tower where Victor Strand (Colman Domingo) holds her hostage with mother Grace (Karen David).
After uncovering a contraband walkie-talkie in Strand loyalist and right-hand man Howard's (Omid Abtahi) room, a paranoid Strand tasks him with locating the baby by sunrise — or be thrown off the roof for his apparent betrayal. Hedging his bets, Strand entrusts John with finding Mo, telling the former lawman that his son "cared about the right things. As do you."
"Legacy can slip away if you're not careful. I know what it's like to do the wrong thing for the right reason," John warns Strand, recalling how he destroyed his career and marriage when he planted evidence to lock up serial killer cult leader Teddy Maddox (John Glover). "It doesn't end well."
John's investigation into Mo's disappearance leads him to the basement, where he finds June attempting to sneak the baby out so Morgan's group can make their move against Strand's Tower. John admits he planted the walkie to get in Strand's ear and listen to him over Howard, wanting to cement his legacy by making The Tower "the world I should have made for my boy."
Fearing John is doing what he did when he planted a purse to ensure Teddy went to jail, June pleads with him not to make the same mistake twice. "The last time I did the wrong thing for the right reason, I abandoned my son," John responds. "I won't do that to her."
John intends to turn Mo over to Strand, not wanting to risk exposing the baby to the radioactive fallout outside the Tower. John then reveals his hidden radiation burns — he doesn't have long to live after he was exposed to the same radiation poisoning slowly killing 13-year-old Charlie (Alexa Nisenson).
But John and June are caught by Strand, who orders Howard thrown from the Tower's roof for failing to find the baby. John confesses he planted the walkie to frame Howard and refuses to push him over the edge — until Strand threatens June and Grace with the same fate that befell Will (Gus Halper) and Ali (Ashton Arbab).
After killing Howard to prove himself as Strand's new partner — causing him to spiral and relapse on his sobriety — John recognizes that not only did Strand use him, he was never going to let John change the Tower. "This place isn't my legacy," John realizes. "She is."
"I thought John was gonna be my legacy. I can't lose another child," John tells June. "I can't have that be the last thing I do in this life." John's final act is to smuggle Mo out of the Tower and through Strand's walker moat, returning the baby to Morgan on the other side of the zombie horde.
John reveals to Morgan a fatal walker's bite on his radiation-burned shoulder. To buy Morgan and the baby time to escape, John wades into the horde and is dragged down by walkers as Grace's tape recorder plays the song John Sr. used to sing to John Jr.: "When I'm old and gray, dear. Promise you won't stray, dear. For I love you so, Sonny Boy."