---
read_when:
    - در حال متصل‌کردن انتقال QA مصنوعی به اجرای آزمون محلی یا CI هستید
    - به سطح پیکربندی qa-channel همراه‌شده نیاز دارید
    - در حال بهبود تدریجی خودکارسازی تضمین کیفیت سرتاسری هستید
summary: Plugin کانال مصنوعی در ردهٔ Slack برای سناریوهای تضمین کیفیت قطعی OpenClaw
title: کانال تضمین کیفیت
x-i18n:
    generated_at: "2026-07-27T14:57:06Z"
    model: gpt-5.6
    postprocess_version: locale-links-v1
    prompt_version: 32
    provider: openai
    source_hash: a43c35e197116a6bd44b238010eb508aed23dea99ab872d10e6fc853b5f4d4a7
    source_path: channels/qa-channel.md
    workflow: 16
---

`qa-channel` یک انتقال پیام مصنوعی و محلیِ مخزن برای QA خودکار OpenClaw است (`extensions/qa-channel`، بستهٔ خصوصی، حذف‌شده از نصب‌های بسته‌بندی‌شده). این یک کانال عملیاتی نیست؛ برای به‌کارگیری همان مرز 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` - نشانی اینترنتی گذرگاه مصنوعی. پس از تنظیم این مقدار، حساب پیکربندی‌شده محسوب می‌شود.
- `botUserId` - شناسهٔ کاربر ربات مصنوعی که در دستور زبان مقصد استفاده می‌شود (پیش‌فرض: `openclaw`).
- `botDisplayName` - نام نمایشی پیام‌های خروجی (پیش‌فرض: `OpenClaw QA`).
- `pollTimeoutMs` - بازهٔ انتظار نظرسنجی طولانی. عدد صحیحی بین 100 و 30000 (پیش‌فرض: 1000).
- `allowFrom` - فهرست مجاز فرستندگان (شناسه‌های کاربر یا `"*"`؛ پیش‌فرض: `["*"]`). پیام‌های مستقیم
  همیشه از سیاست `open` پیروی می‌کنند؛ سیاست گروه مجازشده نیز از همین شناسه‌های
  مصنوعی فرستنده استفاده می‌کند.
- `groupPolicy` - سیاست اتاق مشترک: `"open"` (پیش‌فرض)، `"allowlist"` یا
  `"disabled"`.
- `groupAllowFrom` - فهرست مجاز اختیاری فرستندگان اتاق مشترک. اگر در حالت
  `"allowlist"` حذف شود، QA Channel به `allowFrom` بازمی‌گردد.
- `groups.<room>.requireMention` - الزام به منشن‌کردن ربات پیش از پاسخ‌دادن در یک
  اتاق گروه/کانال مشخص (پیش‌فرض: false). `groups."*"` مقدار پیش‌فرض را تعیین می‌کند؛
  `tools` / `toolsBySender` مختص هر اتاق، بازنویسی‌های سیاست ابزار را تعیین می‌کنند.
- `defaultTo` - مقصد جایگزین هنگامی که هیچ مقصدی ارائه نشده است.
- `actions.messages` / `actions.reactions` / `actions.search` / `actions.threads` - دروازه‌بندی ابزار برای هر عملیات.

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

- `accounts` - رکورد بازنویسی‌های نام‌گذاری‌شدهٔ مختص هر حساب، با شناسهٔ حساب به‌عنوان کلید.
- `defaultAccount` - شناسهٔ حساب ترجیحی هنگامی که چند حساب پیکربندی شده‌اند.

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

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

```bash
pnpm qa:e2e
```

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

مجموعهٔ کامل سناریوهای مبتنی بر مخزن:

```bash
pnpm openclaw qa suite
```

سناریوها را به‌صورت موازی در برابر مسیر Gateway مربوط به QA اجرا می‌کند. برای سناریوها، پروفایل‌ها و حالت‌های ارائه‌دهنده، [نمای کلی QA](/fa/concepts/qa-e2e-automation) را ببینید.

سایت QA مبتنی بر Docker ‏(Gateway و رابط کاربری اشکال‌زدایی QA Lab در یک پشته):

```bash
pnpm qa:lab:up
```

سایت QA را می‌سازد، پشتهٔ Gateway و QA Lab مبتنی بر Docker را راه‌اندازی می‌کند و نشانی اینترنتی QA Lab را چاپ می‌کند. از آنجا می‌توان سناریوها را انتخاب کرد، مسیر مدل را برگزید، اجراهای جداگانه را آغاز کرد و نتایج را به‌صورت زنده مشاهده کرد. اشکال‌زدای QA Lab از بستهٔ Control UI منتشرشده جدا است.

## مرتبط

- [نمای کلی QA](/fa/concepts/qa-e2e-automation) - پشتهٔ کلی، آداپتورهای انتقال، پروفایل‌های Matrix و نگارش سناریو
- [جفت‌سازی](/fa/channels/pairing)
- [گروه‌ها](/fa/channels/groups)
- [نمای کلی کانال‌ها](/fa/channels)
