Configuration
Kanał QA
qa-channel to lokalny dla repozytorium syntetyczny transport wiadomości do zautomatyzowanej kontroli jakości OpenClaw (extensions/qa-channel, pakiet prywatny, wykluczony z instalacji dystrybucyjnych). Nie jest to kanał produkcyjny — służy do testowania tej samej granicy pluginu kanału, której używają rzeczywiste transporty, przy zachowaniu deterministycznego i w pełni kontrolowalnego stanu.
Działanie
- Gramatyka celów klasy Slack:
dm:<user>channel:<room>group:<room>thread:<room>/<thread>
- Współdzielone konwersacje
channel:igroup:są przedstawiane agentom jako tury pokojów grupowych/kanałowych, dzięki czemu testują tę samą politykę routingu widocznych odpowiedzi i narzędzi wiadomości, której używają Discord, Slack, Telegram i podobne transporty. - Syntetyczna magistrala oparta na HTTP do wstrzykiwania wiadomości przychodzących, przechwytywania transkrypcji wychodzących, tworzenia wątków, reakcji, edycji, usuwania oraz operacji wyszukiwania i odczytu.
- Uruchamiany po stronie hosta moduł samokontroli, który zapisuje raport Markdown w
.artifacts/qa-e2e/.
Konfiguracja
{ "channels": { "qa-channel": { "baseUrl": "http://127.0.0.1:43123", "botUserId": "openclaw", "botDisplayName": "OpenClaw QA", "allowFrom": ["*"], "pollTimeoutMs": 1000 } }}Klucze konta:
enabled— główny przełącznik tego konta.name— opcjonalna etykieta wyświetlana.baseUrl— adres URL syntetycznej magistrali. Konto jest uznawane za skonfigurowane po ustawieniu tej wartości.botUserId— syntetyczny identyfikator użytkownika bota używany w gramatyce celów (domyślnie:openclaw).botDisplayName— nazwa wyświetlana dla wiadomości wychodzących (domyślnie:OpenClaw QA).pollTimeoutMs— okno oczekiwania długiego odpytywania. Liczba całkowita od 100 do 30000 (domyślnie: 1000).allowFrom— lista dozwolonych nadawców (identyfikatory użytkowników lub"*"; domyślnie:["*"]). Wiadomości prywatne zawsze używają politykiopen; polityka grupowa z listą dozwolonych nadawców również używa tych syntetycznych identyfikatorów nadawców.groupPolicy— polityka współdzielonego pokoju:"open"(domyślnie),"allowlist"lub"disabled".groupAllowFrom— opcjonalna lista dozwolonych nadawców we współdzielonych pokojach. Jeśli zostanie pominięta przy polityce"allowlist", kanał QA użyje wartościallowFrom.groups.<room>.requireMention— wymaga wzmianki o bocie przed odpowiedzią w określonym pokoju grupowym/kanałowym (domyślnie: false).groups."*"ustawia wartość domyślną; ustawieniatools/toolsBySenderdla poszczególnych pokojów zastępują politykę narzędzi.defaultTo— cel zapasowy, gdy nie podano żadnego.actions.messages/actions.reactions/actions.search/actions.threads— kontrola dostępu do narzędzi dla poszczególnych operacji.
Klucze obsługi wielu kont na najwyższym poziomie:
accounts— rekord nazwanych nadpisań dla poszczególnych kont, indeksowany według identyfikatora konta.defaultAccount— preferowany identyfikator konta, gdy skonfigurowano wiele kont.
Moduły uruchamiające
Samokontrola po stronie hosta (zapisuje raport Markdown w .artifacts/qa-e2e/):
pnpm qa:e2ePolecenie kieruje wykonanie przez qa-lab, uruchamia magistralę QA z repozytorium, inicjuje wycinek środowiska uruchomieniowego qa-channel i przeprowadza deterministyczną samokontrolę.
Pełny zestaw scenariuszy oparty na repozytorium:
pnpm openclaw qa suiteUruchamia scenariusze równolegle w ścieżce Gateway QA. Informacje o scenariuszach, profilach i trybach dostawców zawiera omówienie QA.
Witryna QA oparta na Dockerze (Gateway i interfejs debugera QA Lab w jednym stosie):
pnpm qa:lab:upBuduje witrynę QA, uruchamia oparty na Dockerze stos Gateway i QA Lab oraz wyświetla adres URL QA Lab. Następnie można wybierać scenariusze, ścieżkę modelu, uruchamiać poszczególne przebiegi i obserwować wyniki na żywo. Debuger QA Lab jest oddzielony od dostarczanego pakietu interfejsu Control UI.
Powiązane materiały
- Omówienie QA — cały stos, adaptery transportu, tworzenie scenariuszy
- Macierz QA — przykładowy moduł uruchamiający dla aktywnego transportu, który steruje rzeczywistym kanałem
- Parowanie
- Grupy
- Omówienie kanałów