refactor: modernize codebase for Go 1.26 and fix adapter issues

- Upgrade Go version from 1.24 to 1.26.1 with updated dependencies
- Replace interface{} with any type throughout codebase
- Add message deduplication in OneBot11 adapter to prevent duplicate event processing
- URL-encode access token in WebSocket connections to handle special characters
- Remove duplicate bot startup hooks in DI providers (now handled by botManager.StartAll)
- Use slices.Clone and errgroup.Go patterns for cleaner concurrent code
- Apply omitzero JSON tags for optional fields (Go 1.24+ feature)
This commit is contained in:
lafay
2026-03-18 01:22:49 +08:00
parent f3a72264af
commit f3220a2381
32 changed files with 2262 additions and 296 deletions

View File

@@ -599,12 +599,12 @@ func OnlyToMe() HandlerMiddleware {
selfID := event.GetSelfID()
// 检查消息段中是否包含@机器人的消息
if segments, ok := data["message_segments"].([]interface{}); ok {
if segments, ok := data["message_segments"].([]any); ok {
for _, seg := range segments {
if segMap, ok := seg.(map[string]interface{}); ok {
if segMap, ok := seg.(map[string]any); ok {
segType, _ := segMap["type"].(string)
if segType == "at" || segType == "mention" {
segData, _ := segMap["data"].(map[string]interface{})
segData, _ := segMap["data"].(map[string]any)
// 检查是否@了机器人
if userID, ok := segData["user_id"]; ok {
if userIDStr := fmt.Sprintf("%v", userID); userIDStr == selfID {