vercel-queues

作者: sentry

使用 @vercel/queue 在推播與輪詢消費者之間建置與操作 Vercel Queues。當使用者詢問「vercel queues」、「@vercel/queue」、「queue/v2beta」等內容時使用。

npx skills add https://github.com/getsentry/junior --skill vercel-queues

Implement queue producers and consumers using Vercel Queues docs and SDK contracts.

Step 1: Classify the request

Choose one path before writing code:

Request typePrimary reference
First-time setup, minimal producer + consumerreferences/quickstart.md
SDK usage, options, retries, transport behaviorreferences/sdk.md
API-level integration (custom clients, non-SDK consumers)references/api.md
Delivery semantics and architecture decisionsreferences/concepts.md
Polling workers and mixed push/poll designreferences/poll-mode.md
Local setup and debuggingreferences/local-dev.md

If the task spans multiple categories, read only the relevant files above.

Step 2: Apply core guardrails

  1. Design consumers as idempotent because delivery is at-least-once.
  2. Pick push mode by default on Vercel unless the task explicitly needs scheduled/batched/client-driven polling.
  3. For poll mode, pin an explicit region and use the same region for send and receive.
  4. Use bounded retry strategy for poison messages (acknowledge: true after threshold).
  5. Keep topic and consumer names within ^[A-Za-z0-9_-]+$.

Step 3: Implement with minimal surface

  1. Prefer top-level send and handleCallback for standard Vercel push mode.
  2. Use QueueClient only when you need custom options (transport, token, headers, deploymentId).
  3. Use PollingQueueClient for poll mode (receive) and handle { ok: false, reason: "empty" } explicitly.
  4. Keep vercel.json trigger mapping explicit and scoped to the consumer route.

Step 4: Validate behavior

  1. Verify producer returns messageId and treat nullable messageId as acceptable deferred acceptance.
  2. Verify consumer behavior across success, retry, and poison-message paths.
  3. Verify visibility timeout assumptions match workload duration.
  4. Verify region assumptions in poll mode.

Step 5: Troubleshoot from first principles

  1. Authentication issues: check OIDC/token source and env loading.
  2. Missing deliveries: verify topic name, trigger registration, and region alignment.
  3. Duplicate processing: verify idempotency key strategy and consumer idempotency.
  4. Backlog growth: inspect consumer throughput, retry policy, and visibility timeout.

來自 sentry 的更多技能

generate-frontend-forms
sentry
使用 Sentry 新表單系統建立表單的指南。適用於實作表單、表單欄位、驗證或自動儲存功能時使用。
official
sentry-snapshots-cocoa
sentry
完整的 Sentry Snapshots 設定,適用於 Apple/Cocoa 專案。當被要求「設定 SnapshotPreviews」、「設定 Apple 快照測試」、「上傳 Apple 快照至…」時使用。
official
architecture-review
sentry
員工級別的程式碼庫健康檢查。找出單體模組、靜默失敗、型別安全漏洞、測試覆蓋缺口,以及LLM友善性問題。
official
linear-type-labeler
sentry
根據每個問題的標題與描述內容,從 Sentry 工作區的標籤分類法中分類 Linear 問題,並套用對應的類型標籤。
official
sentry-flutter-sdk
sentry
完整的 Sentry SDK 設定,適用於 Flutter 和 Dart。當被要求「為 Flutter 加入 Sentry」、「安裝 sentry_flutter」、「在 Dart 中設定 Sentry」或設定錯誤…時使用。
official
sentry-svelte-sdk
sentry
完整的 Sentry SDK 設定,適用於 Svelte 和 SvelteKit。當被要求「將 Sentry 加入 Svelte」、「將 Sentry 加入 SvelteKit」、「安裝 @sentry/sveltekit」或進行設定時使用…
official
vercel-react-best-practices
sentry
來自 Vercel Engineering 的 React 與 Next.js 效能優化指南。此技能應在撰寫、審查或重構 React/Next.js… 時使用。
official
sentry-tanstack-start-sdk
sentry
完整的 Sentry SDK 設定,適用於 TanStack Start React。當被要求「將 Sentry 加入 TanStack Start」、「安裝 @sentry/tanstackstart-react」或設定錯誤…時使用。
official