We don't have a use case for this kind of usage yet, but if we want to support using rubydex without resolution, we want to let user explicitly configure that so the resolution items don't accumulate and waste memory.
Based on our discussion, the design should look like this:
graph = Graph.new(without_resolution: true) # or `resolution: false`?
# there will be no setter to change this
graph.index_source(...) # doesn't create pending work items
graph.resolve() # raise