Forse l'ordine dipenderà da molti fattori, incluso il piano di esecuzione della query, la configurazione della tua istanza, la versione del database, se sei su exadata o meno.
Se non stai dando a Oracle alcun criterio specifico per ordinare i dati, non puoi contare su alcun ordinamento specifico, anche se dalle tue prove sembri ottenere i dati ordinati in modo coerente in un modo specifico.
Secondo la documentazione Oracle per listagg:
- La order_by_clause determina l'ordine in cui vengono restituiti i valori concatenati. La funzione è deterministica solo se l'elenco delle colonne ORDER BY ha ottenuto un ordinamento univoco.