sometimes we want to execute logical identical tasks (this means the values of all significant parameters are equal) multiple times in the same python interpreter, for example for tests or in case the result is not deterministic, ...
However, luigi is original a workflow management system doesn't want to rerun tasks if their input parameters have the same values
Usually, we don't need the reruns in the same invocation
Possible solution
Because we only need the reruns between different invocations of luigi, we could introduce a new significant parameter job_id which is usually inherited from the calling tasks or given by the creator of the root task
The inheritance from the calling tasks allows an easy pass-through of the job_id through the task hierarchy
Letting the creator give the root task the job_id, lets the creator decide which behavior he needs.
Background:
Possible solution