docs: keep non-core validation non-blocking
This commit is contained in:
@@ -35,6 +35,12 @@ description: UniDesk Web 开发与受控浏览器验证技能。用户提到 Web
|
||||
- 输出中的 `cleanup.state=confirmed` 才证明进程已停止,`cleanup.state=unknown` 表示远端传输或清理证据仍不完整。
|
||||
- 涉及 Web 哨兵、`web-probe sentinel`、`monitor.pikapython.com`、定期/周期巡检或新建巡检时,必须同时加载 `$unidesk-monitor`。
|
||||
- 真实用户入口验证优先;源码检查、构建通过或截图局部正常不能替代原入口验收。
|
||||
- Web/Workbench 内部校验不得压过核心业务:
|
||||
- transport 已连接、用户输入可解释且目标/session scope 明确时,capabilities、delivery semantics、schema、contract version、commit 或 authority metadata 漂移只记录结构化 warning,并固定 `blocking=false`;
|
||||
- warning 必须可由诊断、OTel 或受控 artifact 下钻,但不得禁用输入控件、阻止提交、清空业务选择、覆盖成功结果或切换数据 authority;
|
||||
- 只有认证/权限失败、真实 transport 不可用、目标/session scope 无法唯一确定、业务必需输入缺失或继续执行会造成损害时才允许阻断;
|
||||
- Provider catalog 成功且当前选择明确不可用时可自动选择 configured profile;catalog 失败或没有 configured profile 时保留当前值并允许提交,不得把 catalog 可见性变成新门禁;
|
||||
- 验收必须同时证明 warning 可见和核心动作可完成,禁止通过隐藏 warning、伪造 capability、放宽 session scope 或增加 fallback 获得通过。
|
||||
- 共享 `public-edge` 出现不同任务反复覆盖同一 Caddy desired state 时:
|
||||
- HTTPS 入口仍可用则直接继续用户交付,不因 fingerprint warning 阻塞业务;
|
||||
- HTTPS 入口不可用且用户需要即时交付时,可临时交付 owning 配置声明的固定 HTTP port;
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
# R6.3 任务报告
|
||||
|
||||
## 结论
|
||||
|
||||
已修复 Workbench 将非核心 realtime 元数据漂移升级为业务门禁的问题,并修正 Provider 默认选择。Kafka SSE 的 transport 与 session scope 仍是阻断边界;delivery、capabilities 等内部元数据漂移只记录 warning,不再清空 realtime ready。Provider catalog 成功且旧选择未配置时自动选择首个 configured profile;catalog 失败或无 configured profile 时保留原值。
|
||||
|
||||
## 交付
|
||||
|
||||
- HWLAB issue:pikasTech/HWLAB#2674。
|
||||
- HWLAB PR:pikasTech/HWLAB#2675。
|
||||
- merge commit:`8e215f010c2c69c93bbf8a4a3e30a4b3673123d5`。
|
||||
- 长期规则:`docs/reference/devops-hygiene.md`、`docs/reference/hwlab.md` 与 `$unidesk-webdev`。
|
||||
|
||||
## L0
|
||||
|
||||
- Provider/realtime 定点测试:33 pass。
|
||||
- `bun run workbench:native:smoke`:10 pass,native smoke `ok=true`。
|
||||
- 覆盖 capability 缺失仍 ready、session scope 错配仍阻断、旧 `codex` 自动选择 configured profile、catalog 失败或无 configured profile 非阻塞。
|
||||
|
||||
## L1
|
||||
|
||||
- NC01/v03 API、worker、web 通过 YAML-first CLI 重启并健康。
|
||||
- 固定入口 `https://lab-dev-workbench.hwpod.com/workbench` 的 native readiness 为 pass;console error、page error、关键失败响应均为 0。
|
||||
- observer:`webobs-mrqjohle-723ec1`,已停止且 `alive=false`。
|
||||
- command:`cmd-mrqjqt6i-6bf96d`,Provider 原生 select 实际值为 `gpt.pika`。
|
||||
- session:`ses_ece97e02-5082-4911-82cf-f925e1e2cd21`。
|
||||
- trace:`trc_7948aef2397849bf`,turn accepted 后 completed。
|
||||
- Final Response:`Hi. What would you like to work on?`。
|
||||
- 旧 `workbench_live_realtime_contract_invalid` 未再出现。
|
||||
|
||||
## 非阻塞残余
|
||||
|
||||
被动 observer 页未同步同一 trace 的 assistant、Final Response 与 Trace rows,已独立登记为 pikasTech/HWLAB#2676 和 R6.4;control 用户操作页已通过,不阻塞本任务。
|
||||
@@ -123,3 +123,11 @@
|
||||
### R6.2 [in_progress]
|
||||
|
||||
修复 [HWLAB #2669](https://github.com/pikasTech/HWLAB/issues/2669) 与 [HWLAB #2671](https://github.com/pikasTech/HWLAB/issues/2671):将 `POST /v1/workbench/commands` 纳入 Cloud Web authenticated same-origin proxy,并让 Workbench internal Cloud API adapter 按统一密钥契约规范化 Bearer 认证头,恢复 `lab-dev.hwpod.com` 的 L2 typed CLI fresh turn;通过正常 `v0.3` PR 自动交付,不修改 Secret、不新增 fallback 或第二认证 authority,保持 Temporal、AgentRun 与 Kafka 权威不变,完成任务后将详细报告写入[任务报告](./details/hwlab-web-product-experience/R6.2_Task_Report.md)。
|
||||
|
||||
### R6.3 [completed]
|
||||
|
||||
修复 [HWLAB #2674](https://github.com/pikasTech/HWLAB/issues/2674):将 Workbench 已连接后的 delivery、capabilities、version 等非核心实时合同漂移降级为可见 warning,仅 transport 失败和 session scope 错配阻断;provider catalog 成功时自动选择可用 profile,catalog 失败或无可用 profile 不新增业务门禁;完成 L0/L1 与 native smoke 回归并沉淀长期规则,完成任务后将详细报告写入[任务报告](./details/hwlab-web-product-experience/R6.3_Task_Report.md)。
|
||||
|
||||
### R6.4
|
||||
|
||||
修复 [HWLAB #2676](https://github.com/pikasTech/HWLAB/issues/2676):保持 Kafka SSE 单一实时与终态权威,修复同 session/trace 的 Workbench 被动观察页未同步 assistant、Final Response 与 Trace rows 的跨页投影缺口,不新增 polling、result fallback、第二 EventSource 或第二状态 authority,完成任务后将详细报告写入[任务报告](./details/hwlab-web-product-experience/R6.4_Task_Report.md)。
|
||||
|
||||
@@ -25,8 +25,10 @@ When declared validation dependencies are missing, install them with the reposit
|
||||
The following practices are not acceptable as the long-term or hidden source of a working environment:
|
||||
|
||||
- 微服务线上契约与版本校验必须非阻塞:
|
||||
- 服务间的契约版本、源码版本、镜像版本、`commitId`、provenance 或部署对齐检查只能产生结构化 warning、OTel 事件和运维诊断;
|
||||
- 服务间的 capabilities、delivery semantics、schema、契约版本、源码版本、镜像版本、`commitId`、provenance 或部署对齐检查只能产生结构化 warning、OTel 事件和运维诊断;
|
||||
- 这些检查不得拒绝、暂停、降级或延迟用户业务请求,也不得成为 admission、readiness、dispatch、CI/CD public gate 或 Web/CLI 可用性门禁;
|
||||
- transport 已连接、用户请求可解释且业务所需的目标与会话范围明确时,内部元数据缺失、未知或漂移不得禁用输入控件、清空已选业务对象、覆盖成功结果或阻止提交;
|
||||
- 只有认证与权限失败、目标或会话范围无法唯一确定、业务必需输入缺失、真实 transport 不可用,或继续执行会造成不可逆损害时才允许阻断;
|
||||
- 接收方必须按当前业务语义解析请求,并对可安全归一化的旧字段、冗余字段和版本差异做兼容归一化,同时记录 warning;
|
||||
- 只有业务数据本身无法解释、违反安全/权限边界或会造成不可逆损害时才允许拒绝,并返回与具体业务字段相关的 typed error;
|
||||
- 禁止把版本、commit 或契约漂移包装成 `schema-invalid`、`503` 或其他用户阻塞错误;
|
||||
|
||||
@@ -201,6 +201,11 @@ Workbench 浏览器回归需求以 UniDesk OA [PJ2026-010401 Web工作台](../..
|
||||
- `eventCount` 和 `--min-events` 不能证明 assistant、terminal 或 final,不得通过反复猜事件数量重开 inspect;
|
||||
- `event-timeout` 必须直接读取 `observedSemantics` 与 `missingSemantics` 分层定位;
|
||||
- AgentRun 冷启动仍未终态时,报告上游运行状态,不得对已结束的 live-only 窗口补读 snapshot、read-model、AgentRun `/events` 或 `/result` 冒充产品 SSE 验收。
|
||||
- `workbench.connected` 已到达且 `filters.sessionId` 与当前会话一致时,delivery semantics、capabilities、contract version 和 authority metadata 的缺失或漂移只记录 `blocking=false` warning;
|
||||
- 上述内部元数据 warning 不得清空 realtime ready、禁用 Composer、覆盖业务错误或产生 `workbench_live_realtime_contract_invalid` 一类阻塞状态;
|
||||
- EventSource 未连接、连接进入 error/closed/blocked,或 connected session scope 与当前会话不一致时仍可阻断,并必须返回与 transport 或 session scope 对应的 typed error;
|
||||
- Provider catalog 成功且当前选择明确为 `configured=false` 时,前端选择首个 configured profile 并持久化;
|
||||
- Provider catalog 请求失败或没有 configured profile 时保留当前选择,不禁用 Composer、不增加前置门禁;真实提交若被 provider 拒绝,按原业务错误投影。
|
||||
|
||||
- Workbench Cloud 内部统一密钥认证:
|
||||
- 认证 authority:
|
||||
|
||||
Reference in New Issue
Block a user