Context
unfao.py lines 131, 262, 272 make network calls to Appwrite (download_latest_file(), upload_data()) with no configured timeout. If the endpoint hangs, the pipeline blocks indefinitely with no error signal.
Requirements
- Add timeout parameter to all Appwrite operations (download and upload)
- If timeout is exceeded, log ERROR and raise (ADR-008 compliant)
- Timeout value should be configurable or have a sensible default (e.g., 300s)
Risk Register
C-13 (Tier 2). Production reliability concern — a hung Appwrite connection blocks the pipeline indefinitely.
Dependencies
May require changes in views-pipeline-core's DatastoreModule if it doesn't expose a timeout parameter. Investigate before implementing.
Context
unfao.pylines 131, 262, 272 make network calls to Appwrite (download_latest_file(),upload_data()) with no configured timeout. If the endpoint hangs, the pipeline blocks indefinitely with no error signal.Requirements
Risk Register
C-13 (Tier 2). Production reliability concern — a hung Appwrite connection blocks the pipeline indefinitely.
Dependencies
May require changes in views-pipeline-core's DatastoreModule if it doesn't expose a timeout parameter. Investigate before implementing.