Во-первых, не выводить пути.
edgeTraversal = outE().
has("startTime", gte("2018-12-15")).
has("endTime", lte("2018-12-16")).simplePath(); []
g.V().has("a","123").has("s","1").has("e","p").has("r","e-1").
repeat(edgeTraversal.clone().inV()).
until(__.not(edgeTraversal)).
path().
by(valueMap("a","s")).fold()
Без дочерней переменной:
g.V().has("a","123").has("s","1").has("e","p").has("r","e-1").
repeat(outE().
has("startTime", gte("2018-12-15")).
has("endTime", lte("2018-12-16")).simplePath().inV()).
until(__.not(outE().
has("startTime", gte("2018-12-15")).
has("endTime", lte("2018-12-16")).simplePath())).
path().
by(valueMap("a","s")).fold()