Skip to main content
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/.

Конфігурація

Ключі облікового запису:
  • enabled — головний перемикач для цього облікового запису.
  • name — необов’язкова відображувана мітка.
  • baseUrl — URL синтетичної шини. Після встановлення цього значення обліковий запис вважається налаштованим.
  • 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/):
Ця команда спрямовує виконання через qa-lab, запускає внутрішню шину QA з репозиторію, завантажує зріз середовища виконання qa-channel і виконує детерміновану самоперевірку. Повний набір сценаріїв на основі репозиторію:
Запускає сценарії паралельно в смузі QA Gateway. Сценарії, профілі та режими провайдерів описано в огляді QA. Сайт QA на основі Docker (Gateway + інтерфейс налагодження QA Lab в одному стеку):
Збирає сайт QA, запускає стек Gateway + QA Lab на основі Docker і виводить URL QA Lab. Там можна вибирати сценарії, смугу моделі, запускати окремі виконання та спостерігати за результатами наживо. Налагоджувач QA Lab відокремлений від пакетованого комплекту Control UI.

Пов’язані матеріали