Awesome-omni-skill r2-transfer-service-playbook
Manage changes to the R2 transfer pipeline (Python service, Cloudflare Workers, PHP logger) with mandatory validations, allowlists, and regression checks.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/devops/r2-transfer-service-playbook" ~/.claude/skills/diegosouzapw-awesome-omni-skill-r2-transfer-service-playbook && rm -rf "$T"
manifest:
skills/devops/r2-transfer-service-playbook/SKILL.mdsource content
R2 Transfer Service Playbook
Portée
Utilise ce skill lorsqu'une tâche touche :
services/r2_transfer_service.py
(section delivery_links / r2_url)email_processing/orchestrator.pydeployment/cloudflare-worker/*
,deployment/public_html/config_api.php
, pages de test R2deployment/public_html/test-direct.php
Pré-requis
- ENV obligatoires :
,R2_BASE_URL
,R2_FETCH_TOKEN
.ALLOWED_R2_DOMAINS - Virtualenv
pour les scripts/tests./mnt/venv_ext4/venv_render_signal_server - 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
pour chaque requête Worker.X-R2-FETCH-TOKEN - Conserver les logs sans PII et retour fallback
en cas d'échec.raw_url
- Toujours valider les domaines via
- Workers Cloudflare
- Garder le mode fetch avec timeout 120s pour Dropbox
./scl/fo/ - Mettre à jour
pour préserver le nom de fichier.httpMetadata.contentDisposition - Exécuter
(documenter la sortie).wrangler deploy --dry-run
- Garder le mode fetch avec timeout 120s pour Dropbox
- PHP Logger / Diagnostics
- Assurer que
continue d'écrire les pairesconfig_api.php
/source_url
.r2_url - Tester
pour valider le flux complet.deployment/public_html/test-direct.php
- 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
ou section dédiée R2.docs/processing/file-offload.md - Ajouter une entrée dans la Memory Bank si de nouvelles sources sont supportées.
- Mettre à jour
Ressources
: active le venv, exécute les tests R2 et vérifie la page de test PHP.test_r2_worker.sh
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).