Naming Conventions
Naming Tasks
Tasks must use slash-delimited kebab-case names following the below pattern:
[:vendor|:product] / [:api_version] / [:resource] / [:operation_name_as_noun] / [:model]
Examples:
- /v1/images/generatations
- videos/text-to-video
- images/enhancements/diffbir
API integration tasks
For tasks that do External API integration, append the vendor name at the beginning.
Additionally, try to keep the APIs closer to the original ones
Examples:
- openai/v1/chat-completions
- ideogram/v3/images/generations
- ideogram/v3/images/edits
- pika/text-to-video
Product-specific tasks
For tasks owned by a specific domain or designed to be used in a specific product, append the domain/product name at the beginning.
Examples:
- media-engine/videos/exports
- media-engine/videos/effect-apply
- api-bu/template-variations/generations
Tagging Tasks
Reusability
- platform-task - core tasks designed to be reused across different feature implementations
- feature-task - feature task (usually workflow) designed for individual features only. Not recommended for reuse
Alerting
- stability:stable - Default if not marked as beta or experimental. Provides 99.9% availability SLO
- stability:beta - Task is in beta phase. Provides 95% availability SLO
- stability:experimental - No SLO — used for early-stage or experimental tasks
Expense Tracking
- vendor:[VENDOR] - the vendor of the external API the task uses (e.g.
vendor:google- the task uses google's external APIs)