For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /tr/docs/web/jobs.md (or send Accept: text/markdown).
Arka plan işleri
JobRunner sözleşmesi ve Trigger.dev üzerinden dayanıklı iş.
Kurulum ve yapılandırma
Herhangi bir adımdan önce, Başlamadan önce ve Terminal temelleri bölümlerini okuyun. Bu talimatlar, supastack monorepo'nun tamamını VS Kodunda açtığınızı varsayar; kök package.json dosyası depo kökünü işaretler. pnpm komutlarında çalışma alanı paketi bir uygulama veya paylaşılan kod klasörüdür; Üründe çalışma alanı, ekibin veri taşıyıcısı ve güvenlik sınırıdır. corepack pnpm --filter ... komutlar kökünden çalıştırılırken monorepodan bir paket seçer. Yalnızca senkronize edilmiş bir mobil veya masaüstü klasörü açtıysanız, Web arka ucunu, Docker kurulumunu veya kök komut dosyalarını içermez: arka ucu bu monorepodan veya erişilebilir bir barındırılan sunucudan çalıştırın ve platform klasörünün kendi komut dosyalarını kullanın. Ortam değişkeni, yerel bir .env dosyasında veya barındırma kontrol panelinizde depolanan adlandırılmış bir ayardır; İlgili uygulamayı değiştirdikten sonra yeniden başlatın ve sunucu sırlarını NEXT_PUBLIC_ ve EXPO_PUBLIC_ değerlerinin dışında tutun.
1. VS Code'da apps/web/src/job-handlers.ts ve apps/web/src/scheduler-runtime.ts'yi açın. Bir iş arka plan işidir; zamanlayıcı ne zaman kuyruğa alınacağına karar verir.
2. Yerel bir işaret için, apps/web/.env.local'de ve repository-root .env'de aynı SCHEDULER_TICK_SECRET'yi ayarlayın; onay betiği kök .env dosyasını okurken Web uç noktası uygulama ayarlarını okur.
3. Web'i corepack pnpm --filter @supastack/web dev ile başlatın, ardından corepack pnpm jobs:tick'i kökten çalıştırın. Beklenen: terminal, localhost:3000'den bir POST sonucunu gösterir. Trigger.dev ayrı bir sağlayıcıdır ve kendi hesabına ve sunucu anahtarlarına ihtiyaç duyar.
Üretim görev gönderimi için yalnızca-sunucu TRIGGER_SECRET_KEY ve TRIGGER_PROJECT_REF ile JOB_PROVIDER=trigger ayarlayın. Hedef projeyi yapılandırmadan önce apps/web/trigger.config.ts ve apps/web/trigger içindeki ai.generate görevini inceleyin.
JOB_PROVIDER=trigger
TRIGGER_PROJECT_REF=your-project-reference
# Provide TRIGGER_SECRET_KEY through the server secret store.
# Local/self-hosted scheduler tick:
# SCHEDULER_TICK_SECRET=…
# SCHEDULER_TICK_URL=http://localhost:3000Kopyalanacak komutlar
Bir komutun hangi klasörde çalıştığını görmek için yorumları takip edin. İki terminal etiketlenmişse, iki terminal penceresi açın ve ikincisini kullanırken ilk komutu çalışır durumda tutun.
# Terminal 1 — start the Web app from the monorepo root:
corepack pnpm --filter @supastack/web dev
# Terminal 2 — run one scheduler tick from the monorepo root:
corepack pnpm jobs:tickUygulama iş akışı
Paylaşılan JobRunner sözleşmesi enqueue, status ve cancel vaat eder. Trigger.dev iş akışına özgü semantiği sahiplenir; genel arayüzden zamanlama, yeniden deneme ya da dayanıklılık garantileri çıkarmayın.
Dayanıklı uygulama görev kimliği gönderimi, işçi yürütmesini, kullanım kayıtlarını ve sonuçları bağlar. Onaylanmış kuyruklamadan sonra başarısız sağlayıcı-çalışması meta veri eklemesi, başka kuyruklamaya ya da kabul edilmiş işin geçersizleşmesine neden olmamalıdır.
Doğrulama ve sorun giderme
Onay işareti 404 değerini döndürürse, sırrın her iki ayar dosyasında da mevcut olduğunu ve tam olarak eşleştiğini doğrulayın, ardından Web'i yeniden başlatın. Terminal bağlantının reddedildiğini söylüyorsa önce Web'i başlatın. Hiçbir iş yürütülmediyse, bir zamanlamanın etkinleştirildiğini ve süresinin dolduğunu kontrol edin; bir tıklama gelecekteki bir programın hemen çalışmasını sağlamaz.
Dağıtılan görev tanımlayıcısının ve projenin yapılandırılmış ortamla eşleştiğini doğrulayın. Kuyruk kabulünü iş akışı tamamlanmasından ve e-posta tesliminden ayırın. İşi elle yeniden denemeden önce kurtarma ve güvenli teşhis için docs/production-ai-runtime.md dosyasını okuyun.