# R4.1 Temporal 与 native 服务合同报告

## 结论

已完成 CaseRun/HarnessRL Temporal 化与 native 敏捷开发的规格定锚。后续实现必须以 `draft-2026-07-17-p0-temporal-native-agile` 为 HarnessRL 实现引用版本。

## 架构裁决

- 拆分 `hwlab-harnessrl-api` 与 `hwlab-harnessrl-worker`。
- Temporal workflow history 只拥有编排、retry、timer、signal、cancel 和恢复。
- HarnessRL registry 复用 HWLAB 既有 PostgreSQL，拥有 run/read model、stage event、workflow identity、manifest 和 aggregate 索引。
- AgentRun 继续拥有 run、command、session、trace 和 final。
- HWPOD 继续拥有 lease、node route、operation result 和原始硬件事实。
- Cloud Web、CLI 与 native fixture 都不得生产或推断业务成功事实。

## Native 合同

- 后端可在 Kubernetes 外独立启动 Temporal 开发运行时、API 和 worker。
- API 与 worker 分别支持 watch/reload。
- CLI 默认 local 模式，显式 `--over-api` 使用同源 HarnessRL API。
- 两种 CLI 模式共享 application service、DTO、typed error 和 submit-and-poll。
- 前端可独立启动 Vite HMR 与 native CaseRun test API。
- native fixture 必须标记 `mode=native-test`，不得进入生产配置或 fallback。

## 交付顺序

1. Temporal 后端与 API/worker 分离。
2. CLI 双模式。
3. 前端 native 服务。
4. native smoke，包括 cancel 和 API/worker restart recovery。
5. 仅通过 `v0.3` PR merge 触发原 PaC/Tekton/GitOps/Argo 自动链回归。

## 规格文件

- `PJ2026-0103-harness-rl.md`
- `PJ2026-010402-hwlab-cli.md`
- `PJ2026-010401-web-workbench.md`

## 执行入口

- 主 issue：`pikasTech/HWLAB#2614`
- MDTODO：`docs/MDTODO/hwlab-caserun.md` R4
