agent-Specialization/utils
JOJO d9bd599c1c feat(runtime): Gateway 独立启动与公共协议落地(改造第 0-3 步)
- 闭环修复:审批 task_id 显式化(N2)、通知回退路径门闸 finally 释放(N1)、
  personalization 原子写(S10,公共 atomic_write_json)
- server.tasks 拆解:__init__ 轻量化、Blueprint/路由移至 blueprint.py/web.py,
  app_legacy 装配点惰性挂载;models.py 循环依赖死导入移除
- 执行链 Web 解耦:emit_event/run_background 安全包装(socketio 未绑定静默),
  清除 4 处裸 socketio.emit(含 task_stopped 先写事件流再推送的顺序修复)
- RuntimeService 补建对话下沉:chat 任务无 conversation_id 时服务层装配,
  客户端无需复制 Web 两步流程
- 事件协议:get_task_events 返回 meta.window_start 缺口检测水位
- 验收:test_runtime_standalone_lifecycle 子进程隔离(config import 固化问题),
  独立启动 + 协议全链路 + 审批语义全绿;全量 74 测试失败恰为 4 项存量
2026-09-07 23:00:15 +08:00
..
api_client feat(api): 支持 x-opencode-session 会话头与 Astrion User-Agent 2026-09-07 18:50:29 +08:00
context_manager feat(stats): token 统计新增缓存命中追踪与命中率展示 2026-08-29 12:43:14 +08:00
conversation_manager fix(security): 第二轮全量 API 审计修复(角色穿越/宿主 GUI/限流收口) 2026-09-02 19:37:34 +08:00
tool_result_formatter feat(chat): 行内引用胶囊(inline citations) 2026-09-01 22:31:37 +08:00
__init__.py release: sync from main @0f9fd1b2 (2026-08-22) 2026-08-22 12:27:19 +08:00
api_client.py release: sync from main @0f9fd1b2 (2026-08-22) 2026-08-22 12:27:19 +08:00
atomic_io.py feat(runtime): Gateway 独立启动与公共协议落地(改造第 0-3 步) 2026-09-07 23:00:15 +08:00
host_workspace_debug.py release: sync from main @0f9fd1b2 (2026-08-22) 2026-08-22 12:27:19 +08:00
log_rotation.py release: sync from main @0f9fd1b2 (2026-08-22) 2026-08-22 12:27:19 +08:00
logger.py release: sync from main @0f9fd1b2 (2026-08-22) 2026-08-22 12:27:19 +08:00
media_store.py feat(i18n): 后端用户可见消息国际化(zh/en 双语 + ui_locale 偏好持久化) 2026-08-29 07:58:29 +08:00
perf_log.py release: sync from main @0f9fd1b2 (2026-08-22) 2026-08-22 12:27:19 +08:00
terminal_factory.py release: sync from main @0f9fd1b2 (2026-08-22) 2026-08-22 12:27:19 +08:00
token_usage.py feat(stats): token 统计新增缓存命中追踪与命中率展示 2026-08-29 12:43:14 +08:00
tool_result_formatter.py release: sync from main @0f9fd1b2 (2026-08-22) 2026-08-22 12:27:19 +08:00