feat(memory): add index, structured TODO, and heartbeat state schema

This commit is contained in:
Chen Gu
2026-08-13 17:00:21 +08:00
parent b05658438b
commit a3941dccde
3 changed files with 101 additions and 0 deletions
+31
View File
@@ -0,0 +1,31 @@
# MEMORY_INDEX.md
> 记忆索引(轻量导航)。
> 规则:这里只放“入口与摘要”,详细内容写入 MEMORY.md / memory/*.md。
## 1) 人物
- 谷老板
- 偏好与沟通:`USER.md`
- 长期关系承诺:`MEMORY.md`
- Helix
- 角色:系统内 Brain 架构师(历史更名记录见 daily)
- 近期任务:方案A 48h 冲刺(见 `memory/2026-03-10.md` 若有)
## 2) 进行中项目
- 网站方案A48h 冲刺)
- 红线:按时 / 可演示 / 审美不跑偏
- 当前责任:Val 总控,Helix 执行中枢
## 3) 治理与边界
- 重大或不明确决策:必须上报谷老板最终拍板(详见 `MEMORY.md`
- 对外发送/不可逆操作:需确认
## 4) 例行机制
- 心跳巡检:`HEARTBEAT.md` + `memory/heartbeat-state.json`
- 每日记忆沉淀:`memory/YYYY-MM-DD.md`
- 长期提炼:`MEMORY.md`
## 5) 索引维护规则
- 新增长期记忆时:在本文件补一条入口。
- 每周清理一次失效索引(已过期、已迁移、重复项)。
- 本文件目标长度:控制在 150 行内。
+48
View File
@@ -0,0 +1,48 @@
# TODO.md
> 结构化任务板(供 Val/Heartbeat 自动巡检)
## 字段定义
- `id`: 唯一ID(如 T-20260310-001
- `title`: 任务名称
- `owner`: 责任人(Val / Helix / 谷老板 / 其他)
- `priority`: P0/P1/P2
- `status`: todo / doing / blocked / done
- `created_at`: 创建时间(Asia/Shanghai
- `due_at`: 截止时间(可空)
- `last_checked_at`: 最后检查时间
- `next_check_at`: 下次检查时间
- `check_interval`: 巡检周期(如 6h / 24h
- `depends_on`: 依赖(可空)
- `escalate_if_overdue`: true/false
- `notes`: 备注(风险、降级项、证据链接)
## Tasks
### T-20260310-001
- title: 网站方案A 48小时冲刺总控
- owner: Val
- priority: P0
- status: doing
- created_at: 2026-03-10 09:45 GMT+8
- due_at: 2026-03-12 08:06 GMT+8
- last_checked_at: 2026-03-10 09:45 GMT+8
- next_check_at: 2026-03-10 15:45 GMT+8
- check_interval: 6h
- depends_on: Helix 各Track回传
- escalate_if_overdue: true
- notes: 红线=按时/可演示/审美不跑偏;可接受降级清单已生效。
### T-20260310-002
- title: 记忆机制结构化改造(Index + TODO + 心跳状态)
- owner: Val
- priority: P1
- status: done
- created_at: 2026-03-10 09:45 GMT+8
- due_at: 2026-03-10 10:30 GMT+8
- last_checked_at: 2026-03-10 09:45 GMT+8
- next_check_at: 2026-03-11 09:45 GMT+8
- check_interval: 24h
- depends_on: 无
- escalate_if_overdue: false
- notes: 首版模板已落地,后续按使用反馈微调字段。
+22
View File
@@ -0,0 +1,22 @@
{
"lastChecks": {
"email": null,
"calendar": null,
"weather": null,
"todo": 1773116700,
"memory_index": 1773116700
},
"todoWatch": {
"enabled": true,
"defaultIntervalHours": 6,
"overdueEscalation": true,
"lastScanAt": "2026-03-10 09:45 GMT+8",
"nextScanAt": "2026-03-10 15:45 GMT+8"
},
"memoryHygiene": {
"enabled": true,
"lastCompactionAt": "2026-03-10 09:45 GMT+8",
"nextCompactionAt": "2026-03-11 09:45 GMT+8",
"maxMemoryIndexLines": 150
}
}