Files
my-project/config/openclaw/skills/skill-self-evolution-enhancer.bak/.learnings/ERRORS.md
T

214 lines
5.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Errors
Error logs and failure patterns for **skill-self-evolution-enhancer**.
**Categories**: timeout | context_overhead | missing_data | workflow_error
**Statuses**: pending | in_progress | resolved | wont_fix | promoted
## Status Definitions
| Status | Meaning |
|--------|---------|
| `pending` | Not yet addressed |
| `in_progress` | Actively being worked on |
| `resolved` | Issue fixed or workaround found |
| `wont_fix` | Decided not to address |
| `promoted` | Elevated to evolution rules |
## Error Entry Format
```markdown
## [ERR-YYYYMMDD-XXX] category
**Logged**: ISO-8601 timestamp
**Priority**: low | medium | high | critical
**Status**: pending
**Area**: 领域
### Summary
One-line description
### Details
Full context
### Root Cause
Likely cause if known
### Workaround
What was tried or could be tried
### Metadata
- Source: error_log | user_report | test
- Tags: tag1, tag2
- Recurrence-Count: 1
---
```
## [ERR-20260326-001] cron_timeout_context_overhead
**Logged**: 2026-03-26T04:14:00Z
**Priority**: high
**Status**: resolved
**Area**: cron任务调度
### Summary
cron agentTurn timeout设置120s但实际超时,原因是session上下文大(205k)导致agent处理慢
### Details
- 脚本 `evolution-report.sh` 本身执行仅需 4秒
- 但 cron agentTurn 报告超时 120028ms(连续3次)
- session 状态显示: `unknown/205k (?%)` 说明上下文很大
- 日志分析显示脚本实际在 4s 内完成
### Root Cause
timeoutSeconds 设置的是 cron job 的硬性超时,但 OpenClaw agent 处理大上下文时初始化+推理本身就耗时很长,与实际脚本执行时间无关
### Workaround
将 `timeoutSeconds` 从 120 降到 60(脚本只需4s,60s足够让agent初始化完成)
已对 `dbd84977`(GitHub进化猎手)和 `b0afa4db`(日志清理)应用修复
### Metadata
- Source: heartbeat_analysis
- Tags: cron, timeout, context-size, self-healing
- Recurrence-Count: 3
- See Also: HEARTBEAT.md
---
## [ERR-20260326-002] resource_guard_cpu_parsing_bug
**Logged**: 2026-03-26T09:25:00Z
**Priority**: high
**Status**: resolved
**Area**: 资源监控
### Summary
资源守卫脚本CPU解析bug:int($2)对"4.5"返回0,显示95%而非5%
### Details
- `top -bn1 | grep "Cpu(s)"` 输出: `4.5 us, 0.0 sy, 0.0 ni, 95.5 id`
- 脚本用 `awk '{print int($2)}'` 取字段2,得到 `4.5`,但 `int("4.5")` 在awk中返回 0
- 导致 CPU 显示为 idle 字段值(95%),实际是空闲95%,使用仅5%
### Root Cause
awk int()函数对含小数点的字符串处理有误,且脚本逻辑不对:应该用 idle 计算使用率,而非直接取us字段
### Workaround
修改为 `cpu_usage=$(top -bn1 | grep "Cpu(s)" | awk '{print int($8)}')` 然后 `cpu_usage=$((100 - cpu_usage))`
### Metadata
- Source: heartbeat_false_alarm
- Tags: monitoring, awk, parsing
- Recurrence-Count: 1
- File: /home/yh6788/.openclaw/scripts/resource-guard.sh
---
## [ERR-20260326-002] camoufox_browse_headless_crash
**Logged**: 2026-03-26T14:01:00Z
**Priority**: high
**Status**: resolved
**Area**: 浏览器自动化
### Summary
camoufox browse.py 硬编码 headless=False,在服务器上会卡住等待用户输入
### Details
- 原脚本最后有 input("Press Enter to close..."),headless模式下无法交互
- 原脚本没有 headless 参数选项
- camoufox 安装在 ~/.local/lib/python3.13/site-packages/,不在 venv 里
### Root Cause
脚本设计假设在有GUI环境运行,未考虑服务器无头模式
### Workaround
修复后的 browse.py:
1. 添加 --headless 参数
2. 无DISPLAY时自动启用headless
3. headless模式下跳过等待用户输入
4. 添加 USER_SITE 路径到 sys.path
### Metadata
- Source: self_discovery
- Tags: camoufox, headless, server
- Recurrence-Count: 1
- See Also: camoufox/scripts/browse.py
---
## [ERR-20260327-001] log_cleaner_timeout
**Logged**: 2026-03-27T18:35:00Z
**Priority**: high
**Status**: resolved
**Area**: cron任务调度
### Summary
日志清理脚本本身只需1.3秒,但cron timeout 60秒仍超时
### Root Cause
同GitHub进化猎手问题:agent初始化(含session加载、context初始化)耗时远超脚本执行时间
### Workaround
将timeout从60s降到30s,脚本仅需1.3s,30s足够agent初始化完成
### Metadata
- Source: heartbeat_check
- Tags: cron, timeout, agent-initialization
- Recurrence-Count: 2
- See Also: ERR-20260326-001
---
## [ERR-20260327-001] cron_timeout_agent_context_overhead_v2
**Logged**: 2026-03-27T03:05:00Z
**Priority**: high
**Status**: resolved
**Area**: cron任务调度
### Summary
降低cron timeout反而导致更多超时:agent加载205k上下文需要60-120s
### Details
- 脚本本身执行只需 1.2 秒
- 但 agent 加载 205k 上下文需要 60-120s
- 60s timeout: 持续超时
- 180s timeout: 足够agent初始化完成
### Root Cause
OpenClaw agentTurn timeout 指的是 agent 整个执行周期,不是脚本执行时间。agent 需要时间初始化大上下文 session。
### Workaround
对于简单脚本任务,timeout 应设置为 120-300s,保证 agent 有足够时间初始化后再执行脚本
### Metadata
- Source: heartbeat_analysis
- Tags: cron, timeout, context-size, agent-overhead
- Recurrence-Count: 2
- See Also: ERR-20260326-001
---
## 2026-03-27 日志清理超时问题
**问题**: log-cleaner.sh 连续2次 timeout(cron 设置 60s)
**根因**: 逐文件循环 `stat` + 条件判断,大目录极慢
**解决方案**: 改用 `find -mtime +N -print -delete` 批量操作,timeout 提升至 120s
**进化**: 脚本已优化,cron 已更新
## 日志清理脚本超时问题 (2026-03-27)
**问题**: 日志清理cron任务连续2次超时(timeout)
**根因**: 脚本扫描目录包含node_modules等大目录,导致1.5GB数据遍历超时
**解决方案**:
- 排除目录:node_modules、.cache、.npm、.pnpm-store、.git
- 聚焦日志目录:workspace/sleep-learning、logs、token-monitor/logs
- 不再扫描整个workspace和openclaw根目录
**验证**: 修复后执行耗时0秒,正常完成