A small pipeline can name each intermediate result so the data movement stays visible.

Pipeline Stages

pipeline_stages.py
tasks = [
    {"title": "docs", "done": True},
    {"title": "tests", "done": False},
    {"title": "deploy", "done": False},
]

show_done = 

selected = []
for task in tasks:
    if show_done or not task["done"]:
        selected.append(task)

titles = []
for task in selected:
    titles.append(task["title"].upper())

print("tasks=" + ",".join(titles))
tasks = [
    {"title": "docs", "done": True},
    {"title": "tests", "done": False},
    {"title": "deploy", "done": False},
]

show_done = 

selected = []
for task in tasks:
    if show_done or not task["done"]:
        selected.append(task)

titles = []
for task in selected:
    titles.append(task["title"].upper())

print("tasks=" + ",".join(titles))
staged pipelines Named stages make filtering, transforming, and summarizing easier to inspect.