新增: 批次工作落地(推进链/评估闭环/事件总线/并发/加固) + 技术债清理 + 文档整理
后端: - 工作流推进链(D-03):advance_task/状态机/闸门走 df-nodes Node trait,conditions 条件引擎扩展 - 想法评估闭环:启发式评分+对抗评估,df-ideas/scoring + df-storage/idea_eval_repo + idea 前端打通 - 全局事件数据总线:df-ai/context+context_helpers+augmentation 跨模块解耦 - AI planner/plan_hint/intent:aichat B 路线并行多轮基础 - patch_file 加固(TD-03/04):读改写整体锁防 lost update,expected_hash 合约闭环 - 压缩超时兜底(F-15 卡死根治) - F-09 多会话并发:LlmConcurrency per-conv + streamingGuard 前端守护 + verify 脚本 - 知识注入 DRY/skills/audit 扩展 清理: - aichat 技术债(误报 allow/死导入/过时注释 30 项) - URGENT.md 删除(11 项加急全解决/迁 todo) - 文档整理(todo/待决策/待审查/ARCHITECTURE/INDEX + 总线/技术债审查新文档)
This commit is contained in:
@@ -103,11 +103,15 @@ fn system_prompt_parts(lang: &str) -> (&'static str, &'static str, &'static str)
|
||||
}
|
||||
}
|
||||
|
||||
/// 构建系统提示词(环境信息 + 固定前缀 + 当前项目/任务上下文)
|
||||
/// 构建系统提示词(环境信息 + 固定前缀 + 当前项目/任务**全局清单**)
|
||||
///
|
||||
/// 本函数注入"全貌"清单:最近 20 项目 + 20 任务的 name/status/description(无 path),
|
||||
/// 供 LLM 知道当前存在哪些实体(非精准引用)。
|
||||
///
|
||||
/// **被@实体的精准投影**(含 path 脱敏、剥 frontmatter 的 skill 正文)由 chat.rs 的
|
||||
/// augmentation 层(`ResolverRegistry::resolve_all` + `build_augmentation_segment`)处理,
|
||||
/// 非 build_system_prompt 职责 —— 两套并行:全局清单(全貌)+ augmentation(用户本次引用)。
|
||||
///
|
||||
/// UX-10 §1.4: 用户在输入框 @ 引用实体时插入 `[类型: 名]` 标记(项目/任务)。
|
||||
/// 项目上下文已在下方注入,任务上下文本函数新增注入,使 LLM 能解析用户消息中的
|
||||
/// `[项目: xxx]` / `[任务: xxx]` 标记并对齐到真实实体(名称+状态+描述)。
|
||||
/// 注入克制:仅各取最近 20 条,防 context 膨胀。
|
||||
pub(crate) async fn build_system_prompt(state: &AppState, lang: &str) -> String {
|
||||
let (prefix, proj_label, task_label) = system_prompt_parts(lang);
|
||||
@@ -124,7 +128,7 @@ pub(crate) async fn build_system_prompt(state: &AppState, lang: &str) -> String
|
||||
}
|
||||
}
|
||||
}
|
||||
// UX-10 §1.4: 任务上下文(供解析用户消息中 [任务: xxx] 标记)
|
||||
// 任务全貌清单(供 LLM 知道存在哪些任务;被@任务的精准投影走 augmentation 层)
|
||||
// 仅最近 20 条未删除任务,按 created_at DESC(同 list_active 顺序)。
|
||||
if let Ok(tasks) = state.tasks.list_active().await {
|
||||
if !tasks.is_empty() {
|
||||
@@ -152,9 +156,7 @@ pub(crate) async fn build_system_prompt(state: &AppState, lang: &str) -> String
|
||||
///
|
||||
/// `lang` 与系统提示词保持一致取值集合("en" 英文,其余一律中文)。
|
||||
//
|
||||
// dead_code:阶段1 基础函数,阶段2 IPC(ai_chat_compress_context)与阶段3 agentic
|
||||
// 自动压缩会经 compress_via_llm 调用本函数。本阶段只暴露 + 单测,不接调用点。
|
||||
#[allow(dead_code)]
|
||||
// 调用方:compress.rs:85(compress_via_llm 内构造 system 消息)。
|
||||
pub(crate) fn compress_prompt(lang: &str) -> &'static str {
|
||||
match lang {
|
||||
"en" => "You are a conversation summarizer. Compress the following conversation \
|
||||
|
||||
Reference in New Issue
Block a user