--- # Prefect project config for photo-pipeline name: photo-pipeline prefect-version: 3.8.1 build: null push: null pull: - prefect.deployments.steps.set_working_directory: directory: /home/sam/photo-pipeline deployments: - name: hello version: null tags: [photo-pipeline] description: "Photo pipeline hello flow" schedule: cron: "*/5 * * * *" timezone: "Australia/Melbourne" flow_name: null entrypoint: photo_pipeline_hello.py:hello_pipeline parameters: {} work_pool: name: photo-pool work_queue_name: null job_variables: {} - name: ingest version: null tags: [photo-pipeline] description: "Hash + dedup-check a folder against the persistent fingerprint DB (batched, checkpointed)" schedule: null flow_name: null entrypoint: photo_ingest.py:photo_ingest parameters: base_dir: /mnt/data/takeout source: takeout batch_size: 1000 work_pool: name: photo-pool work_queue_name: null job_variables: {} - name: fetch version: null tags: [photo-pipeline] description: "Download + track + extract Takeout archives (resume-capable)" schedule: null flow_name: null entrypoint: takeout_fetch.py:takeout_fetch parameters: urls: [] manifest: null export_id: null work_pool: name: photo-pool work_queue_name: null job_variables: {} - name: quality version: null tags: [photo-pipeline] description: "CleanVision quality audit; classify into keep/review/delete staging" schedule: null flow_name: null entrypoint: quality_scan.py:quality_scan parameters: base_dir: /mnt/data/takeout move: false max_files: 0 work_pool: name: photo-pool work_queue_name: null job_variables: {} - name: import version: null tags: [photo-pipeline] description: "Import staged photos into Immich via server-bundled CLI (checksum dedup)" schedule: null flow_name: null entrypoint: immich_import.py:immich_import parameters: src_dir: /mnt/data/01_keep dry_run: true work_pool: name: photo-pool work_queue_name: null job_variables: {} - name: watch version: null tags: [photo-pipeline] description: "Watch /mnt/data/takeout/incoming; auto-chain pipeline on new Takeout material" schedule: interval: 900 timezone: "Australia/Melbourne" flow_name: null entrypoint: photo_watch.py:photo_watch parameters: {} work_pool: name: photo-pool work_queue_name: null job_variables: {} - name: staging version: null tags: [photo-pipeline] description: "Materialize review decisions: move approved/rejected files to staging dirs" schedule: null flow_name: null entrypoint: process_staging.py:process_staging parameters: {} work_pool: name: photo-pool work_queue_name: null job_variables: {}