Files
2026Technology-Competition/data/import-verification/01-galaxy-nonstandard/galaxy-team-coding-conventions.yaml
T

68 lines
3.3 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# [DUPLICATE: exact] 重复自定义规则 no-console-log(检测目标完全一致)
# 如需启用,删除以下每行开头的 # 即可
# - id: no-console-log
# severity: warning
# description: 生产代码中不要使用 console.log / console.error 打日志,统一走封装的 logger
# message: 请使用 src/utils/logger.ts 封装的 logger,不要直接用 console.log / console.error
# languages: [javascript, typescript]
# duplicateOf: custom/no-console-log
# duplicateLevel: exact
- id: require-request-timeout
severity: warning
description: 发请求必须显式配置 timeout
message: 请求必须显式配置 timeout:常规接口 5s,支付类接口 10s
languages: [javascript, typescript]
# [DUPLICATE: exact] 重复自定义规则 no-hardcoded-secret(检测目标完全一致)
# 如需启用,删除以下每行开头的 # 即可
# - id: no-hardcoded-secrets
# severity: error
# description: 密钥、账号密码、内网地址等敏感配置不能写死在代码里
# message: 请将敏感配置放入 .env 或配置中心,不要硬编码在代码中
# duplicateOf: custom/no-hardcoded-secret
# duplicateLevel: exact
- id: no-empty-catch
severity: warning
description: catch 块不能什么都不干
message: catch 块至少应 logger.error 记录,或转换为业务异常向上抛出
languages: [java, javascript, typescript]
- id: max-function-length
severity: info
description: 单个函数不应超过 80 行(注释和空行不计),过长的函数需要拆分
message: 函数超过 80 行,建议拆分为更小、可复用、易测试的函数
# [DUPLICATE: exact] 重复 eslint/eqeqeq(检测目标完全一致)
# 如需启用,删除以下每行开头的 # 即可
# - id: strict-equality-required
# severity: error
# description: JS/TS 禁止使用 == 和 !=,一律使用 === 和 !==
# message: 请使用 === / !== 代替 == / !=,避免隐式类型转换问题
# languages: [javascript, typescript]
# duplicateOf: eslint/eqeqeq
# duplicateLevel: exact
- id: require-promise-catch
severity: error
description: Promise 必须挂 catchasync/await 必须用 try/catch 包裹
message: Promise 需要 catchasync/await 需要 try/catch,避免 unhandled rejection
languages: [javascript, typescript]
# [DUPLICATE: exact] 重复 eslint/no-var(检测目标完全一致)
# 如需启用,删除以下每行开头的 # 即可
# - id: no-var
# severity: warning
# description: 禁止使用 var 声明变量,应使用 const/let
# message: 请使用 const(需要重新赋值时用 let)替代 var
# languages: [javascript, typescript]
# duplicateOf: eslint/no-var
# duplicateLevel: exact
- id: service-entry-logging
severity: info
description: Java Service 层公开方法入口需要记录日志
message: Service 公开方法入口请记录一条包含订单号、用户 ID 等关键字段的日志
languages: [java]
# [DUPLICATE: exact] 重复自定义规则 no-sql-injection(检测目标完全一致)
# 如需启用,删除以下每行开头的 # 即可
# - id: no-sql-injection
# severity: error
# description: SQL 禁止使用字符串拼接,必须参数化查询或使用 ORM
# message: 请使用参数化查询或 ORM 参数绑定,不要字符串拼接 SQL
# languages: [java]
# duplicateOf: custom/no-sql-injection
# duplicateLevel: exact