Configuration

کانال تضمین کیفیت

Edit source

qa-channel یک انتقال پیام مصنوعیِ بسته‌بندی‌شده برای QA خودکار OpenClaw است. این یک کانال تولیدی نیست - وجود دارد تا همان مرز Plugin کانال را که انتقال‌های واقعی استفاده می‌کنند تمرین دهد، در حالی که وضعیت را قطعی و کاملا قابل بازرسی نگه می‌دارد.

چه کاری انجام می‌دهد

  • دستورزبان هدف در کلاس Slack:
    • dm:<user>
    • channel:<room>
    • group:<room>
    • thread:<room>/<thread>
  • گفت‌وگوهای مشترک channel: و group: برای عامل‌ها به‌عنوان نوبت‌های اتاق گروه/کانال نمایش داده می‌شوند، بنابراین همان سیاست پاسخ قابل مشاهده و مسیریابی ابزار پیام را که Discord، Slack، Telegram و انتقال‌های مشابه استفاده می‌کنند تمرین می‌دهند.
  • گذرگاه مصنوعی مبتنی بر HTTP برای تزریق پیام ورودی، ثبت رونوشت خروجی، ایجاد رشته، واکنش‌ها، ویرایش‌ها، حذف‌ها، و کنش‌های جست‌وجو/خواندن.
  • اجراکننده خودبررسی سمت میزبان که یک گزارش Markdown را در .artifacts/qa-e2e/ می‌نویسد.

پیکربندی

json
{  "channels": {    "qa-channel": {      "baseUrl": "http://127.0.0.1:43123",      "botUserId": "openclaw",      "botDisplayName": "OpenClaw QA",      "allowFrom": ["*"],      "pollTimeoutMs": 1000    }  }}

کلیدهای حساب:

  • enabled - کلید اصلی فعال/غیرفعال برای این حساب.
  • name - برچسب نمایشی اختیاری.
  • baseUrl - URL گذرگاه مصنوعی.
  • botUserId - شناسه کاربر ربات به سبک Matrix که در دستورزبان هدف استفاده می‌شود.
  • botDisplayName - نام نمایشی برای پیام‌های خروجی.
  • pollTimeoutMs - پنجره انتظار long-poll. عدد صحیح بین 100 و 30000.
  • allowFrom - فهرست مجاز فرستنده‌ها (شناسه‌های کاربر یا "*"). پیام‌های مستقیم و سیاست گروه‌های مجاز هر دو از این شناسه‌های فرستنده مصنوعی استفاده می‌کنند.
  • groupPolicy - سیاست اتاق مشترک: "open" (پیش‌فرض)، "allowlist"، یا "disabled".
  • groupAllowFrom - فهرست مجاز اختیاری فرستنده‌های اتاق مشترک. وقتی در حالت "allowlist" حذف شود، QA Channel به allowFrom بازمی‌گردد.
  • groups.<room>.requireMention - پیش از پاسخ‌دادن در یک اتاق گروه/کانال مشخص، منشن ربات را الزامی می‌کند. groups."*" مقدار پیش‌فرض را تنظیم می‌کند.
  • defaultTo - هدف جایگزین وقتی هیچ هدفی ارائه نشده باشد.
  • actions.messages / actions.reactions / actions.search / actions.threads - کنترل دسترسی ابزار به‌ازای هر کنش.

کلیدهای چندحسابی در سطح بالا:

  • accounts - رکورد بازنویسی‌های نام‌دار به‌ازای هر حساب، با کلید شناسه حساب.
  • defaultAccount - شناسه حساب ترجیحی وقتی چند حساب پیکربندی شده‌اند.

اجراکننده‌ها

خودبررسی سمت میزبان (یک گزارش Markdown زیر .artifacts/qa-e2e/ می‌نویسد):

bash
pnpm qa:e2e

این از طریق qa-lab مسیریابی می‌شود، گذرگاه QA داخل مخزن را شروع می‌کند، بخش runtime بسته‌بندی‌شده qa-channel را راه‌اندازی می‌کند، و یک خودبررسی قطعی اجرا می‌کند.

مجموعه سناریوهای کامل پشتیبانی‌شده توسط مخزن:

bash
pnpm openclaw qa suite

سناریوها را به‌صورت موازی در برابر مسیر QA gateway اجرا می‌کند. برای سناریوها، پروفایل‌ها، و حالت‌های ارائه‌دهنده، نمای کلی QA را ببینید.

سایت QA پشتیبانی‌شده توسط Docker (gateway + رابط اشکال‌زدای QA Lab در یک stack):

bash
pnpm qa:lab:up

سایت QA را می‌سازد، stack مبتنی بر Docker شامل gateway + QA Lab را شروع می‌کند، و URL مربوط به QA Lab را چاپ می‌کند. از آنجا می‌توانید سناریوها را انتخاب کنید، مسیر مدل را برگزینید، اجراهای جداگانه را راه‌اندازی کنید، و نتایج را زنده ببینید. اشکال‌زدای QA Lab از بسته Control UI ارسال‌شده جدا است.

مرتبط

Was this useful?