After a classmate of Phoebe is murdered by a demon to stop her thesis proving demons exists from being published, Phoebe and her sisters set out to vanquish the demon called Libris so a past victim can move on to the next plane of existence. However, the ghost is unable to move on until she helps Prue solve the murder of another young woman. Piper's preparation at the club for a performance of the Goo Goo Dolls is cut short when Dan arrives with some surprising news about Leo.
Spoilers ahead. Coverage follows the scope labeled below.
Complete story — includes the ending
The sisters must find the demon Libris who is responsible for the murder of one of Phoebe's classmates, Charlene (Rebecca Cross), because she was getting close to proving that demons exist. Meanwhile, Dan discovers that Leo was previously married, and decides to take matters into his own hands, while Prue attempts to help a man ( Cleavant Derricks ) who is looking for a witness to his daughter's murder. The Goo Goo Dolls perform.