# 03 · 开发计划与流程 > 里程碑驱动;每个里程碑有 DoD(完成的定义)。估时按单人全职折算。 ## M0 调研与方案冻结(已完成于本仓库 docs/) - [x] DSH 官方插件规范调研(bundle/profile、client modules、slots、settings、publish) - [x] 市场收录机制确认(topic `dsh-plugin` + README 安装命令 + semver tag) - [x] 技术方案与风险登记评审(02 文档) **DoD**:文档集齐,风险缓解策略明确。 ## M1 插件包骨架(0.5 天) - [ ] package.json / cordis.patch.yml / LICENSE(MIT) / .gitignore - [ ] 目录结构、命名冻结(`dsh-free-models-hub`) **DoD**:`node scripts/build.mjs` 可产出 lib/;包字段符合 publish 文档样例。 ## M2 Host 半边(0.5 天) - [ ] apply(ctx, config):配置白名单规范化 + 默认值 - [ ] 动态注册设置分区(feature-detect) - [ ] 日志工具与卸载清理 **DoD**:`dsh --profile
--dump-config` 能看到本插件层;非法配置打印可操作错误。 ## M3 Client 半边(2 天) - [ ] 面板骨架 + 主题样式注入(fmh- 前缀,dispose 可移除) - [ ] 数据获取层(超时/schema 校验/error 重试) - [ ] 列表行 + 展开详情四要素 - [ ] 分页器(窗口算法 + 首末页禁用) - [ ] 一键配置:settingsScope 写入 + YAML 兜底弹窗 - [ ] slot 注入 + 悬浮抽屉降级路径 - [ ] toast / 复制 / 空态 / 加载态 **DoD**:本地 mock API 全交互可用;断网/坏数据不崩溃;卸载无残留 DOM。 ## M4 PHP 后端(1.5 天) - [ ] db.php 自动建库迁移 + data 目录防护 - [ ] 公开分页 API(CORS 白名单/OPTIONS/钳制) - [ ] 登录(bcrypt/CSRF/限速/session 加固)+ 改密 - [ ] 模型 CRUD + 排序 + 启停 - [ ] 站点设置页(标题/CORS/底部菜单) - [ ] admin UI(纯 CSS,无前端框架) **DoD**:`php -l` 全绿;手工走查 CRUD→API 数据闭环;默认口令首登强制改。 ## M5 测试·审查·发布(1 天) - [ ] node:test 单测(slug/分页窗口/URL 校验/响应 schema/配置规范化/YAML 片段生成) - [ ] CI(lint + test + build 产物一致性检查) - [ ] 按《04-代码审查清单》《05-安全审查与验收》双审查并留档 - [ ] README(双语)、CHANGELOG、tag v0.1.0、GitHub topics、Release zip **DoD**:CI 绿;安全清单逐项勾选;市场可见。 --- ## 开发流程约定 1. **分支模型**:`main` 受保护;功能分支 → PR → 自查(04 清单)→ 合并。单人开发也保留 PR 留痕。 2. **提交规范**:Conventional Commits(feat/fix/docs/chore/refactor/test),CHANGELOG 由提交归纳。 3. **版本策略**:Semver。DSH 预览期破坏性适配升 MINOR(如 0.1→0.2),修复升 PATCH。 4. **兼容承诺**:每次适配新 DSH 版本在 CHANGELOG 标注"已验证版本号"。 5. **缺陷响应**:市场 issue 区按模板收集(环境/dsh 版本/复现步骤),P0(安装失败/崩溃)24h 内回应。 ## 任务依赖图(简化) ``` M1 ──► M2 ──► M3 ──┐ ╰──► M4 ───────┼─► M5 (M3/M4 可并行) ```