Sachverhalt:
A.
A.a. A._, geboren 1967, war ab 1. August 1995 als Betriebsarbeiterin in der Firma B._ AG tätig. Am 17. Dezember 2003 meldete sie sich bei der Invalidenversicherung zum Leistungsbezug an. Nach Abklärungen bejahte die IV-Stelle des Kantons Aargau mit Verfügung vom 18. September 2007 rückwirkend ab dem 1. April 2006 den Anspruch auf eine halbe Invalidenrente. A._ reichte gegen die Verfügung beim kantonalen Versicherungsgericht Beschwerde ein. Dieses wies die Sache zur weiteren Abklärung und Neuverfügung an die IV-Stelle zurück (Entscheid VBE.2007.766 vom 9. Dezember 2008). Die IV-Stelle holte ein bidisziplinäres Gutachten der MEDAS vom 2. Juni 2010 ein. Nach Durchführung des Vorbescheidverfahrens verfügte sie am 5. Juli 2011 die rückwirkende Ausrichtung einer befristeten halben Invalidenrente vom 1. April 2006 bis zum 31. Juli 2009. A._ erhob wiederum Beschwerde beim kantonalen Versicherungsgericht. Jenes hiess sie teilweise gut und wies die Sache zur weiteren Abklärung an die IV-Stelle zurück (Entscheid VBE.2011.590 vom 3. April 2012).
A.b. Die IV-Stelle liess A._ beim Zentrum C._ bidisziplinär (psychiatrisch/rheumatologisch) untersuchen (Expertise vom 25. November 2013). Mit Vorbescheid vom 8. Januar 2014 und Verfügung vom 24. Februar 2014 sprach die IV-Stelle ihr für die Zeit vom 1. April 2006 bis 31. Juli 2009 befristet eine halbe Rente zu.
B.
Die Beschwerde der A._ hiess das Versicherungsgericht des Kantons Aargau mit Entscheid vom 17. Februar 2015 teilweise gut. Es änderte die Verfügung v om 31. März 2014 (recte: 24. Februar 2014) dahingehend ab, dass die Versicherte Anspruch auf eine befristete halbe Invalidenrente vom 1. April 2006 bis zum 31. Oktober 2009 hat.
C.
A._ lässt Beschwerde in öffentlich-rechtlichen Angelegenheiten führen und beantragen, der angefochtene Entscheid und die Verfügung seien aufzuheben. Es sei ihr ab 1. April 2006 bis und mit 31. Oktober 2009 eine Dreiviertelsrente (samt entsprechenden Kinderrenten) und ab 1. November 2009 eine Viertelsrente (samt entsprechenden Kinderrenten) zuzusprechen.
Die IV-Stelle beantragt die Abweisung der Beschwerde. Das Bundesamt für Sozialversicherungen verzichtet auf eine Vernehmlassung.
Erwägungen:
1.
Streitig und zu prüfen ist allein, ob und in welchem Umfang Überstundenentschädigungen als hypothetisches Valideneinkommen anzurechnen sind. Die Beschwerdeführerin hat deren Einbezug ins Valideneinkommen sowohl im Verwaltungsverfahren als auch im vorinstanzlichen Beschwerdeverfahren verlangt.
2.
Ein vor Eintritt des Gesundheitsschadens erzieltes (hohes) Einkommen, welches mit einem überdurchschnittlichen zeitlichen Aufwand erarbeitet worden ist, muss im Rahmen des sozialversicherungsrechtlichen Einkommensvergleichs nicht systematisch auf ein 100-%-Pensum reduziert werden (SVR 2011 IV Nr. 55 S. 163; 8C_671/2010 E. 4.5). Die Invalidenversicherung bietet als Erwerbsunfähigkeitsversicherung grundsätzlich nur Versicherungsschutz für eine übliche, normale erwerbliche Tätigkeit (a.a.O., E. 4.5.2); in diesem Rahmen sind aber auch sehr hohe bisherige Einkommen zu berücksichtigen (a.a.O., E. 4.5.5). Überstundenentschädigungen gehören zum Valideneinkommen, wenn und soweit die versicherte Person effektiv weiterhin mit solchen Einkünften hätte rechnen können (Urteile 9C_159/2010 vom 1. Juli 2010 E. 6.4, 9C_8/2012 vom 12. März 2012 E. 2.2.2; Meyer/Reichmuth, Bundesgesetz über die Invalidenversicherung, 3. Aufl. 2014, Art. 28a N. 70).
3.
Die Beschwerdeführerin weist darauf hin, die vorinstanzliche Ermittlung des Invaliditätsgrades nach dem Prozentvergleich lasse die Tatsache unberücksichtigt, dass sie bei der Arbeit in der Firma B._ regelmässige Überstunden zu leisten gehabt habe. Aufgrund der Kontinuität über drei Jahre sei erwiesen, dass sie auch weiterhin Überzeit geleistet hätte.
3.1. Bei einem Prozentvergleich wird das ohne Invalidität erzielbare hypothetische Erwerbseinkommen mit 100 % bewertet, während das Invalideneinkommen auf einen entsprechend kleineren Prozentsatz veranschlagt wird, so dass sich aus der Prozentdifferenz der Invaliditätsgrad ergibt.
3.2. Da die - von der Beschwerdeführerin - zuletzt ausgeübte Tätigkeit als Betriebsmitarbeiterin in der Firma B._ dem zumutbaren Leistungsprofil entspricht, hat die Vorinstanz den Grundwert des Valideneinkommens unbesehen um den Grad der ärztlich attestierten Arbeitsunfähigkeit gekürzt. Ob und inwieweit weitere Faktoren, insbesondere die geltend gemachten Überstunden, dem Schluss von der Arbeitsunfähigkeit auf die Erwerbsunfähigkeit entgegen stehen, hat die Vorinstanz nicht geprüft. Sie hat ohne weitere Begründung erwogen, dass "für das Validen- und Invalideneinkommen von gleichen Werten auszugehen ist". Dies trifft jedoch nur zu, wenn die geltend gemachte Überstundenentschädigung nicht zum Validenlohn gehört oder, wenn doch, die tatsächlich verbliebene Leistungsfähigkeit der Versicherten (ebenfalls) grösser als die ausgewiesene medizinisch-theoretische Arbeitsunfähigkeit ist.
3.3. Nachdem die Vorinstanz zu dieser entscheidwesentlichen Frage keine Sachverhaltsfeststellungen getroffen hat, mithin die befristete Rentenzusprache auf einer unvollständigen Sachverhaltsgrundlage beruht, ist die Sache an das kantonale Gericht zurückzuweisen, damit es über den Rentenanspruch der Beschwerdeführerin neu entscheide.
4.
Die Gerichtskosten werden der unterliegenden Beschwerdegegnerin auferlegt (Art. 66 Abs. 1 BGG). Die Beschwerdeführerin hat Anspruch auf eine Parteientschädigung (Art. 68 Abs. 1 BGG).
Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird teilweise gutgeheissen. Der Entscheid des Versicherungsgerichts des Kantons Aargau vom 17. Februar 2015 wird aufgehoben. Die Sache wird zur neuen Entscheidung an die Vorinstanz zurückgewiesen. Im Übrigen wird die Beschwerde abgewiesen.
2.
Die Gerichtskosten von Fr. 800.- werden der Beschwerdegegnerin auferlegt.
3.
Die Beschwerdegegnerin hat die Beschwerdeführerin für das bundesgerichtliche Verfahren mit Fr. 2'800.- zu entschädigen.
4.
Dieses Urteil wird den Parteien, der Vorsorgestiftung der Basler Versicherung AG, dem Versicherungsgericht des Kantons Aargau und dem Bundesamt für Sozialversicherungen schriftlich mitgeteilt.
Luzern, 15. Juli 2015
Im Namen der II. sozialrechtlichen Abteilung
des Schweizerischen Bundesgerichts
Die Präsidentin: Glanzmann
Der Gerichtsschreiber: Schmutz