Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
88 lines
2.3 KiB
Markdown
88 lines
2.3 KiB
Markdown
# H0 Ownership Matrix 与架构决策
|
||
|
||
## 1. 目标
|
||
|
||
先把 Hermes-first 的 ownership matrix、边界和成功标准写清楚,防止后续开发过程中又回到“先写 adapter,最后发现架构中心没变”。
|
||
|
||
## 2. 核心判断
|
||
|
||
这轮改造的目标不是:
|
||
|
||
- 给 Jarvis 再挂一个更强的 runtime adapter
|
||
|
||
而是:
|
||
|
||
- 让 Hermes 成为默认 execution core
|
||
- 让 Jarvis 退回 product shell
|
||
|
||
## 3. Ownership Matrix
|
||
|
||
### 3.1 Hermes Core
|
||
|
||
Hermes 应负责:
|
||
|
||
1. session lifecycle
|
||
2. runtime resume / recovery
|
||
3. execution loop
|
||
4. chunk streaming
|
||
5. runtime-internal tool orchestration
|
||
6. runtime health / restart metadata
|
||
|
||
### 3.2 Jarvis Product Shell
|
||
|
||
Jarvis 应负责:
|
||
|
||
1. conversation / message 持久化
|
||
2. user / auth / permission 边界
|
||
3. memory context assembly
|
||
4. retrospective / knowledge 注入
|
||
5. skill shortlist
|
||
6. task graph / parallel worthiness 分析
|
||
7. product continuity
|
||
8. SSE contract
|
||
9. observability / attachments / metrics
|
||
10. rollout / fallback / rollback policy
|
||
|
||
### 3.3 Shared Contracts
|
||
|
||
需要显式建模的共享边界:
|
||
|
||
1. runtime prepared context
|
||
2. runtime event model
|
||
3. continuity envelope
|
||
4. session health metadata
|
||
5. rollout policy metadata
|
||
|
||
## 4. 关键边界原则
|
||
|
||
1. 不把 Hermes session id 直接当成完整 continuity。
|
||
2. 不让前端直接依赖 Hermes-native event。
|
||
3. 不把 memory / skill / task graph 直接挪进 Hermes 黑盒。
|
||
4. 不让 `AgentService` 继续充当 runtime 本体。
|
||
5. 不把 runtime 选择长期暴露为普通用户负担。
|
||
|
||
## 5. 目标文件锚点
|
||
|
||
### Backend
|
||
- `backend/app/services/agent_service.py`
|
||
- `backend/app/services/agent_runtime/base.py`
|
||
- `backend/app/services/agent_runtime/hermes_runtime.py`
|
||
- `backend/app/services/agent_runtime/hermes_session_manager.py`
|
||
- `backend/app/models/conversation.py`
|
||
|
||
### Frontend
|
||
- `frontend/src/api/conversation.ts`
|
||
- `frontend/src/pages/chat/composables/useChatView.ts`
|
||
- `frontend/src/stores/conversation.ts`
|
||
|
||
## 6. 成功标准
|
||
|
||
- [ ] Hermes-first 的 ownership matrix 被写清楚
|
||
- [ ] 保留 Jarvis product shell 的范围被写清楚
|
||
- [ ] fallback / rollback 必须存在这一点被写清楚
|
||
- [ ] 后续 phase 的顺序依赖被写清楚
|
||
|
||
## 7. 本阶段结论
|
||
|
||
只有先把 ownership 定义清楚,后面 H1-H7 才不会演变成“代码改了很多,但架构中心没有变”。
|