Sachverhalt:
A.
A._, geboren 1975, leidet seit Geburt an einer Cerebralparese und bezog im Kanton Zürich Ergänzungsleistungen zu einer Hilflosenentschädigung der Invalidenversicherung. Mit Verfügungen vom 16. September 2016 vergütete ihr ihre Wohnsitzgemeinde Greifensee (ZH), Durchführungsstelle für Zusatzleistungen der AHV/IV, Krankheits- und Behinderungskosten von Fr. 2'377.-, verrechnete diese mit einer noch offenen Schuld (Fr. 3'928.-) und forderte schliesslich Fr. 1'551.- zurück. Daran hielt sie mit Einspracheentscheid vom 25. Oktober 2016 fest.
B.
B.a. Auf die dagegen erhobene Beschwerde der A._ trat das Sozialversicherungsgericht des Kantons Zürich am 8. Februar 2017 nicht ein, da sie bei der Beschwerdeerhebung Wohnsitz in Zuzwil (SG) gehabt habe. Es überwies die Sache zuständigkeitshalber an das Versicherungsgericht des Kantons St. Gallen.
B.b. Mit Entscheid vom 15./17. Mai 2018 erachtete sich auch das Versicherungsgericht des Kantons St. Gallen als unzuständig und trat auf die Beschwerde nicht ein.
C.
A._ lässt gegen die Entscheide vom 8. Februar 2017 und vom 15./17. Mai 2018 Beschwerde in öffentlich-rechtlichen Angelegenheiten führen mit dem Rechtsbegehren, das Bundesgericht habe über die Frage der örtlichen Zuständigkeit zu entscheiden und die Angelegenheit zur materiellen Beurteilung an die zuständige Instanz zu überweisen; sodann ersucht sie um unentgeltliche Rechtspflege.
Das Versicherungsgericht des Kantons St. Gallen erneuert vernehmlassungsweise seinen Standpunkt. Die Gemeinde Greifensee und das Bundesamt für Sozialversicherungen verzichten auf eine Stellungnahme.
Erwägungen:
1.
Nach dem im Abschnitt Rechtspflegeverfahren unter der Überschrift Zuständigkeit stehenden Art. 58 Abs. 3 ATSG überweist die Behörde, die sich als unzuständig erachtet, die Beschwerde ohne Verzug dem zuständigen Versicherungsgericht. Mit der Einreichung der Beschwerde bei der unzuständigen Behörde wird die Beschwerdefrist gewahrt (Art. 60 Abs. 2 in Verbindung mit Art. 39 Abs. 2 ATSG). Dabei kann das sich als unzuständig betrachtende kantonale Versicherungsgericht einen Nichteintretensentscheid erlassen oder sich darauf beschränken, die Sache an das als zuständig betrachtete Versicherungsgericht eines anderen Kantons weiterzuleiten. Unabhängig davon, ob das erste Gericht die Beschwerde formlos weiterleitet oder einen förmlichen Nichteintretensentscheid erlässt, welcher von der rechtsuchenden Person im Hinblick auf die vorgenommene Weiterleitung der Sache an das zweite Gericht unangefochten blieb, ist bei Verneinung der örtlichen Zuständigkeit in einem Nichteintretensentscheid des zweiten Gerichts im Rahmen des dagegen eingeleiteten Beschwerdeverfahrens die Zuständigkeit beider in Frage kommenden Gerichte vom Bundesgericht ohne Bindung an den Nichteintretensentscheid des ersten kantonalen Gerichts zu prüfen. Da bei fehlender Zuständigkeit des zweiten Gerichts keine Instanz nach Art. 58 ATSG zur Verfügung stünde, kann bei einer solchen Verfahrenskonstellation die Rechtskraft des Nichteintretensentscheids des ersten kantonalen Gerichts nicht eintreten (BGE 143 V 363 E. 2 S. 365 f. mit Hinweisen).
2.
2.1. Gemäss Artikel 58 Abs. 1 ATSG (in Verbindung mit Art. 1 Abs. 1 ELG) ist das Versicherungsgericht desjenigen Kantons zuständig, in dem die versicherte Person oder der Beschwerde führende Dritte zur Zeit der Beschwerdeerhebung Wohnsitz hat. In BGE 139 V 170 E. 5.3 S. 175 hat das Bundesgericht bestätigt, dass zur Bestimmung der örtlichen Zuständigkeit an den Wohnsitz der versicherten Person anzuknüpfen ist (ebenso: BGE 143 V 363 E. 3 S. 366).
2.2. Das Versicherungsgericht des Kantons St. Gallen hat seine örtliche Zuständigkeit in Auslegung des Art. 58 Abs. 1 ATSG verneint. Es hat im Wesentlichen erwogen, das Ergänzungsleistungsrecht zeichne sich durch einen gewichtigen kantonalrechtlichen Bezug aus. Dem müsse Rechnung getragen werden, indem die Anwendung ausserkantonalen "Nicht-Rechts" vermieden werde. Dass das ELG nicht von Art. 58 Abs. 1 ATSG abweiche, stelle aus systematischer Sicht eine (unechte) Gesetzeslücke dar. Für eine solche spreche überdies, dass mit der Anknüpfung am Wohnsitz das Ziel verfehlt werde, einen möglichst engen sachlichen Bezug zum Gerichtsstand zu schaffen. Habe die versicherte Person ihren Wohnsitz kurz vor der Beschwerdeerhebung in einen anderen Kanton verlegt, so könnte sie nach Art. 58 Abs. 1 ATSG nicht an ihrem bisherigen Lebensmittelpunkt, sondern einzig am noch fremden neuen Ort Beschwerde führen. In dieser Konstellation widerspreche die Anknüpfung am Wohnsitz diametral dem Willen des historischen Gesetzgebers. Sie führe zum stossenden Ergebnis, dass das Versicherungsgericht ausserkantonales Recht anwenden oder umgekehrt nach eigenem Recht einen Einspracheentscheid beurteilen müsste, der auf dem Recht eines anderen Kantons beruhe. Auch die teleologische Auslegung spreche somit für eine Gesetzeslücke. Daher müsse bei einer Wohnsitzverlegung, wie sie hier vorliege, von Art. 58 Abs. 1 ATSG abgewichen werden: Zuständig sei entgegen dessen Wortlaut nicht das Gericht am neuen Wohnsitz der versicherten Person, sondern dasjenige, dessen kantonales Ergänzungsleistungsrecht angewandt worden sei.
3.
3.1. Im Urteil 9C_260/2018 vom 18. Dezember 2018 (insbesondere E. 2.1 und 3.2) hat sich das Bundesgericht mit der vorinstanzlichen Auffassung bereits einlässlich auseinandergesetzt. Demnach lassen sich aus dem Umstand, dass im Bereich der Ergänzungsleistungen ein wesentlicher Teil kantonal geregelt ist - was vorab für die Vergütung der Krankheits- und Behinderungskosten zutrifft - keine Argumente zu Gunsten einer Änderung der Rechtsprechung nach BGE 139 V 170 (und BGE 143 V 363) gewinnen. Die formelle Frage der örtlichen Zuständigkeit kann nicht unter Berufung auf einzelne materielle Bestimmungen aus dem Ergänzungsleistungsrecht abweichend von der im ATSG getroffenen Lösung geregelt werden. Gestützt darauf hat das Bundesgericht das Vorliegen einer (unechten) Gesetzeslücke explizit verneint (vgl. dazu BGE 141 V 481 E. 3 S. 485 f. mit Hinweisen) und bestätigt, dass Art. 58 Abs. 1 ATSG die Zuständigkeit der kantonalen Versicherungsgerichte umfassend (integral) regelt.
Triftige Gründe für eine Praxisänderung sind nicht ersichtlich und benennt das kantonale Gericht weder im angefochtenen Entscheid noch in seiner Vernehmlassung vom 23. Juli 2018 (zu den Voraussetzungen: BGE 143 IV 1 E. 5.2 S. 3; 141 II 297 E. 5.5.1 S. 303). An der bisherigen Rechtsprechung ist daher festzuhalten. Weiterungen dazu erübrigen sich.
3.2. Die Versicherte hatte im Zeitpunkt der Beschwerdeerhebung beim Sozialversicherungsgericht des Kantons Zürich am 24. November 2016 Wohnsitz in Zuzwil (SG). Folglich ist gemäss Art. 58 Abs. 1 ATSG das Versicherungsgericht des Kantons St. Gallen für die Beurteilung der Beschwerde zuständig. Dessen Nichteintretensentscheid vom 15./17. Mai 2018 verletzt Bundesrecht (Art. 95 lit. a BGG).
4.
Umständehalber wird auf die Erhebung von Gerichtskosten verzichtet (Art. 66 Abs. 1 Satz 2 BGG). Die Beschwerdegegnerin hat der Beschwerdeführerin eine Parteientschädigung zu bezahlen; mit Blick auf den unzutreffenden Nichteintretensentscheid des Versicherungsgerichts des Kantons St. Gallen liegt keine qualifizierte Verletzung der Pflicht zur Justizgewährleistung vor, die es - wie dies in der Vernehmlassung vom 2. August 2018 sinngemäss beantragt wird - ausnahmsweise erlaubte, die Parteikosten der Vorinstanz respektive dem Gemeinwesen, dem diese angehört, aufzuerlegen (vgl. BGE 142 V 551 E. 9.1 S. 571 mit Hinweisen).
Demnach erkennt das Bundesgericht:
1.
In Gutheissung der Beschwerde wird der Entscheid des Versicherungsgerichts des Kantons St. Gallen vom 15./17. Mai 2018 aufgehoben und die Sache wird an dieses zurückgewiesen, damit es materiell über die Beschwerde gegen den Einspracheentscheid der Gemeinde Greifensee vom 25. Oktober 2016 entscheide.
2.
Es werden keine Gerichtskosten erhoben.
3.
Die Gemeinde Greifensee hat den Rechtsvertreter der Beschwerdeführerin für das bundesgerichtliche Verfahren mit Fr. 2'800.- zu entschädigen.
4.
Dieses Urteil wird den Parteien, dem Sozialversicherungsgericht des Kantons Zürich, dem Versicherungsgericht des Kantons St. Gallen und dem Bundesamt für Sozialversicherungen schriftlich mitgeteilt.
Luzern, 10. April 2019
Im Namen der II. sozialrechtlichen Abteilung
des Schweizerischen Bundesgerichts
Die Präsidentin: Pfiffner
Der Gerichtsschreiber: Grünenfelder