用途:在功能设计阶段编写前端低层设计(LLD)。先只读阅读相关前端代码,使设计基于真实组件与模式,再产出可构建的前端 LLD。它是设计产物而非代码,绝不修改应用代码;优先复用而非重造,约束需引用 file:line。
使用时机:HLD 通过后、与后端 LLD 并行时使用。不实现功能,也不设计后端;跨仓库契约不在此编写,只描述 UI 需要消费的 API/数据,之后由 /api-contract 将两份 LLD 合并为正式 OpenAPI 契约。
输入:feature、feature_slug、approved hld_path。产物路径由技能自行解析:skills.config.yaml → artifacts.lld,{slug} 为 feature_slug,即 .maestro/<slug>/lld/frontend.md。
主要步骤:只读地定位功能涉及的应用/路由,阅读路由与页面、组件库/设计系统、状态与数据获取层、表单与校验、加载/空/错误/权限等 UI 状态模式、无障碍约定、i18n、组件与 E2E 测试设置,仅记录约束性内容并附 file:line 证据;设计组件层级与职责、路由挂载点、状态模型、数据获取与缓存键/失效、表单 schema 与校验;为每个视图定义完整 UI 状态矩阵(加载、空、成功、部分、错误/重试、权限拒绝、离线/慢网);列出 UI 期望消费的端点/事件与响应形状;给出无障碍(WCAG AA)、性能、安全、i18n、韧性策略;编写测试计划;最后写出 LLD 并生成任务 DAG 到 .maestro/<slug>/frontend/tasks.json。
LLD 必须覆盖:上下文与约束、组件与状态设计、路由、数据获取与缓存、表单与校验、UI 状态矩阵、消费的 API、无障碍、性能、安全、i18n、韧性、测试计划。边界情况需明确(不得留 TBD),如无现成状态可复制的视图、长列表/虚拟化、并发编辑与陈旧数据、乐观更新失败回滚、慢/失败请求、分页边界、权限门控、会话过期、Unicode/时区/RTL、大表单校验、动态内容无障碍、包体积敏感路由、无测试区域、重型遗留组件。
tasks.json 需符合 workflows/tasks.schema.json,一次性写出后校验:python3 workflows/validate_tasks.py .maestro/<slug>/frontend/tasks.json 须输出 OK。输出返回 lld_path、tasks_path 及影响契约的决策/约束列表。完成标准:各节齐全、状态矩阵完整、消费 API 足够具体、边界情况已指定,且不实现代码。