4fe0b5a963
本次提交完成了项目核心基础架构升级: 1. 新增动态API中间件与权限控制系统,支持匿名/鉴权接口分离 2. 搭建云同步服务体系,包含认证、任务同步、安全策略等核心模块 3. 实现语音控制全链路,从STT/意图解析到命令执行 4. 新增任务类型、附件实体与相关仓储接口 5. 重构前端配置与代理规则,统一后端端口为5057 6. 新增多平台测试项目与CI脚本优化 7. 完善项目文档与代码注释规范 移除了旧版迁移文件与冗余代理配置,调整项目结构适配跨平台部署需求。
37 lines
2.3 KiB
Markdown
37 lines
2.3 KiB
Markdown
---
|
||
alwaysApply: true
|
||
description: 强制项目注释规范(C# / TypeScript):新增或修改代码必须补全必要注释,便于维护与跨平台开发。
|
||
---
|
||
|
||
# 注释规范(必须遵守)
|
||
|
||
> 适用范围:本规则属于 **全局规则**(跨项目通用),针对 C# / TypeScript / Vue 代码的注释要求。
|
||
|
||
## 通用
|
||
|
||
- 新增或修改的代码必须包含足够注释,使"不了解该模块的人"也能理解其职责、边界与关键决策。
|
||
- 优先使用 **XML 文档注释**(`///`),而不是随意的行内注释。
|
||
- 不允许无意义注释(例如"初始化变量""进入方法")。注释必须解释"为什么/约束/边界/副作用"。
|
||
- 不允许出现"TODO/FIXME"但无上下文或无处理方案的注释。
|
||
|
||
## C#(.NET / MAUI)
|
||
|
||
- 所有 `public` / `protected` 的 **类、接口、方法、属性** 必须提供 XML 文档注释,至少包含:
|
||
- `summary`:一句话说明用途,不允许重复嵌套 `<summary>` 标签
|
||
- 对参数/返回值:构造函数和方法的每个参数都必须有对应 `param`,包括可选参数、`logger` 等基础设施参数;有返回值时补充 `returns`
|
||
- 对异常或副作用:在 `summary` 中明确说明(例如会注册系统钩子/会启动后台服务)
|
||
- XML 文档注释必须紧贴被说明的语言元素;若元素还有特性(如 `[AttributeUsage]`),顺序必须是 XML 注释、特性、类型/成员声明,避免 `///` 落在特性之后导致 CS1587。
|
||
- `<see cref="..."/>` 只引用当前项目能解析的类型/成员;跨程序集或未引入命名空间时改用普通文本,避免 CS1574。
|
||
- 对 **跨平台逻辑**:
|
||
- 禁止在同一文件内混写多个平台的大段 `#if` 实现;应优先使用 `partial`、接口与平台目录分离。
|
||
- 平台分离后的公共入口处必须说明"平台差异在哪里、默认实现是什么、为什么这么做"。
|
||
- 对 **异步/后台任务**:
|
||
- 必须说明启动时机、错误处理策略、是否需要 UI 线程、以及是否可并发/可重入。
|
||
- 对 **安全/隐私**:
|
||
- 禁止在日志或注释中输出密钥、Token、用户隐私信息。
|
||
|
||
## TypeScript / Vue(前端)
|
||
|
||
- 对导出的函数/类型必须有注释,解释用途与输入输出。
|
||
- 对"与后端/MAUI 交互"的协议字段(例如全局变量、事件名)必须注释说明来源与约束。
|