r2-transfer-service-playbook
SKILL.md
R2 Transfer Service Playbook
Portée
Utilise ce skill lorsqu'une tâche touche :
services/r2_transfer_service.pyemail_processing/orchestrator.py(section delivery_links / r2_url)deployment/cloudflare-worker/*deployment/public_html/config_api.php,deployment/public_html/test-direct.php, pages de test R2
Pré-requis
- ENV obligatoires :
R2_BASE_URL,R2_FETCH_TOKEN,ALLOWED_R2_DOMAINS. - Virtualenv
/mnt/venv_ext4/venv_render_signal_serverpour les scripts/tests. - Accès au déploiement Cloudflare Workers (wrangler).
Workflow
- Analyse des dépendances
- Confirmer la présence des ENV ci-dessus.
- Vérifier les allowlists (Dropbox/FromSmash/SwissTransfer) avant toute nouvelle source.
- Mises à jour Python
- Toujours valider les domaines via
is_allowed_domain. - Injecter le header
X-R2-FETCH-TOKENpour chaque requête Worker. - Conserver les logs sans PII et retour fallback
raw_urlen cas d'échec.
- Toujours valider les domaines via
- Workers Cloudflare
- Garder le mode fetch avec timeout 120s pour Dropbox
/scl/fo/. - Mettre à jour
httpMetadata.contentDispositionpour préserver le nom de fichier. - Exécuter
wrangler deploy --dry-run(documenter la sortie).
- Garder le mode fetch avec timeout 120s pour Dropbox
- PHP Logger / Diagnostics
- Assurer que
config_api.phpcontinue d'écrire les pairessource_url/r2_url. - Tester
deployment/public_html/test-direct.phppour valider le flux complet.
- Assurer que
- Tests & validation
- Lancer le helper
./.cline/skills/r2-transfer-service-playbook/test_r2_worker.sh. - Compléter si besoin avec des tests ciblés sur les nouvelles sources.
- Lancer le helper
- Documentation & Memory Bank
- Mettre à jour
docs/processing/file-offload.mdou section dédiée R2. - Ajouter une entrée dans la Memory Bank si de nouvelles sources sont supportées.
- Mettre à jour
Ressources
test_r2_worker.sh: active le venv, exécute les tests R2 et vérifie la page de test PHP.
Conseils
- En cas de nouvelle plateforme de fichiers, créer un helper dédié (normalisation URL, validation).
- Limiter les retries côté Worker, gérer les erreurs HTTP explicitement.
- Garder les scripts de cleanup alignés (expiration 24h par défaut).
Weekly Installs
2
Repository
ki2pixel/render…l_serverFirst Seen
13 days ago
Security Audits
Installed on
mcpjam2
command-code2
claude-code2
junie2
windsurf2
zencoder2