A reactive workflow framework for computational pipelines