# Runner, Schemas, and Memory Store ## 目标 把 memabra 从“能分别检索、路由、回放”推进到“能产出合法 draft trajectory、能校验数据、能管理 typed memory records”。 ## 当前实现 ### runner.py 提供: - `MemabraRunner` 能力: - 接收 `TaskContext` - 调用 retriever 获取候选 - 调用 router 生成动作决策 - 自动生成 draft trajectory - 产出最小事件流: - `task_received` - `candidates_recalled` - `action_selected` 意义: 这让 memabra 第一次具备了一个 task-to-trajectory 的实际入口。 ### schemas.py 提供: - `SchemaRegistry` - `SchemaValidationError` 当前策略: - 先做轻量级 runtime validation - 不依赖外部库 - 先校验关键 required keys 这还不是完整 JSON Schema engine,但足够先守住地板线,避免样本结构乱飞。 ### memory_store.py 提供: - `MemoryRecord` - `MemorySource` - `VerificationState` - `InMemoryMemoryStore` 当前能力: - upsert - get - list_by_type - mark_used - verify - revoke 意义: 现在 memabra 终于不是只会“谈记忆”,而是有一个 typed memory record runtime 了。 ## 当前闭环 现在已有: - retrieval - router - runner - replay - memory store - schema validation 也就是: 任务 -> 候选召回 -> 路由决策 -> trajectory 草稿 -> 回放统计 并且 memory record 本身也能做校验和状态变更。 ## 还差什么 - execution adapter(真实工具/skill/memory 注入) - 完整 JSON Schema 验证 - trajectory 持久化层 - richer reward aggregation - counterfactual replay ## 建议下一步 1. 做 `execution.py` 2. 做 `persistence.py` 3. 给 runner 接上 memory store 和 telemetry writeback 4. 做 richer router scoring v2