Files
tori/doc/todo.md
Fam Zheng 2df4e12d30 Agent loop state machine refactor, unified LLM interface, and UI improvements
- Rewrite agent loop as Planning→Executing(N)→Completed state machine with
  per-step context isolation to prevent token explosion
- Split tools and prompts by phase (planning vs execution)
- Add advance_step/save_memo tools for step transitions and cross-step memory
- Unify LLM interface: remove duplicate types, single chat_with_tools path
- Add UTF-8 safe truncation (truncate_str) to prevent panics on Chinese text
- Extract CreateForm component, add auto-scroll to execution log
- Add report generation with app access URL, non-blocking title generation
- Add timer system, file serving, app proxy, exec module
- Update Dockerfile with uv, deployment config

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 22:35:33 +00:00

1.1 KiB
Raw Blame History

context compaction

rag / kb

template


代码啰嗦/可精简

  • agent.rsNewRequirementComment 分支里「设 final_status → 更新 DB status → broadcast WorkflowStatusUpdate → 查 all_steps → generate_report → 更新 report → broadcast ReportReady」几乎相同可抽成共用函数finish_workflow_and_reportvenv 创建/检查create_dir_all + .venv 存在 + uv venv两处重复可抽成 helper。
  • api/projects.rsworkflows.rstimers.rsdb_errApiResult<T> 定义重复,可提到 api/mod.rs 或公共模块。
  • WorkflowView.vuehandleWsMessage 里多处 workflow.value && msg.workflow_id === workflow.value.id,可先取 const wf = workflow.value 并统一判断;ReportReady 分支里 workflow.value = { ...workflow.value, status: workflow.value.status } 无实际效果,可删或改成真正刷新。
  • PlanSection.vue / ExecutionSection.vue:都有 expandedSteps(Set)、toggleStep、以及 status→icon/label 的映射,可考虑抽成 composable 或共享 util 减少重复。