auto-sync: 2026-05-16 13:44:25

This commit is contained in:
cfdaily
2026-05-16 13:44:25 +08:00
parent f109bcf252
commit ee85feed9b
+26 -7
View File
@@ -569,6 +569,23 @@ Agent 不能跨项目读写黑板。这是安全边界——不同项目的数
当前不实现,预留设计空间。
### 8.4 项目归档/删除时正在运行的任务(v2 新增)
**归档(archive**
1. 检查是否有 working 状态的任务
2. 有 → 将这些任务标记为 cancelled,等待 Agent 完成回调(超时兜底 5 分钟)
3. 无 → 立即停止该项目的 ProjectSlot 线程
4.`_registry.yaml` 中状态改为 `archived`
**删除(delete**
1. 必须先 archive
2. 必须无 working 任务(归档时已处理)
3. `--confirm` 确认
4. `rm -rf projects/{project_id}/`
5.`_registry.yaml` 移除条目
**禁止直接删除 active 项目**——必须先归档。
## 9. 与其他课题的关系
| 课题 | 关系 | 说明 |
@@ -592,13 +609,15 @@ Agent 不能跨项目读写黑板。这是安全边界——不同项目的数
| # | 任务 | 依赖 |
|---|------|------|
| 1 | 项目目录结构 + _registry.yaml + project.yaml Schema | 无 |
| 2 | ProjectManager(多连接池 + 配置加载 + 项目级 guardrails 覆盖 | 1 |
| 3 | CLI project create/list/default/archive/delete 命令 | 1 |
| 4 | CLI 所有操作增加 --project 参数 + 优先级解析 | 1, 2 |
| 5 | Daemon tick 遍历所有 active 项目 | 2 |
| 6 | L2 prompt_template 注入 project_context | 2, 4 |
| 7 | Daemon 逻辑健康自检(按项目追踪) | 5 |
| 8 | Dashboard 项目切换 + 多项目概览 | 课题9 |
| 2 | ActiveAgentCounter(线程安全计数器 + 全局/per-agent 双重限制 | |
| 3 | ProjectSlot(独立线程 tick + SQLite 独立连接 + spawn 前检查计数器) | 1, 2 |
| 4 | Daemon 主循环(启动/监控/重启 ProjectSlot 线程) | 3 |
| 5 | CLI project create/list/default/archive/delete 命令 | 1 |
| 6 | CLI 所有操作增加 --project 参数 + 优先级解析 | 1, 3 |
| 7 | L2 prompt_template 注入 project_context + session_id 命名规则 | 3, 6 |
| 8 | Daemon 逻辑健康自检(按项目追踪 + 计数器超时兜底) | 4 |
| 9 | 项目归档/删除安全流程(working 任务处理) | 4, 5 |
| 10 | Dashboard 项目切换 + 多项目概览 | 课题9 |
---