references/openspec-sequence.md
openspec-sequence.md
OpenSpec 实施顺序
协议
使用以下状态:
draft:方向已记录,前置条件未解决;ready:产品和技术边界已明确;in_progress:正在实施;done:验收标准和证据完整;archived:不再指导实施。
除非仓库明确支持无重叠的并行归属,否则同一时间只允许一份 in_progress 规格。
每份规格包含:
- 状态;
- 目标;
- 前置条件;
- 范围;
- 非目标;
- 验收标准;
- 必要时写明预期归属/文件;
- 测试计划;
- 必要时设置人工评审门禁;
- 验证证据。
推荐顺序
阶段 A:验证隐喻
- 使用假数据制作静态桌面/应用原型。
- 窗口生命周期和 Finder/导航状态。
- 真实只读虚拟文件系统。
- 核心文档、图片与领域查看器。
- 嵌入式 Demo 或浏览器类体验。
- 键盘、焦点、错误、几何和性能质量。
- 首页或主路由切换与回退。
视觉和交互方向未获确认前,不要接入完整后端。
阶段 B:构建真实系统
- 共享 OS 设计 token 和组件原语。
- 应用注册表与应用生命周期。
- 响应式桌面/移动工作区。
- 命令驱动的交互式菜单栏。
- Dock 启动、聚焦和运行状态。
- 第一个事务型应用,例如 Mail/Contact。
- 领域应用,例如 Career/Library/Search。
- 外部媒体/数据映射与验证。
- 持久运行时,例如媒体播放。
阶段 C:统一产品
- 公开直接路由的应用模式。
- 后台/Control Panel 模式。
- 完整路由、无障碍、性能、SEO、部署与回退发布。
编号和名称可以按产品调整,但必须保留依赖逻辑。
门禁
以下节点必须明确评审:
- 锁定视觉/平台方向;
- 未批准原型时接入真实生产数据;
- 修改根路由或 canonical URL;
- 修改 schema 或破坏性存储行为;
- 宣布全站完成;
- 生产发布。
范围纪律
一份规格内:
- 只实现已接受的行为;
- 仅在当前边界确有需要时为后续工作添加接口;
- 不静默完成未来规格;
- 不修复无关仓库问题;
- 记录外部阻塞,但不要归因于本规格;
- 遇到需要确认的产品门禁时停止。
完成定义
仅在以下条件全部满足时标记 done:
- 每条验收标准都有证据;
- targeted 和 regression tests 通过;
- 类型检查通过;
- 生产构建通过;
- 相关浏览器视口和交互通过;
- 受影响时已检查直接路由和 metadata;
- 证据已写入规格;
- 非目标未被改动;
- 涉及路由或发布时已明确回退方案。