Faits : A. Par ordonnance pénale du 27 mars 2012, le Ministère public du canton de Genève a déclaré X._ coupable d'infraction à l'art. 117 de la loi fédérale sur les étrangers et l'a condamnée à 60 jours-amende à 100 fr. le jour avec sursis pendant 3 ans ainsi qu'à une amende de 500 francs. Ensuite de l'opposition formée par courrier du 13 avril 2012 par X._, le Ministère public a rendu, le 27 juin 2012, une nouvelle ordonnance pénale, notifiée à l'intéressée le 6 juillet 2012, la condamnant, pour la même infraction, à 40 jours-amende à 100 fr. le jour, avec sursis pendant 3 ans ainsi qu'à 500 fr. d'amende. Par courrier de son conseil daté du 16 juillet 2012 et adressé au Ministère public, la recourante a déclaré former opposition à cette ordonnance pénale, indiquant l'avoir reçue « le 10 juillet 2012 ». Sur l'enveloppe contenant ce courrier figure la date du « 02.04.12 » à côté de l'affranchissement. Un timbre humide de La Poste indique la date du 20 juillet 2012. Invitée par le Ministère public à justifier la date à laquelle elle avait formé opposition, X._ a affirmé que son opposition avait été « postée en temps utile, soit le 16 juillet 2012 ». Selon elle, « le pli avait dû faire l'objet d'un réadressage », l'adresse semblant biffée, de même que le numéro interne de publipostage. Cette hypothèse aurait expliqué le cumul de dates sur l'enveloppe, « aucune pour le 16 juillet 2012, vu la remise au guichet et l'affranchissement interne, certes ancien; puis celle du réadressage le 20 suivant ». Par ordonnance sur opposition du 10 juin 2013, le Ministère public a maintenu l'ordonnance pénale du 27 juin 2012 et a transmis la procédure au Tribunal de police afin qu'il statue sur la recevabilité de l'opposition (qualifiée de « douteuse ») et la validité de l'ordonnance pénale. En audience du 3 septembre 2014, le Tribunal de police a soulevé d'office la question préjudicielle de la validité de l'opposition. Le conseil de la recourante a repris, en substance, les explications déjà données par courrier du 8 février 2013. Par ordonnance du 3 septembre 2014, le Tribunal de police a déclaré irrecevable l'opposition formée par X._ à l'ordonnance pénale du 27 juin 2012. B. Saisie d'un recours, la Chambre pénale de la Cour de justice du canton de Genève l'a rejeté, par arrêt du 4 février 2015. C. X._ forme un recours en matière pénale contre cet arrêt. Elle conclut à son annulation et au renvoi de la cause à l'autorité précédente pour nouvelle décision au sens des considérants. Elle demande, par ailleurs, le bénéfice de l'assistance judiciaire.