Gremlin - Escolha um item aleatoriamente

Considere-me como 'usuário' 1. O objetivo da consulta é obter as postagens 'postadas' pelas pessoas que eu sigo e para cada uma dessas postagens, verifique:

Se foi gostado por mimSe foi apreciado por mais alguém que eu sigo e se simescolha um desses usuários aleatoriamente para retornar

Dados de amostra:

g.addV('user').property('id',1).as('1')
  addV('user').property('id',2).as('2').
  addV('user').property('id',3).as('3').
  addV('user').property('id',4).as('4').
  addV('post').property('postId','post1').as('p1').
  addV('post').property('postId','post2').as('p2').
  addE('follow').from('1').to('2').
  addE('follow').from('1').to('3').
  addE('follow').from('1').to('4').
  addE('posted').from('2').to('p1').
  addE('posted').from('2').to('p2').
  addE('liked').from('1').to('p2').
  addE('liked').from('3').to('p2').
  addE('liked').from('4').to('p2').iterate()

Consulta: (Como respondido aqui:Graph / Gremlin para caso de uso de mídia social) g.V().has('id',1).as('me').out('follow').aggregate('followers').out('posted').group().by('postId').by(project('likedBySelf','likedByFollowing').by(__.in('liked').where(eq('me')).count()).by(__.in('liked').where(within('followers')).order().by(shuffle).values('id').fold()))

Resultado:

[post1:[likedBySelf:0,likedByFollowing:[]],post2:[likedBySelf:1,likedByFollowing:[4,3]]]

Esta consulta é capaz de embaralhar os valores, mas mostra todos os 'id's, agora eu quero selecionar apenas o primeiro' id '. Usar .next () em vez de .fold () causa a exceção java.util.NoSuchElementExceptionÉ possível escolher aleatoriamente sem ter que avaliar todas as travessias primeiro e depois embaralhá-las?

Saída desejada:

[post1:[likedBySelf:0,likedByFollowing:[]],post2:[likedBySelf:1,likedByFollowing:[3]]]

Ou

[post1:[likedBySelf:0,likedByFollowing:[]],post2:[likedBySelf:1,likedByFollowing:[4]]]

questionAnswers(1)

yourAnswerToTheQuestion