[ui] Beta.4 手改学词设置入口消失,请恢复开关与参数配置

Aperta
#1,401 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
rust, tauri, typescript

Direzione di ricerca

Start with openless-all/app/src/pages/settings/navigation.ts, tabs.tsx, and the existing VocabularyLearningSection.tsx; compare the removed navigation and rendering paths in commit 5055fc932c07f629a0dbebf2122709c31cbcdd1e. Update navigation.test.ts, whose current assertion expects the entry to be absent, and trace the existing save and reload behavior for the settings. Done means the applicable platform exposes the page and its controls, changes persist, and tests cover those behaviors while preserving platform and privacy limits.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

area:ui bug P2
现象

有用户反馈升级到 OpenLess 2.0.2-Beta.4 后找不到「手改学词」的设置入口。源码核查确认:入口已从设置导航和页面渲染中移除,并非移动到其他设置页;后端功能和配置组件仍保留。请求恢复设置入口、启用开关及学习参数配置。

版本与证据
  • Beta.4 发布标签:v2.0.2-Beta.4-tauri,对应提交 e5c0f247d412d19fac6ee571faf3f3466cb34501。
  • 本次检查的上游 beta:c002b56c38d81bcd5044ddb22597a4e78ff2a88d。Beta.4 与该提交在下述相关设置/后端文件上没有差异,尚未恢复入口。
  • 入口移除发生在设置分类重构提交:
    https://github.com/Open-Less/openless/commit/5055fc932c07f629a0dbebf2122709c31cbcdd1e
    • navigation.ts 删除了 vocabularyLearning 导航项及适用平台判断。
    • tabs.tsx 删除了 VocabularyLearningSection 的导入和渲染分支。

当前代码的具体状态:

  1. 导航中没有手改学词入口。
    https://github.com/Open-Less/openless/blob/c002b56c38d81bcd5044ddb22597a4e78ff2a88d/openless-all/app/src/pages/settings/navigation.ts#L15-L42
  2. 现有测试反而要求该入口不存在,因此不会把这项功能可达性缺失识别为回归:
    https://github.com/Open-Less/openless/blob/c002b56c38d81bcd5044ddb22597a4e78ff2a88d/openless-all/app/src/pages/settings/navigation.test.ts#L128-L133
  3. 原设置组件仍在,但没有页面挂载它,其中仍有开关、观察时长、建议保留时长、最大词长及恢复默认参数:
    https://github.com/Open-Less/openless/blob/c002b56c38d81bcd5044ddb22597a4e78ff2a88d/openless-all/app/src/pages/settings/VocabularyLearningSection.tsx#L16-L99
  4. 后端配置和功能门控仍在,默认关闭。
    https://github.com/Open-Less/openless/blob/c002b56c38d81bcd5044ddb22597a4e78ff2a88d/openless-all/app/crates/openless-core/src/shared_types.rs#L2055-L2057
    https://github.com/Open-Less/openless/blob/c002b56c38d81bcd5044ddb22597a4e78ff2a88d/openless-all/app/src-tauri/src/core_adapters.rs#L4791-L4806
用户侧检查路径
  1. 使用 Beta.4,打开设置并查找原来的「手改学词」设置页。
  2. 当前导航没有该入口,也没有其他页面提供对应开关和参数。
  3. 无法通过正常界面开启/关闭手改学词或调整观察与建议参数。

以上用户侧现象来自反馈;本次实际完成的是版本、Git 差异和源码路径核查,未运行安装包做 UI 复现,不将静态测试断言视为运行时验证。

影响
  • 新装或原来未开启的用户,默认关闭却没有正常界面可以开启。
  • 原配置已开启的用户,后端仍可能按原配置继续工作,但无法从设置中关闭或调整参数;实际是否生效仍受平台和输入路径限制。
  • 用户会误以为整个功能已被删除。现状是「后端能力仍在、用户控制入口消失」,也削弱了用户对手改观察功能的可控性。
建议接受标准
  • 恢复清晰可发现的「手改学词」设置入口,在既有适用平台恢复导航与组件挂载;可放回「设置 → 实验功能」,或放在与词典相关且容易找到的位置,不要求用户修改配置文件。
  • 恢复「启用手改学词」开关,能够正常保存、重新加载;默认关闭及已有用户的启用/禁用选择保持不变,不以强制默认开启替代恢复入口。
  • 恢复观察时长、建议保留时长、最大词长和恢复默认参数的控制,保留现有合法范围、保存错误反馈及用户原有参数。
  • 保持现有隐私、权限、敏感输入框排除及平台能力边界,不为恢复入口放宽保护或扩大手改观察范围。
  • 更新当前「入口不存在」的导航断言,并增加正向覆盖:适用平台能找到入口、进入后实际渲染开关和参数、修改后保存并重新进入/重启仍保持;不能只测试组件文件存在。
  • 非适用平台按现有能力边界处理,不把恢复入口扩展成新增平台实现任务。
TODO / 不确定项
  • 提交说明没有明确交代是否有意下线该设置;但本 issue 的明确诉求是恢复用户控制入口,而不是删除仍存在的后端能力。
  • 最终导航归属可由维护者决定,要求保持功能可达、开关可控且配置兼容。
  • 本 issue 仅处理 Beta.4 设置入口回归,不涉及建议卡片定位(#1238)或扩大宿主观察能力。
Lingua principale
Rust
Stelle
3.7k
Fork
349
Merge medio
1g 12h
PR unite (30g)
99

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Open-Less/openless

Tutte le issue di Open-Less/openless

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.