AskaEth
bff57bd1ae
CI / Backend (build / vet / test / cross-compile) (push) Has been cancelled
CI / Frontend (tsc + vite build) (push) Has been cancelled
feat(search): 结果条数上限 5 → 10,并让「上限」真的是上限
主人原话:「返回五条结果会不会太少了?」。裁定:**上限抬高到 10,且它是真上限**
(模型要 50 也只给 10);模型要更少(3)时**尊重模型**;缺省/非法(≤0/非数)⇒ 上限。
- plugins/tools/io/web_search.go:`n := resultLimit(s.maxResults, m)` 一处收口
(原来是 `if count>0 { n = count }` ⇒ 模型的 count 能顶掉配置上限,与
.env.example 写的「条数上限」不符 —— 那是一条真口径缺陷,本次一并修正)。
- internal/config/websearch.go:`WEB_SEARCH_MAX_RESULTS` 代码默认值 5 → 10
(三处口径现已一致:env 默认 10 / io 包 defaultMaxResults 10 / 各家发给上游的
请求区间是另一回事,未动)。
- 生产:`data/config/plugins/web-search.json` 的 `maxResults` 5 → 10 + 一次
saveProvider 触发**热重载**(applied+registered),盘上已生效。
验收(主会话复跑 + 亲自打两个变异):
- io 包 / internal/config / cmd/cyrene 相关用例全绿;
- 变异 A(拆掉上限、恒取 50)⇒ **4 条用例变红**(含「默认上限 10」「count 非数值
⇒ 上限」「count=0 ⇒ 上限」「既有 MaxResultsOption」);
- 变异 B(默认值退回 5)⇒ internal/config 的默认值断言变红。
🔴 顺带挖出一条真缺陷(**本片只报不修,等派**):`maxResults` **在面板 UI 上
根本改不了** —— ① `search/panel.go` 的字段表里没有这个字段(输入框不显示);
② `saveProvider` 只并 provider/apiKey/baseUrl/enabled;③ `mergeSelectionPatch`
只处理 primary/fallback ⇒ **手工塞进 values 也会被静默丢弃**(「我改了它却没变」
成立)。修它要给面板加一个数字字段 + 三态落 `f.MaxResults`,属**管理面板对外契约
变更**(须同步 Docs/api-client.md),留给主会话。
2026-10-07 10:58:40 +08:00
..
2026-09-05 23:09:26 +08:00
2026-10-04 13:58:18 +08:00
2026-10-05 12:53:17 +08:00
2026-10-05 13:50:29 +08:00
2026-10-05 13:50:29 +08:00
2026-09-30 08:51:38 +08:00
2026-10-04 16:58:06 +08:00
2026-10-03 16:55:22 +08:00
2026-10-03 20:12:29 +08:00
2026-10-04 16:58:06 +08:00
2026-10-06 08:04:12 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:39:33 +08:00
2026-10-04 16:39:33 +08:00
2026-10-03 15:22:03 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:58:06 +08:00
2026-10-03 20:12:29 +08:00
2026-10-04 19:15:12 +08:00
2026-10-04 14:30:26 +08:00
2026-10-03 19:54:22 +08:00
2026-10-04 16:58:06 +08:00
2026-09-08 23:20:12 +08:00
2026-10-04 16:58:06 +08:00
2026-10-03 21:33:40 +08:00
2026-10-04 16:58:06 +08:00
2026-10-06 18:46:58 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 11:30:39 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:58:06 +08:00
2026-10-04 16:58:06 +08:00
2026-10-07 10:18:58 +08:00
2026-10-06 14:12:23 +08:00
2026-10-07 10:58:40 +08:00
2026-10-06 14:12:23 +08:00
2026-10-07 10:18:58 +08:00
2026-10-07 10:18:58 +08:00
2026-10-06 15:59:12 +08:00
2026-10-06 15:59:12 +08:00
2026-10-07 09:56:37 +08:00
2026-10-07 10:18:58 +08:00
2026-10-06 15:59:12 +08:00
2026-10-05 12:12:31 +08:00
2026-10-05 12:12:31 +08:00
2026-10-07 10:37:33 +08:00
2026-10-07 10:37:33 +08:00
2026-10-07 09:34:44 +08:00
2026-10-06 21:48:50 +08:00
2026-10-06 20:25:16 +08:00
2026-10-06 21:16:23 +08:00
2026-10-06 21:48:50 +08:00
2026-10-06 21:48:50 +08:00
2026-10-06 21:48:50 +08:00
2026-10-06 21:16:23 +08:00
2026-10-06 21:48:50 +08:00
2026-10-05 13:54:57 +08:00
2026-10-05 13:54:57 +08:00
2026-10-04 12:49:40 +08:00
2026-10-04 13:07:52 +08:00
2026-10-04 16:58:06 +08:00
2026-10-05 14:10:24 +08:00
2026-10-05 16:19:32 +08:00
2026-10-04 12:07:40 +08:00
2026-10-04 19:25:00 +08:00
2026-10-06 15:59:14 +08:00
2026-10-06 15:59:14 +08:00
2026-10-04 19:15:12 +08:00
2026-10-04 17:57:08 +08:00
2026-10-04 17:57:08 +08:00
2026-10-04 21:01:30 +08:00
2026-10-04 21:01:30 +08:00
2026-10-05 16:19:32 +08:00
2026-10-05 16:19:32 +08:00
2026-10-04 19:55:18 +08:00
2026-10-07 09:34:44 +08:00
2026-10-04 19:41:44 +08:00
2026-10-04 19:41:44 +08:00
2026-10-04 19:15:12 +08:00
2026-10-04 19:41:44 +08:00
2026-10-07 10:18:58 +08:00
2026-10-06 08:04:12 +08:00
2026-10-06 08:04:12 +08:00
2026-10-05 11:29:36 +08:00
2026-10-05 11:29:36 +08:00
2026-10-06 09:03:57 +08:00
2026-10-07 10:08:19 +08:00
2026-10-07 10:18:58 +08:00
2026-10-05 15:38:53 +08:00
2026-10-07 09:59:56 +08:00
2026-10-06 21:16:23 +08:00
2026-09-07 13:43:18 +08:00
2026-10-05 13:23:52 +08:00
2026-10-05 13:23:52 +08:00
2026-10-04 22:16:26 +08:00
2026-10-04 22:16:26 +08:00
2026-10-06 09:04:04 +08:00
2026-10-05 22:38:20 +08:00
2026-10-06 09:04:04 +08:00
2026-10-06 08:04:12 +08:00