web-engineering · git:20260823.27170e9 · 2026-08-23 · sha256 3a7dda9f020943d0
web-engineering git:20260823.27170e9A
Immutable. This exact content is served forever at /api/v1/blob/3a7dda9f020943d0.
--- name: web-engineering description: 提供现代 Web 客户端的组件、路由、状态、浏览器存储、网络交互、响应式布局、可访问性、安全、兼容性与性能工程能力。 --- # Web 工程执行契约 ## 目标 约束被本专业命中的浏览器端工作,使结论、实现、验证和项目记忆均以当前产品工件与验证证据为准,并保持在 Web 工程所有权内。 ## 执行协议 1. 确认本次 Web 工程裁决范围、任务所指产品与工作边界、受影响入口、消费者与验证边界。 2. 阅读 [专业能力准则](references/principles.md) 的能力索引,并完整读取本次实际命中的能力条目。 3. 阅读 [项目记忆](references/memory.md) 中本次命中的核心主题,依“项目记忆”章的定位规则唯一确认当前产品根目录与 `product-id` 后,再读取 `<当前产品根目录>/docs/product-studio/<product-id>/web-engineering.md` 中与本次工作相关的已有事实;项目记忆只作背景,当前代码、配置、调用链与验证结果优先。 4. 在授权范围内完成最小充分实现或审查,忠实落实已确认的产品与用户可见内容语义,不改写其他专业已确认的语义;相关语义缺失且不同表达会改变产品理解、承诺或行动时,只报告缺口,不由客户端代作产品裁决。 5. 运行与风险相称的检查,核对最终差异、用户可观察结果及未覆盖边界。 6. 最终回复前必须依“项目记忆”章检查本轮新确认、改变或失效的核心认知;任务已允许修改当前产品根目录内的目标文件时直接创建、更新或移除本专业事实册,只有没有符合条件的事实差异时才不触碰。 ## 输出契约 - 给出 Web 工程裁决、实现或审查结果及其适用边界。 - 列出实际修改的文件、保持不变的关键契约和剩余未知项。 - 记录已运行验证、关键结果、证据能证明的范围与不能证明的范围。 - 项目记忆不得收录任务摘要、实施过程、文件改动清单、当前运行快照或一次性验证结果。 ## 完成条件 - 请求范围内的 Web 工程目标已经实现或形成有证据的裁决。 - 受影响行为取得风险相称的静态、自动化或真实浏览器验证。 - 最终差异仅含授权范围,外部契约、风险与证据缺口均已明示。 - 已读取相关项目记忆;核心认知发生变化时,事实册已在授权范围内更新并与当前权威一致。 ## 停止条件 - 缺少会实质改变实现方向、用户结果或安全边界的必要契约。 - 产品目录状态、目标产品或授权范围无法唯一确认。 - 所需真实环境、凭据或外部决定不可得,且本地替代证据不足以支持结论。 - 继续操作将越过用户授权或其他专业的唯一决策权。 ## 权限与边界规则 - 只修改请求授权且属于当前产品范围的文件,不回滚或整理无关改动。 - Web 工程拥有浏览器端实现裁决;产品价值、系统边界、服务端契约、安全政策和发布授权不由本技能重定义。 - 不因本技能命中而规定其他技能的选择、顺序、并行关系或交接方式。 - 不实施未经授权的部署、发布、生产数据操作或外部系统变更。 - 不把交付摘要、排查过程、设备或浏览器快照、当前版本与运行状态写入事实册。 ## 参考资料 - [专业能力准则](references/principles.md):Web 工程方法、证据标准与专业禁区的唯一详细来源。 - [项目记忆](references/memory.md):本专业应记住的项目核心认知。 ## 项目记忆 - 先唯一确认“当前产品根目录”:它是本次任务所指产品的工作边界,不要求存在 Git 仓库或 `.git`。用户明确指定的产品目录优先;否则根据当前打开的工作区中实际承载目标文件的目录、产品入口与元数据、目标代码、配置和调用链共同判定,Git 根只作可选佐证,不得仅因当前进程工作目录、Git 根或 Skill 所在目录而选根。当 Product Studio 仅作为技能提供者时,不得把它的源码目录、技能文件目录、插件安装目录或缓存目录认作当前产品根目录;只有任务明确以 Product Studio 本身为目标产品时才可使用其目录。无法唯一确认时不读取、创建或修改任何候选事实册。 - 再确认 `product-id`;它必须在当前产品根目录内唯一、稳定,且是非 `.` 或 `..`、不含 `/` 或 `\` 的安全单级目录名。事实册的唯一位置是 `<当前产品根目录>/docs/product-studio/<product-id>/web-engineering.md`。读取与写入必须使用以已确认根目录为基准的路径,不得把相对的 `docs/product-studio/<product-id>/web-engineering.md` 按进程当前目录或 Skill 所在目录解析;归属不唯一或名称不安全时不读取、猜测或创建事实册。 - 工作前读取 `references/memory.md` 中本次命中的核心主题,再读取 `<当前产品根目录>/docs/product-studio/<product-id>/web-engineering.md` 中的相关事实;事实册不存在时先以当前产品为准继续工作,待收口检查发现首条应入册事实时再创建,不得因缺少文件跳过最终检查。 - 项目记忆仅作上下文;与当前代码、配置、契约或已验证浏览器行为冲突时,以当前权威为准。 - 以本轮实际核验范围为取材边界,只写入已经由当前代码、配置、契约、调用链或浏览器证据确认,会持续影响后续判断且难从局部代码直接看清,并属于 Web 工程所有权的项目核心认知;本轮未修改但经当前权威新确认、尚未入册的既有事实同样需要写入,事实候选不以 Git 差异为限;不复制源码、配置或可生成清单。 - 只读分析、审查或状态查询没有事实册写权限,除非用户明确要求维护记忆;凡任务已允许修改当前产品根目录内的目标文件,维护该根目录下的事实册属于同一写权限,除非用户明确排除。最终回复前必须把符合条件但尚未记录、已经改变或已经失效的事实直接创建、更新或移除,不得只在回复中列出候选,也不得因事实册不存在而跳过;不得因本节扩大当前产品根目录之外的写入范围。 - 事实册不存在且至少有一条应入册事实时,在当前产品根目录下一并创建 `docs/product-studio/<product-id>/` 与 `web-engineering.md`;没有事实时不创建空目录或空册。首行固定为 `# web-engineering 当前产品事实`;每项事实以可检索的稳定业务语义为二级标题,用现在时写清当前事实、成立条件与影响边界,并给出相对于当前产品根目录的权威核验入口和失效或重审条件。 - 同一认知只保留一处,原位更新或移除旧内容,只保留当前仍成立的事实,不追加历史版本;最后一个主题移除后删除事实册,`<product-id>` 目录为空时一并删除。 - 不记录秘密、用户数据、任务过程、文件改动清单、迁移进度、运行快照、当前版本、一次性结果或未经验证的推断。