# R4.8 任务报告

## 交付结果

- CaseRun 独立执行台可见文案改为中文优先，保留 `CaseRun`、`HWPOD`、`runId`、`SHA256` 等领域和协议标识。
- HWLAB Web 通用规范明确 AppShell 和页面根容器不得产生全局滚动；case 列表、事件流、阶段轨道、证据区等记录 pane 使用内部滚动，移动端只允许受限 workspace 内滚动。
- 路由元数据增加受限布局能力，CaseRun 页面启用；native readiness profile 由 YAML 声明所属应用、视口、主内容选择器和内部滚动 pane，避免 CaseRun profile 误用 Workbench 端口。
- CaseRun L1 API/Web 由 `hwlab nodes native-development` 管理。固定端口存在同服务旧进程时，CLI 依据进程命令、原生测试标识和端口环境确认身份后停止旧进程并在原端口启动；其他服务占用时拒绝误杀。

## L1 公网验收

统一入口：`http://152.53.229.148:5173/caserun`。

- `caserun`，1920x1080：通过，报告 SHA256 `54c23c360b4251f343d7d9e9d01e9efd2f0a52ffb72dbb7ebe5990db24166289`。
- `caserun-compact`，1180x800：通过，报告 SHA256 `9184439946706194fe00eac7a57be0b564c91291a19ad209bddf14bcd8bf7cbe`。
- `caserun-mobile`，390x844：通过，报告 SHA256 `27de727db1545ca97ec3cadc7ade4aa3367978bf4ffef51c2e926477c135d397`。
- 三轮均为 `layoutReady=true`，控制台错误、页面错误和关键请求失败均为 0。
- 桌面证据中 document、body、`.platform-content` 水平和垂直 overflow 均为 false；`.caserun-case-list`、`.caserun-events`、`.evidence-body` 均存在且计算样式为 `overflow: auto`。

## 真实 CaseRun smoke

通过已有 CLI 的 `--over-api` 模式访问正式公网入口 `https://lab-dev.hwpod.com`，运行 `software-smoke`：

- runId：`software-smoke-1784346141262`
- workflowId：`harnessrl-caserun-software-smoke-1784346141262`
- workflowRunId：`019f7351-667b-7466-976e-c9c6d9d865a3`
- 终态：`completed`，`terminal=true`
- 事件：queued、prepare、prepared、build-completed、collect-completed、completed
- 产物：`software-smoke.json`，335 bytes
- 产物 SHA256：`d69871dd289aea216298727c8014c76a88d52c8abb864232cc18b20e7a8642ab`

历史 NodePort `http://74.48.78.17:20667` 在本轮对健康接口和 CaseRun 接口均返回 502；正式公网域名入口正常。本轮未修改 CI/CD 或基础设施。

## 验证

- `bun test scripts/src/hwlab-node-web-probe-native-readiness.test.ts scripts/src/hwlab-native-development.test.ts`
- `bun test web/hwlab-cloud-web/scripts/caserun-native-fixtures.test.ts`
- `node --check web/hwlab-cloud-web/scripts/caserun-native-web-probe.mjs`
- UniDesk 与 HWLAB 相关补丁 `git diff --check`
