Changelog
Assets: track what your workflows produce
Replace @task with @materialize and Prefect tracks the tables, models, and files your workflows produce, and how they all connect.
When a dashboard throws garbage numbers at quarter-end, someone has to follow the breadcrumbs back through tasks, tables, and stray CSVs. That is asset lineage in the real world, and Prefect now tracks it without asking you to contort your workflow around asset definitions. Tell Prefect what a function produces:
@materialize("s3://bucket/important-data.csv")
def write_data():
# writes s3://bucket/important-data.csv
...Prefect builds the lineage graph from there: what each workflow produces, when it last ran, and how your outputs depend on each other.
Read the announcement post for the full story, or start with the assets documentation.