Files
DevFlow/docs/05-代码审查/settings+审计+布局后端走查-2026-08-09.md

5.9 KiB
Raw Permalink Blame History

Settings + 审计 + 布局 + 后端命令走查报告(2026-08-09)

走查日期:2026-08-09 范围:Settings.vue + settings 组件 / AuditLog.vue / layout + AppSidebar + App.vue + 全局样式 / 后端 src-tauri/src/commands 全模块 方法:3 路并行 Explore agentSettings+AuditLog / layout+sidebar+全局 / 后端命令) 性质:只走查登记,不实施代码(守 session-role-diagnose-only 关联:全系统模块走查(阶段②)第二批


一、Settings + AuditLog29 项)

P28

SA-1 AuditLog 决策者列 i18n 缺键(decided_by 有 auto_trust/auto_dedup/cache_hit 等 6 值,i18n 只 human/auto → 渲染 key 串)· SA-2 对话 tab 角色标签硬编码中文不随 locale · SA-3 审计列表 load 无 seq 守卫(筛选竞态)· SA-4 toggleConv 竞态 · SA-5 ProviderPanel 脏表单切导航静默丢改动 · SA-6 单模型冗余标签全隐藏 · SA-7 池权重 debounce 跨 provider 冲突 · SA-8 连接密码明文存 localStorage

P321

SA-9 对话 spinner 类名未定义 · SA-10 切回 audit tab 不刷新 · SA-11 对话 tab 无刷新入口 · SA-12 加载中整表替换闪烁 · SA-13 空态文案误导 · SA-14 对话详情全量渲染无分页 · SA-15 对话列表固定 200 条 · SA-16 对话详情无空态 · SA-17 样式 token 混用 · SA-18 maskKey 8 字符泄露 · SA-19 测试连接后 savedSnapshot 未刷新 · SA-20 模型表格 weight 无前端 clamp · SA-21 设为默认无 in-flight 禁用 · SA-22 ConnectionPanel 无脏确认 · SA-23 ConnectionPanel 保存成功无 toast · SA-24 AdvancedSection 假保存反馈 · SA-25 PerformanceSection 并发 0 弹成 3 · SA-26 KnowledgePanel 加载后冗余 save · SA-27 KnowledgePanel min_messages 无 clamp · SA-28 AllowedDirsPanel 删除无确认 · SA-29 AppearanceSection 不监听 OS 主题 · SA-30 .btn/.empty-hint 双源定义(settings.css 覆盖 global.css)· SA-31 搜索滚动部分索引项失效

二、layout + sidebar + 全局(21 项)

P11

  • LS-1 ConfirmDialog Enter 误触危险操作(焦点在取消按钮按 Enter → emit result(true) 执行删除,preventDefault 抑制取消分支,安全隐患)

P29

LS-2 AppSidebar 收缩偏好每次重启丢失(子组件 onMounted 早于父组件 loadAll)· LS-3 AppLayout 小屏 media query 被内联样式覆盖(100vw 失效)· LS-4 nav-link 活跃指示条被 overflow 裁剪· LS-5 App.vue startApprovalPopup 未排除 ai-detached 窗口(重复审批浮窗)· LS-6 Paginator 越界无自愈(删除后 page 超界空白)· LS-7 路由切换无 scrollBehavior 滚动残留 · LS-8 亮色主题白色透明底不可见(version 徽章/滚动条)· LS-9 ConfirmDialog 无 aria/focus trap · LS-10 --df-primary 与 --df-accent 重复 token

P311

LS-11 AiHome 关闭面板后空白 · LS-12 主题启动 FOUC · LS-13 toast 无 aria-live · LS-14 df-data-changed 监听无窗口守卫(分离窗口无用全量 load)· LS-15 data-changed 无 knowledge/workflow 分支 · LS-16 Paginator 无 aria-label + 页码爆炸 · LS-17 纯图标按钮无 aria-label · LS-18 AppLayout resize 监听未清理 · LS-19 router.replace 未 catch · LS-20 退出最大化不持久化 · LS-21 primaryNav badge 死代码 + v-html XSS 面 + Ctrl+I 大小写

三、后端命令(45 项)

P18

  • BE-CMD-1 task update_task 漏 queue 校验(可写非法 queue/queue-status 不一致)
  • BE-CMD-2 task count_tasks 与 list_tasks 过滤维度不一致count 超算致翻页空页)
  • BE-CMD-3 project update_project 通用 update_field 裸奔(白名单含 id/created_at/status/path 零校验,可改主键致子表悬空)
  • BE-CMD-4 idea update_idea 无校验status 可写任意/绕过 promote_idea 得半立项)
  • BE-CMD-5 task update_field 可更新已软删任务get_by_id 不过滤 deleted_at
  • BE-CMD-6 idea evaluate_idea 无条件覆盖 pending_review(打回终态)
  • BE-CMD-7 idea promote_idea 读-改-写竞态(双击重复立项 + 补偿非原子)
  • BE-CMD-8 task create/reparent/move 不重算父聚合(父 status 陈旧)

P215

BE-CMD-9 update_task content_json 无 JSON 校验 · BE-CMD-10 create_task 未校验 priority 值域 · BE-CMD-11 delete_task 级联不清理 task_links · BE-CMD-12 relocate_project_path 存非规范化路径+无 .. 拦截 · BE-CMD-13 relocate 两步写非原子 · BE-CMD-14 find_binding_conflict 全表扫 N+1 · BE-CMD-15 update_idea 返回 bool 不存在静默假成功 · BE-CMD-16 save_template 可覆盖内置模板 · BE-CMD-17 update_project stack 无 JSON 校验 · BE-CMD-18 create_task 空 title · BE-CMD-19 get_task_by_id 返软删任务 · BE-CMD-20 update_task 合法 status 落白名单错误 · BE-CMD-21 import_projects_batch 同路径重复绑定 · BE-CMD-22 update_idea status 可写 promoted 半立项 · BE-CMD-23 idea related_ids/scores 非法 JSON

P322

BE-CMD-24~45 见详单(create_idea 空 title / list_ideas status 不校验 / knowledge kind/confidence 不校验 / knowledge_save_config 先改内存 / workflow list_workflow_executions 全表拉 / approve_human_approval 不校验存活 / run_workflow 不校验 task_id / services environment 不校验 / ci_status 静默返空 / commit_sha 未校验 / events total 窗口封顶 等)


四、优先级建议

P1(确定性/安全,优先修)LS-1 ConfirmDialog Enter 误触 → BE-CMD-3/4 update_project/idea 裸奔 → BE-CMD-1 update_task queue → BE-CMD-2 count/list 不一致 → BE-CMD-5 软删可改 → BE-CMD-8 父聚合陈旧 P2(体验/数据)SA-1 决策者 i18n → LS-2 sidebar 偏好丢失 → LS-3 小屏布局 → SA-5 脏表单丢改动

五、登记去向

  • 本报告:docs/05-代码审查/settings+审计+布局后端走查-2026-08-09.md
  • 看板:docs/todo.md 增登记条目
  • 全系统索引:已更新(前端+后端全走查完成)