Patron de tâche texte-vers-vidéo
Étendez la démo optionnelle avec entitlements, quotas, crédits, idempotence et remboursements d’organisation.
Starter source:
e632762.
Les exemples vidéo et image partagent une admission durable des tâches payantes. Ils fonctionnent uniquement en développement ; cloner le starter n’active aucun fournisseur commercial.
Activez ENABLE_DEMO_FEATURES=true et ENABLE_TEXT2VIDEO_MOCK=true, lancez pnpm dev:seed -- --paid-examples, puis pnpm dev:all. La préparation locale accorde un droit manuel idempotent sans achat Stripe. Le fournisseur simulé retourne le clip de huit secondes /demo-video.mp4, ou TEXT2VIDEO_MOCK_URL ; il ne synthétise pas le texte, le format ou la durée demandés.
POST /api/tasks/text-to-video exige une authentification, une organisation explicite et une clé idempotente dans le corps ou l’en-tête Idempotency-Key. Le texte est limité à 1 000 caractères et la durée à 1–60 secondes entières. Le service résout les rejeux avant de vérifier les droits des nouvelles opérations. Une transaction réserve le quota mensuel, débite les crédits, crée la tâche et enregistre sa distribution. Un échec de la file annule tous ces effets.
La réponse 202 contient une tâche en attente. Le worker emploie son UUID comme identité du fournisseur, reprend les erreurs temporaires et rembourse les crédits de façon idempotente avant l’échec terminal. Consultez GET /api/tasks/[uuid]. L’interface reprend les lectures interrompues et retrouve la tâche et ses paramètres après rechargement, sans nouvel envoi. « Générer une autre vidéo » crée explicitement une nouvelle demande.
Les prix sont dans src/config/tasks.ts, les droits dans src/services/entitlements.ts, l’exécution dans src/services/tasks/video.ts et l’adaptateur dans src/services/ai/video.ts. Réévaluez les tarifs et limites d’exemple pour votre produit.
Les anciennes tâches synchrones sans empreinte ne sont jamais renvoyées automatiquement : réconciliez d’abord le résultat du fournisseur. Déployez un worker compatible avec text_to_video avant son admission. Les adaptateurs réels doivent conserver identité, annulation, isolation et compensation ; sans idempotence du fournisseur, réconciliez avant toute reprise. Remplacez aussi les contrôles de démonstration de la page, de la route et du service par une admission de production revue.
Liens : Images, Crédits, Offres, Jobs.
Si TEXT2VIDEO_MOCK_URL est absent, vide ou composé d’espaces, /demo-video.mp4 est utilisé. Une sortie vide du prestataire est un échec, jamais un résultat payé réussi ; après épuisement des tentatives, la compensation utilise la transaction d’origine.