# Push Mechanism Pitfalls

## Issue 1: push_to_qq.sh 超时阻塞

**症状**：
```
BLOCKED: Command timed out without user response. The user has NOT consented to this action.
```

**原因**：脚本等待用户确认时超时

**解决方法**：
1. 重试一次 `bash ~/.hermes/scripts/push_to_qq.sh "消息内容"`
2. 改用 python3 qq_push.py 脚本（如果存在）
3. 将消息输出为 final response

## Issue 2: hermes send 跳过

**症状**：
```
Skipped send_message to qqbot:B1EF50442496D57C1B4F3890501C34C2. This cron job will already auto-deliver its final response to that same target.
```

**原因**：会话上下文有 delivery target，hermes send 会跳过

**解决方法**：
1. 直接用 QQ Bot API（见 `scripts/qq_push.py`）
2. 将消息输出为 final response

## Issue 3: python脚本不存在

**症状**：
```
python3: can't open file '/home/openclaw/.hermes/skills/trading/signal-confirmation-templates/scripts/qq_push.py': [Errno 2] No such file or directory
```

**原因**：python脚本路径可能不存在

**解决方法**：
1. 使用 `bash ~/.hermes/scripts/push_to_qq.sh`
2. 将消息输出为 final response

## 最佳实践

1. **优先使用 push_to_qq.sh**：这是主要推送方式
2. **如果被阻塞，重试一次**：有时是临时问题
3. **如果仍然失败，输出为 final response**：这是最后的备用方案
4. **不要反复尝试同一方法**：如果一种方法失败，立即尝试下一种
5. **检查delivery target**：如果会话有delivery target，hermes send会跳过，直接用push_to_qq.sh或输出为final response

## 信号处理流程（用户确认 2026-07-04）

```
收到信号 → 分类(A/B/C/D)
- D类(仓位变动<5%): 静默跳过，不推送不记录不统计
- A/B/C类: 格式化模板 → push_to_qq.sh → 一句话确认TG
- 里程碑事件: 即使<5%也推QQ精简模板
```

**用户明确要求**：不要做D类信号的统计表格、趋势分析或演变记录。只在需要开仓/加仓时才推QQ。

## 常见错误

### 错误1：在TG群做D类信号统计
**错误**：对D类信号做演变表格、趋势分析
**正确**：D类信号完全跳过，不做任何统计

### 错误2：反复尝试失败的方法
**错误**：push_to_qq.sh失败后反复重试
**正确**：失败一次后立即尝试下一种方法（python脚本或输出为final response）

### 错误3：忽略delivery target
**错误**：使用hermes send但会话有delivery target导致跳过
**正确**：检查delivery target，如果有则直接用push_to_qq.sh或输出为final response
