mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-17 02:31:36 +00:00
* test(qa): migrate channel command scenarios * test(qa): distinguish portable command headings * test(qa): preserve canonical scenario ownership
52 lines
1.8 KiB
YAML
52 lines
1.8 KiB
YAML
title: Telegram help command reply
|
|
|
|
scenario:
|
|
id: telegram-help-command
|
|
surface: channel-framework
|
|
category: channel-framework.channel-actions-commands-and-approvals
|
|
coverage:
|
|
primary:
|
|
- channels.native-commands
|
|
objective: Verify the Telegram help command returns the concise command guide.
|
|
successCriteria:
|
|
- The help command is accepted in the Telegram group command path.
|
|
- The reply advertises new-session and full command-list commands.
|
|
codeRefs:
|
|
- src/auto-reply/reply/commands-core.ts
|
|
- extensions/qa-lab/src/live-transports/telegram/adapter.runtime.ts
|
|
execution:
|
|
kind: flow
|
|
channel: telegram
|
|
summary: Send Telegram help and verify the concise native command guide.
|
|
config:
|
|
command: help
|
|
expectedAny:
|
|
- /new
|
|
- /commands for full list
|
|
|
|
flow:
|
|
steps:
|
|
- name: help returns the concise command guide
|
|
actions:
|
|
- resetTransport: true
|
|
- set: startIndex
|
|
value:
|
|
expr: "state.getSnapshot().messages.filter((message) => message.direction === 'outbound').length"
|
|
- sendInbound:
|
|
conversation: { id: telegram-command-room, kind: channel }
|
|
senderId: qa-command-operator
|
|
senderName: QA Command Operator
|
|
text:
|
|
expr: "transport.id === 'telegram' ? `/${config.command}@openclaw` : `/${config.command}`"
|
|
- waitForOutbound:
|
|
conversation: { id: telegram-command-room, kind: channel }
|
|
sinceIndex: { ref: startIndex }
|
|
textIncludes: { expr: "config.expectedAny[0]" }
|
|
timeoutMs: 60000
|
|
saveAs: reply
|
|
- assert:
|
|
expr: "config.expectedAny.every((needle) => reply.text.includes(needle))"
|
|
message:
|
|
expr: "`help reply missing expected text: ${reply.text}`"
|
|
detailsExpr: reply.text
|