Hello Patrick,
after the Solver processes a ProblemFact, it internally restarts solving. As a part of this restart, the MoveListFactory is asked to create the move list. At that point, the working solution should already contain the new entity.
While it is possible to use the MoveListFactory with real-time planning, I would advise against doing that. For the reason I described above, with every ProblemFact the MoveListFactory has to recreate the entire move list and that might be a performance problem.
Please see the MoveIteratorFactory to generate custom moves just in time:
Regards,
Radek