Fatti

Il ricorrente [X.] ha presentato una domanda d'asilo in Svizzera nel novembre 2015 ed è stato assegnato al Cantone del Giura. Il 11 marzo 2016 è stato espulso in Italia. Il 26 marzo 2016 è stato sottoposto a un controllo di polizia a Basilea Città, indicando come luogo di residenza Roma. Il 24 agosto 2016, la Procura pubblica del Cantone di Basilea Città ha emesso un decreto penale nei confronti di [X.] per soggiorno illegale e inosservanza dell'allontanamento. Il decreto penale è stato notificato all'indirizzo di Delémont, ma è tornato con la dicitura "non ritirato". La Procura pubblica non è riuscita a individuare un altro indirizzo di notifica. Nel marzo 2017, [X.] è stato controllato nel Cantone di Vaud e consegnato all'autorità di esecuzione penale di Basilea Città. Il 2 maggio 2017, [X.] ha presentato opposizione al decreto penale, che il Tribunale penale di Basilea Città non ha trattato per tardività. Il Tribunale d'appello di Basilea Città ha respinto il reclamo presentato contro tale decisione.

Legge

Il Tribunale federale annulla la decisione del Tribunale d'appello e rinvia il caso alla prima istanza per una nuova decisione. Esso motiva come segue:

La Procura pubblica non poteva applicare la finzione di notifica ai sensi dell'art. 88 cpv. 4 CPP, poiché non aveva intrapreso tutte le ricerche ragionevoli per determinare il luogo di residenza del ricorrente. In particolare, avrebbe dovuto consultare i fascicoli dell'Ufficio della…