使用背景
把 MCPServer 作为 AI 编程助手的文档源使用时,下游项目引用的是特定版本的 BootstrapBlazor(例如项目锁定 10.8.1)。助手查询组件文档的目的,是拿到与项目实际使用版本一致的参数表和示例——但现在做不到。
痛点
-
提取永远跟随 main 最新,无法钉住版本
夜间任务固定 clone/pull 主分支最新,提取产物只有「最新 main」这一份。对锁定旧版本的项目,查到的参数/示例可能与实际使用版本不一致,AI 助手据此生成的代码会引用错误参数。也没有任何配置能指定「我要 10.8.1 的文档」。
-
组件参数表的口径不是被提取仓库的版本
生成组件清单/参数表时反射的是服务进程内已加载的 BootstrapBlazor 程序集——也就是 MCPServer 自身管理页 UI 引用的包版本(当前 10.3.2),而不是刚从仓库源码构建出来的 DLL。这意味着无论提取哪个版本的仓库,参数表始终反映宿主包版本,与「提取了什么版本」脱节。
-
单一工作副本,无法多版本并存
同一时间只能保留一个版本的产物;想对照两个版本(比如评估升级差异)只能整体重提取、互相覆盖,切换一次就要等完整构建。同时无条件 pull 也与「钉住某个 tag」天然冲突。
-
提取失败是静默的
提取过程中的异常被整体 catch 吞掉,产物不完整也无从感知;没有任何状态或失败原因可以查询(夜间失败后第二天只会发现文档缺失)。
期望的行为(需求层面)
- 可通过配置钉住某个 BootstrapBlazor 版本(tag 或分支),提取与夜间任务都围绕钉住版本工作;
- 支持多个版本的文档并存,查询时可带可选的版本参数,缺省使用钉住版本;版本号写法宽容(如
10.8.1 / v10.8.1 等价命中);
- 组件参数表与被提取、构建的目标仓库版本一致,与服务自身 UI 用的包版本无关;
- 提取可按需触发(不需要等到凌晨三点),进行中/失败状态可查询,失败有明确原因。
使用背景
把 MCPServer 作为 AI 编程助手的文档源使用时,下游项目引用的是特定版本的 BootstrapBlazor(例如项目锁定 10.8.1)。助手查询组件文档的目的,是拿到与项目实际使用版本一致的参数表和示例——但现在做不到。
痛点
提取永远跟随 main 最新,无法钉住版本
夜间任务固定 clone/pull 主分支最新,提取产物只有「最新 main」这一份。对锁定旧版本的项目,查到的参数/示例可能与实际使用版本不一致,AI 助手据此生成的代码会引用错误参数。也没有任何配置能指定「我要 10.8.1 的文档」。
组件参数表的口径不是被提取仓库的版本
生成组件清单/参数表时反射的是服务进程内已加载的 BootstrapBlazor 程序集——也就是 MCPServer 自身管理页 UI 引用的包版本(当前 10.3.2),而不是刚从仓库源码构建出来的 DLL。这意味着无论提取哪个版本的仓库,参数表始终反映宿主包版本,与「提取了什么版本」脱节。
单一工作副本,无法多版本并存
同一时间只能保留一个版本的产物;想对照两个版本(比如评估升级差异)只能整体重提取、互相覆盖,切换一次就要等完整构建。同时无条件 pull 也与「钉住某个 tag」天然冲突。
提取失败是静默的
提取过程中的异常被整体 catch 吞掉,产物不完整也无从感知;没有任何状态或失败原因可以查询(夜间失败后第二天只会发现文档缺失)。
期望的行为(需求层面)
10.8.1/v10.8.1等价命中);