问题与价值
Web snapshot 对模型投影设有上限,Composer 仅使用 snapshot.models,但没有展示 modelsOmitted。模型较多时,用户无法知道列表不完整,也没有办法在菜单中找到被省略的可用模型。
已验证
- 协议常量:
WEB_MAX_MODELS = 250。
- snapshot 构建:保留当前模型并限制其余模型数量;count 或总字节裁剪通过
modelsOmitted 反馈。
- Composer:直接映射 snapshot.models,未消费该截断信息。
- 组件探针设置
modelsOmitted: 17、truncated: true 后,菜单没有任何省略数量文本。
没有在真实账户中配置 250 个模型;这里的证据是生产裁剪代码和受控组件 fixture,不是用户现场规模测量。
范围与验收
- 列表被截断时,明确显示“当前展示数量/还有多少未展示”或同等准确提示。
- 给出有界的查找或分页入口,使用户能找到并准确选择投影外的可用模型;只对已截断列表做本地过滤不能满足这个条件。
- 继续保留 snapshot 的 count/byte 上限,不用取消上限或一次加载全部模型解决。
- 搜索/分页请求具有取消、过期结果隔离、错误及空结果反馈;沿用 Pi 的模型可用性来源。
- 覆盖 count 截断、byte 截断、当前模型保留、同名模型、快速更换查询及工作区模型集变化。
- 无省略的普通列表保持简单。
这是 #348 的模型发现子任务,归入 #455;建议按中等优先级的可用性改进处理,设计确认后再认领实现。
验证边界
源码基线:d6582f04d00dab7b14180a4dd352963384df8177,本机 Pi 0.85.1、单一 source-installed OpenPI。使用隔离 checkout 加入 React/jsdom 复现探针,bunx vitest run tests/web/app-render.spec.ts 16/16 通过,其中 3 条探针断言当前缺陷行为。未改生产代码、未向模型发送请求、未操作用户真实 Session。这里是组件级复现,不是完整真实浏览器或所有 Provider 的验收。
问题与价值
Web snapshot 对模型投影设有上限,Composer 仅使用 snapshot.models,但没有展示
modelsOmitted。模型较多时,用户无法知道列表不完整,也没有办法在菜单中找到被省略的可用模型。已验证
WEB_MAX_MODELS = 250。modelsOmitted反馈。modelsOmitted: 17、truncated: true后,菜单没有任何省略数量文本。没有在真实账户中配置 250 个模型;这里的证据是生产裁剪代码和受控组件 fixture,不是用户现场规模测量。
范围与验收
这是 #348 的模型发现子任务,归入 #455;建议按中等优先级的可用性改进处理,设计确认后再认领实现。
验证边界
源码基线:
d6582f04d00dab7b14180a4dd352963384df8177,本机 Pi 0.85.1、单一 source-installed OpenPI。使用隔离 checkout 加入 React/jsdom 复现探针,bunx vitest run tests/web/app-render.spec.ts16/16 通过,其中 3 条探针断言当前缺陷行为。未改生产代码、未向模型发送请求、未操作用户真实 Session。这里是组件级复现,不是完整真实浏览器或所有 Provider 的验收。