Sachverhalt: A. A.a. Die 1972 geborene A._ bezog seit dem 1. Februar 2002 eine ganze Invalidenrente (Invaliditätsgrad: 80 %; Verfügung vom 13. August 2003). Die IV-Stelle des Kantons St. Gallen bestätigte den Rentenanspruch in den Jahren 2006 und 2007, bevor sie im August 2012 ein weiteres Revisionsverfahren einleitete. Nach Abklärungen stellte die Verwaltung die bisherige Invalidenrente ein. Die Verfügung vom 4. Januar 2013 hob das Versicherungsgericht des Kantons St. Gallen auf und wies die Sache an die IV-Stelle zurück (Entscheid vom 23. Januar 2015). A.b. Die Verwaltung veranlasste bei der MEDAS Zentralschweiz (nachfolgend: MEDAS), Luzern, ein bidiszplinäres Gutachten vom 19. Januar 2016. Daraufhin liess sie A._ im Zeitraum vom 22. März bis 11. Mai 2016 observieren und holte eine neuropsychologische Beurteilung vom 14. Januar 2017 sowie eine neue psychiatrische Expertise ein, welche vom 26. Januar 2017 datiert. Am 20. November 2017 verfügte die IV-Stelle die Rentenaufhebung. B. Die dagegen erhobene Beschwerde der A._ wies das Versicherungsgericht des Kantons St. Gallen mit Entscheid vom 25. Oktober 2019 ab. C. A._ lässt Beschwerde in öffentlich-rechtlichen Angelegenheiten führen und beantragen, in Aufhebung des angefochtenen Entscheides und der Verfügung vom 20. November 2017 sei die Beschwerdegegnerin zu verpflichten, ihr weiterhin eine ganze Invalidenrente auszurichten. Eventualiter sei die Streitsache zur Einholung eines medizinischen Gutachtens und anschliessender neuer Entscheidung an die Vorinstanz oder die Beschwerdegegnerin zurückzuweisen. Während die IV-Stelle auf Abweisung der Beschwerde schliesst, verzichtet das Bundesamt für Sozialversicherungen auf eine Vernehmlassung. Am 18. Februar 2020 lässt A._ unaufgefordert eine weitere Eingabe einreichen.