channel-forward-parity

bởi vercel

Kiểm tra tính tương đồng của tuyến webhook đối với các thay đổi trong phân phối kênh: đảm bảo các đường dẫn đầu cuối ghi log, ghi lại lastForward, phân loại lỗi và làm mới các URL cổng sandbox đã lỗi thời.

npx skills add https://github.com/vercel-labs/vercel-openclaw --skill channel-forward-parity

Channel Forward Parity

Use this before modifying any channel webhook route or the shared drain-channel workflow.

Source Files To Audit

  • src/server/channels/last-forward.ts
  • src/server/workflows/channels/drain-channel-workflow.ts
  • src/app/api/channels/slack/webhook/route.ts
  • src/app/api/channels/telegram/webhook/route.ts
  • src/app/api/channels/discord/webhook/route.ts
  • src/app/api/channels/whatsapp/webhook/route.ts
  • src/app/api/channels/summary/route.ts
  • src/server/admin/why-not-ready.ts

Required Output

Produce a table:

ChannelBranchLogs eventUpdates lastForwardClassificationStale URL refreshEvidence

Also include correlation coverage:

ChannelBranchrequestId/deliveryId propagatedworkflowRunId propagatedLogs eventUpdates lastForwardClassificationStale URL refreshEvidence

Rules

  • Every delivery attempt must update lastForward.
  • Every skip/reject branch must log a structured reason.
  • Workflow forwarding already records lastForward; do not double-record above it.
  • Treat route-ready, native-accepted, and user-visible-reply separately.
  • Do not add info-level logs on hot polling paths unless operationally necessary; ring-buffer eviction hides evidence.
  • Never add export const runtime = "nodejs" to route handlers.
  • For workflow handoff branches, verify that channels.<ch>_workflow_started, channels.forward_attempt, and channels.forward_outcome can be correlated by requestId/deliveryId and workflowRunId when available.
  • If npx workflow cannot inspect the run, parity evidence must fall back to Vercel logs plus /api/admin/logs.
  • Do not accept "workflow started" as proof of native acceptance; require forward attempt/outcome or user-visible reply evidence.
  • Do not accept npx sandbox failure as sandbox-unreachable until the app admin SSH/exec fallback has been attempted or marked unavailable.
  • Verify project targeting before trusting vercel, npx workflow, or npx sandbox output. If .vercel/project.json points at a different release, require explicit project/team/deployment targeting evidence.

Current Audit Seeds

  • Check Slack fast-path fetch-exception branches for recordChannelLastForward coverage.
  • Check Telegram unauthorized, invalid JSON, and dedup branches for structured logs where operator evidence is needed.
  • Check WhatsApp duplicate/skip branches for structured logs and clear classifications.
  • Check every sandbox-not-listening branch for exactly one stale-port refresh per request.

Thêm skills từ vercel

benchmark-sandbox
vercel
Chạy các kịch bản đánh giá vercel-plugin trong Vercel Sandboxes thay vì các bảng WezTerm cục bộ. Cung cấp các microVM tạm thời với Claude Code và plugin được cài đặt sẵn,…
official
emil-design-eng
vercel
Kỹ năng này mã hóa triết lý của Emil Kowalski về trau chuốt giao diện người dùng, thiết kế thành phần, quyết định hoạt ảnh và những chi tiết vô hình giúp phần mềm mang lại cảm giác tuyệt vời.
official
vercel-react-best-practices
vercel
Hướng dẫn tối ưu hiệu suất React và Next.js từ Vercel Engineering. Kỹ năng này nên được sử dụng khi viết, xem xét hoặc tái cấu trúc mã React/Next.js…
official
vercel-react-best-practices
vercel
Hướng dẫn tối ưu hiệu suất React và Next.js từ Vercel Engineering. Kỹ năng này nên được sử dụng khi viết, xem xét hoặc tái cấu trúc mã React/Next.js…
official
write-guide
vercel
Tạo một hướng dẫn kỹ thuật dạy một trường hợp sử dụng thực tế thông qua các ví dụ tiến dần. Các khái niệm chỉ được giới thiệu khi người đọc cần đến chúng.
official
release
vercel
Phát hành vercel-plugin — chạy các cổng, tăng phiên bản, tạo tạo phẩm, commit và push. Sử dụng khi được yêu cầu "phát hành", "ship", "tăng và push", hoặc "cắt một bản phát hành".
official
deepsec
vercel
Chạy DeepSec trên bản checkout dự án Vercel từ dev3000. Sử dụng để thiết lập DeepSec một chạm, khởi tạo ngữ cảnh dự án, xử lý lần đầu có giới hạn, và…
official
backport-pr
vercel
Backport một pull request Next.js đã được merge từ canary sang một nhánh phát hành trước đó như next-16-2. Sử dụng khi người dùng yêu cầu backport, cherry-pick, hoặc mở một…
official