Files
SecScore/src-tauri/AGENTS.md
T
Linkon 3d5724dbd7 添加AGENTS.MD
由oMo/init-deep和GPT5.3codex生成
2026-03-21 01:52:07 +08:00

1.6 KiB
Raw Blame History

后端知识库(src-tauri

作用域

本文件仅约束 src-tauri/Rust + Tauri)后端实现。

关键入口

  • src-tauri/src/main.rs:二进制入口,调用 secscore_lib::run()
  • src-tauri/src/lib.rs:应用装配中心(setupinvoke_handler、托盘/窗口、数据库启动)。
  • src-tauri/src/state.rs:全局状态容器。

模块分层

  • src-tauri/src/commands/Tauri IPC 命令边界层。
  • src-tauri/src/services/:业务服务层(鉴权、设置、主题、数据等)。
  • src-tauri/src/db/:连接、迁移、实体与仓储。
  • src-tauri/src/models/:模型与 DTO。

后端约束

  • 新命令必须在 commands/mod.rs 导出,并在 lib.rsinvoke_handler 注册。
  • 命令层优先做参数校验与权限校验,业务细节下沉至 services/
  • 涉及数据库结构或同步策略变更时,必须同步审阅 db/migration.rscommands/database.rs
  • 变更 board/SQL 查询相关能力时,优先白名单策略,避免扩散动态 SQL 风险面。

后端反模式

  • 不要在 commands/database.rs 继续堆新职责;优先拆分为更小模块。
  • 不要把 UI 或前端状态逻辑迁入 Rust 命令层。
  • 不要绕过统一状态容器直接创建长期悬挂资源。

后端验证

在仓库根目录执行:

pnpm lint
pnpm typecheck
pnpm tauri:build

CI/发布场景还需参考:.github/workflows/build.yml

说明

  • 当前 src-tauri/tauri.conf.jsonbeforeDevCommand/beforeBuildCommand 使用 npm run ...,与仓库默认 pnpm 并存;修改构建链路时请同步评估。