1.4 KiB
1.4 KiB
版本 Profile 路由
职责边界
- CraftKit 公共知识库维护根据官方资料独立重建的框架版本差异,例如未来的 Spring 2、Spring 3、Vue 2 和 Vue 3 profile。
- 当前项目在
.craftkit/project.json中声明实际框架、精确版本和所选 profile。 - 项目的内部框架、依赖、组件库、历史兼容要求和覆盖规则放在
.craftkit/standards/,不得写入公共 profile。
选择流程
- 优先读取
technology.frameworks中的name、version和profile。 - 项目未声明时,从 Maven、Gradle、npm 等构建清单与锁文件只读探测,并展示证据。
- 精确版本可以确定但没有 profile 映射时,只使用框架中性基线并报告缺口。
- 版本或映射无法可靠确定时询问用户,不默认最新版本。
- 普通开发任务只加载当前 profile;升级、迁移或版本比较任务才同时加载明确的源 profile 与目标 profile。
- 项目规范覆盖公共 profile 时采用项目规则,并在结果中标出冲突和覆盖依据。
防止混用
- 未被当前 profile 路由命中的版本规范不得作为普通开发建议。
- 公共 profile 尚未建立时,不创建空目录或假设规则存在。
- 框架主版本不足以判断兼容性时继续使用精确版本、生态依赖和项目覆盖规则缩小范围。
- 代码中出现其他版本写法只能作为迁移风险,不代表项目同时采用多个 profile。