Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions dsh-mneme/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

## [Unreleased]

- **设置页加搜索:一张框扫全部组,两层折叠里的行也够得到(#653)**:设置页攒到 30+ 个开关后,「新增功能找不到入口」成了反复出现的抱怨(#607 的知识库、#653 的原话「浏览器的搜索功能在设置页面也搜不到『知识库』」)。浏览器 Ctrl+F 搜不到的机理很具体:**收起的组根本不在 DOM 里**——「全部设置」与「高级」两层折叠把不渲染的行藏在了 React 树之外,页内查找无从谈起。修法是在设置页顶部加一个常驻搜索框:有词时目录(#518)让位(跳转目标多半已被过滤掉,留着只会点到没反应),五组卡片按节过滤——**组标题或该组任一卡标题命中则整节原样显示**(搜「连接」应该看到全节而不是几行),**功能开关卡则切成命中行平铺**,两层折叠被绕开:折叠里的行恰恰是搜索最该够到的地方。行目录从六张常量表拼出来(`FEATURE_GROUPS` / `FEATURE_CHILDREN` / `FEATURE_ADVANCED_BOOLS` / `FEATURE_ENUMS` / `FEATURE_STRINGS` / `FEATURE_NUMBERS`),刻意不立第二份清单——任何一张表被绕开,那一层的行就从搜索里消失;四个没有通用渲染器的枚举键(embedProvider / 思考强度×2 / 地志档位)经 `SEARCH_ENUM_SOURCES` 补登记,取值直接引用各自已有常量。搜索分支的行渲染器与正常视图**同一份**(`boolRow`/`enumRow`/`strRow`/`numRow`,`enumRow` 为此加了 `valuesOverride` 形参而不是被克隆一份)——搜索路径改的行与正常路径逐字一致。子行在搜索结果里不缩进、不带 gate 标注:搜索结果是「这个键存在、可在这里改」,父子关系留给正常视图讲。全搜无果时有明确空态(点名搜索范围是名称/说明/键名),不是白屏也不是空卡。无新配置键(搜索不改任何行为,是纯视图过滤)、无新 CSS 色声明(布局走内联样式与既有类,#178 的对比度锁不受影响)。回归测试 9 条:索引必须走全六张表、**索引里每个键在双语词典各有一条标签**(76 键全量核对,缺一侧就会有一侧把键名当标签渲染)、目录让位与空态在场、`FeaturesCard` 唯一调用点且搜索分支复用四类渲染器、四条 i18n 键恰好中英各一条,以及评审补的四条:**每个用字面量渲染的行键都必须登记进某张可搜表**(`injectRotationTurns` 此前漏登记——它挂在自己的总闸下、不在任何组项数组里,只断言「索引引用了六张表」抓不到这一类)、搜索结果分支必须渲染 `saveError`(PUT 失败时控件回滚,不显示就成了「改了没反应」)、组内每张卡片标题都要在 `SECTION_TITLE_KEYS` 里(`configKeys.title` 此前缺席)、搜索框与空态文案必须分清「开关按行匹配」与「分组/卡片按标题匹配」。变异自证 8 例(索引删 `FEATURE_ADVANCED_BOOLS` / 删 `FEATURE_ENUMS` / 目录不让位 / enumRow 不传 valuesOverride / 漏登记 `injectRotationTurns` / 搜索分支不渲染 saveError / 漏登记 `configKeys.title` / 文案回退 → 各自变红),恢复后全绿。
- **品牌视觉换新:README 头图与插件列表图标**。三处 README(根、`dsh-mneme/`、`mcp/`)顶部改用 `images/mneme-banner-hero.webp`(1672×941,282 KiB)——原图 2.1 MiB 的 PNG 会让 `images/` 目录体积翻倍。根目录用相对路径,两个子目录用 raw 绝对地址:npm 详情页不解析相对图片路径,`../images/...` 在 npmjs.com 上必然裂图。
- **插件列表图标从手绘 SVG 换成位图**:`package.json` 的 `icon` 改为 `assets/icon.png`(256×256 RGBA、圆角透明、120 KiB,仍在宿主 `iconOf()` 的 256 KiB 上限内);`assets/icon.svg` 删除。列表图标不再要求与客户端内联 mark(`MNEME_MARK_D`)同形,`test/client.test.js` 的图标用例改验 PNG 魔数、IHDR 边长、位深与 RGBA 通道——宿主对坏文件是静默回落成通用插画,不报错。

Expand Down
Loading
Loading