Sort dans aggregations

Bonjour,
je me casse un peu les dents depuis deux jours sur le tri d'une aggrégation...
l'objectif est de récupérer les addresses aggrégées et trier par distance d'un geopoint:

là le problème est que je trie bien chaque adresse par distance mais lorsque que j'aggrège pour éviter les doublons d'addresse, le tri se fait bien évidement sur le total (doc_count). Hors je voudrais justement que le tri final se fasse sur la distance.

voici la request: ( le "order" dans subdistinct est l'endroit où je suppose que le tri doit se faire)

{
"aggs": {
"subdistinct": {
"terms": {
"field": "address.location",
"size": 50,
"order": {
** XXX**
** }**
},
"aggs": {
"subdistinct2": {
"top_hits": {
"size": 1,
"_source": [
"id",
"surname",
"address.id",
"address.housenumber",
"address.street",
"address.city",
"address.postalcode"
],
"sort": [
{
"_geo_distance": {
"location": {
"lat": 44.834317,
"lon": -0.56921
},
"order": "asc",
"unit": "m",
"distance_type": "plane"
}
}
]
}
}
}
}
}
}

merci!!