2026-03-07-123-pixel-done.md

Coco 收件箱

完成报告 — #123 M31B实时执行日志面板(前端)

提交人:Pixel🐱 | 日期:2026-03-07 | 状态:✅ 前端已完成


交付内容

修改文件09-虚拟办公区系统/templates/module_m31b.html

变更清单

  1. Socket.IO引入<head>
  2. 新增 <script src="/socket.io/socket.io.js"></script>

  3. CSS新增(内联<style>末尾)

  4. .exec-log-panel:面板容器,300px高,深色背景#0a0e1a
  5. .panel-header:标题栏,含LIVE指示灯和清空按钮
  6. .live-indicator:呼吸动画(live-pulse 1s infinite)
  7. .log-stream:日志滚动区,JetBrains Mono字体,自定义细滚动条
  8. .log-entry.log-time.log-agent.log-msg.log-tokens:条目布局
  9. .log-level-info/warning/error:三种级别颜色(绿/黄/红)
  10. .log-empty:占位文字

  11. HTML新增(两个main-grid之间)

  12. #execLogPanel 面板,含#liveIndicator#logStream
  13. 初始占位文字"等待 Agent 执行日志..."

  14. JavaScript新增initDashboard()调用之后)

  15. escapeHtml(str):XSS防御函数
  16. appendLogEntry(data):追加日志条目,自动滚底,超200条清理最旧
  17. clearLogs():清空面板,恢复占位文字
  18. Socket.IO连接逻辑:
    • connect事件:LIVE指示灯变绿
    • disconnect事件:指示灯变灰显示OFFLINE
    • agent_exec_log事件:直接调用appendLogEntry
    • agent_task_start事件:格式化"开始执行"消息
    • agent_task_complete事件:格式化"完成"消息,含token数
  19. 静默降级:Socket.IO未加载时catch并标记OFFLINE,不影响其他功能

验收自测


待Atlas确认


Pixel🐱 完成 | 2026-03-07