diff --git a/.agents/skills/unidesk-tasktree/SKILL.md b/.agents/skills/unidesk-tasktree/SKILL.md index 8814923f..5062b3c3 100644 --- a/.agents/skills/unidesk-tasktree/SKILL.md +++ b/.agents/skills/unidesk-tasktree/SKILL.md @@ -73,16 +73,19 @@ HWLAB_TASKTREE_API_URL=http://127.0.0.1:6673 \ ``` - `--overapi` 只能切换 transport;命令、参数、DTO、输出 envelope 和错误语义必须保持一致。 -7. API 合同通过后,启动 TaskTree standalone Vite HMR 开发服务: - - 只挂载 `TaskTreeView`、最小 Router 和 Pinia; +7. API 合同通过后,启动 TaskTree L1 Vite HMR 开发服务: + - 复用 Cloud Web 正式 `App.vue`、`AppShell`、顶栏、Router、Pinia 和设计系统; + - 保留 HWLAB 左侧根导航,并通过 native auth/access profile 只授权 `project.tasktree`; + - 根导航只能显示 TaskTree 一个页面入口,不得显示其他 HWLAB 业务页面; - 只把 `/v1/tasktree` 代理到 native API; - - TaskTree API 模块必须通过 `@/api/client` 导入 `fetchJson`: - - standalone Vite 将该入口替换为轻量 adapter; - - 禁止使用绕过 alias 的相对 `./client`,否则会加载全量 RUM 并产生非 TaskTree 请求; - - standalone API adapter 禁止触发 `/v1/web-performance` 等非 TaskTree 请求; - - 禁止加载 Cloud Web `App.vue`、完整 router、认证 guard、Workbench 和其他 HWLAB 服务入口; - - 浏览器出现 HWLAB 登录页、全量导航或非 TaskTree API 请求时,判定微服务 native 前端启动不合格; + - 产品壳层不得触发 `/v1/web-performance`、Workbench 或其他非 TaskTree 业务请求; + - 禁止为了渲染总框架启动 Cloud API、Workbench 或其他 HWLAB 后端; + - API 使用 `6673`,worker health 使用 `6674`; + - Web 默认使用 `4173`,端口被其他 L1 会话占用时选择独立空闲端口,不得停止并行会话; + - Web 对外监听时,HMR client 地址由请求来源解析,禁止写成 `0.0.0.0`; - 使用 `$unidesk-webdev` 的 custom/local `web-probe` 入口完成多视口和交互验收; + - 截图必须等待 `.platform-shell` 或 TaskTree ready selector,禁止把入口脚本尚未挂载时的空白首帧当成白屏; + - 最终验证必须确认 HWLAB 总框架存在、根导航只有 TaskTree、console 和失败请求均为零; - 修改前端时复用现有 HMR 与 API 进程,不触发镜像构建或 Kubernetes rollout。 8. Native worker、CLI、API 和 HMR 前端全部收口后,才进入自动 CI/CD。 - native 进程使用独立 PID、日志和 state 目录: diff --git a/.agents/skills/unidesk-webdev/SKILL.md b/.agents/skills/unidesk-webdev/SKILL.md index 83b45af5..5ecbd176 100644 --- a/.agents/skills/unidesk-webdev/SKILL.md +++ b/.agents/skills/unidesk-webdev/SKILL.md @@ -69,6 +69,14 @@ description: UniDesk Web 开发与受控浏览器验证技能。用户提到 Web - 前端以仓库正式开发入口独立启动,并启用 HMR 热更新; - 前后端进程、端口、日志和停止方式必须彼此独立,禁止把本地调试绑定到 Kubernetes rollout; - 能直接复用 dispatcher、RESTful 函数或 fake-server 的场景,不得要求先发布 API Pod 才能调试前端。 +- HWLAB 单微服务 L1 前端保持产品级壳层: + - 复用正式 `App.vue`、`AppShell`、顶栏、左侧根导航、Router 和设计系统; + - 不得把页面降级成脱离 HWLAB 总框架的 standalone 组件预览; + - 通过 native auth/access profile 只授权当前调试微服务的 `navId`; + - 左侧根导航必须存在,但只能显示当前微服务的一个页面入口; + - 只代理当前微服务 API 路径,禁止为了渲染产品壳层启动其他 HWLAB 后端; + - 当前微服务前端、API 和 Worker 使用独立端口与生命周期,不得抢占或停止其他 L1 会话; + - Vite 必须绑定可访问的 native 端口并保持 HMR,浏览器端 HMR 地址不得写成 `0.0.0.0`。 - Native 阶段采用短反馈循环: - 修改后先执行最小语法检查和目标功能验证; - 使用 `web-probe` 的 custom/local 受控入口验证真实 DOM、交互、布局和截图;