后端与全仓代码质量清理(golangci 扩展集 · 测试质量 · 并发安全 · 文档同步)

代码质量全量清理,零行为变化:golangci 扩展集 13 类 linter(gosec/modernize/perfsprint/canonicalheader/usestdlibvars/wastedassign/intrange/errorlint/forcetypeassert/recvcheck/exhaustive/unparam)全量修复,测试代码质量(testifylint/thelper/usetesting)25→0,frpc 进程生命周期真 bug(进程组击杀)、全仓 go test -race 6 类数据竞争(含 1 个生产竞争)、SPDX license 头补齐 131 文件、前端测试套件 next-intl 迁移后 44 失败→全绿、过期 swagger 文档重新生成、pnpm-workspace 构建审批。

Experiments: #2-#17, #18, #20, #21, #23
Metric: total_issues 108 → 8 (-92.6%)
This commit is contained in:
ryan
2026-08-16 21:23:37 +08:00
parent 5a8722ff07
commit 2f60329886
292 changed files with 1362 additions and 793 deletions
+1 -1
View File
@@ -41,7 +41,7 @@ func GenerateTokenString() (string, error) {
if _, err := rand.Read(bytes); err != nil {
return "", err
}
return fmt.Sprintf("at_%s", hex.EncodeToString(bytes)), nil
return "at_" + hex.EncodeToString(bytes), nil
}
// HashToken 计算 Token 的 SHA-256 哈希值用于数据库存储与查询
+1 -1
View File
@@ -43,7 +43,7 @@ type AuthSource struct {
}
// TableName 表名
func (AuthSource) TableName() string {
func (*AuthSource) TableName() string {
return "w_auth_sources"
}
+1 -1
View File
@@ -52,6 +52,6 @@ func (cv *ConfigVersion) AfterCreate(_ *gorm.DB) (err error) {
}
// TableName returns the GORM table name.
func (ConfigVersion) TableName() string {
func (*ConfigVersion) TableName() string {
return "of_config_versions"
}
+1 -1
View File
@@ -35,7 +35,7 @@ type PushChannel struct {
}
// TableName 指定 GORM 表名
func (PushChannel) TableName() string {
func (*PushChannel) TableName() string {
return "w_push_channels"
}
+1 -1
View File
@@ -24,7 +24,7 @@ type PushEvent struct {
}
// TableName 指定 GORM 表名
func (PushEvent) TableName() string {
func (*PushEvent) TableName() string {
return "w_push_events"
}
+1 -1
View File
@@ -26,7 +26,7 @@ type Template struct {
}
// TableName 表名
func (Template) TableName() string {
func (*Template) TableName() string {
return "w_templates"
}
+1 -1
View File
@@ -61,7 +61,7 @@ type User struct {
}
// TableName 表名
func (User) TableName() string {
func (*User) TableName() string {
return "w_users"
}