Files
MemRelay/projects/d5a7f581-c442-4554-87b9-ee723b8b0258/模块开发规范与验证命令.md
T

1.5 KiB
Raw Blame History

title, type, permalink, stable_id, scope, project_id, memory_type, status, revision, restored_from_commit, created_at, updated_at, tags
title type permalink stable_id scope project_id memory_type status revision restored_from_commit created_at updated_at tags
模块开发规范与验证命令 rule main/projects/d5a7f581-c442-4554-87b9-ee723b8b0258/模块开发规范与验证命令 3e6dcfc1-f561-415d-9356-b387347c9193 project d5a7f581-c442-4554-87b9-ee723b8b0258 rule active 1 6a6a895eaf 2026-09-23T15:10:30.838746+00:00 2026-09-23T15:10:30.838801+00:00
module
convention
testing
rbac
  1. 新业务按模块目录开发,不散改框架核心。前端 web/src/modules//(index.ts defineModule / api.ts / views / permissions.ts / i18n),key 用短横线;后端 server/app/modules//(__init__.py AppModule + api/services/repositories/models/schemas),key 用下划线。脚手架:node scripts/create-module.mjs。2) 权限 code 统一 action:<resource>:<action>(create/delete/update/read/operate),read 充当页面/导航访问门槛(授予任一动作自动展开 read);路由型页面权限已弃用。3) 建表:新增 model 即自动 create_all;加列用模块 table_syncs;稳定迁移用 migrations。4) 验证:前端 cd web && npm run test:smoke && npm run build(vue-tsc 严格、有 noUnusedLocals,未用导入会构建失败);后端 python -m compileall -q server/app + .venv\Scripts\python.exe -m pytest server/tests/test_<module>.py -q。5) 高危写操作用 require_web_session 限制仅 Web 登录态可调(API Token 不可)。