"""photo-pipeline: first real flow (skeleton). Prefect 3.8 local pattern: flow.serve() registers the deployment and runs scheduled work. For the pilot this is the supported, storage-free path. """ from prefect import flow @flow(name="photo-pipeline-hello") def hello_pipeline(): print("photo-pipeline flow alive on .13") return "ok" if __name__ == "__main__": # serve() keeps this process alive, polls for scheduled runs hello_pipeline.serve(name="hello", cron="*/5 * * * *", tags=["photo-pipeline"])