refactor(core): codebase quality cleanup

- Remove user-level model settings (chat_model_id, memory_model_id,
  embedding_model_id, max_context_load_time, language) from users table
- Merge migration 0002 into 0001, remove compatibility migrations
- Delete dead conversation/resolver.go (1177 lines, only flow/resolver.go used)
- Remove type aliases (Chat=Conversation, types_alias.go)
- Fix SQL: remove AND false stub, fix UpdateChatTitle model_id,
  reset model IDs in DeleteSettings, add preauth expiry filter,
  add ListMessages limit, remove 10 dead queries
- Extract shared handler helpers (RequireChannelIdentityID, AuthorizeBotAccess)
- Rename internal/router to internal/channel/inbound
- Fix identity confusion: remove UserID->ChannelIdentityID fallbacks
- Fix all _ = var patterns with proper error logging
- Fix error propagation: storeMessages, rescheduleJob, botContainerID
- Fix naming: ModelId->ModelID, active->is_active, Duration semantic fix
- Remove dead code: mcpService, ReplyTarget, callMCPServer, sshShellQuote,
  buildSessionMetadata, ChatRequest.Language, TriggerPayload.ChatID
- Fix code quality: errors.Is(), remove goto, CreateHuman deprecated
- Remove Enable model endpoint and user-level settings CLI commands
- Regenerate sqlc, swagger, SDK
This commit is contained in:
BBQ
2026-02-12 23:43:29 +08:00
parent 57dd75ff52
commit 85251a2905
87 changed files with 509 additions and 2994 deletions
+3 -80
View File
@@ -16,6 +16,9 @@ UPDATE bots
SET max_context_load_time = 1440,
language = 'auto',
allow_guest = false,
chat_model_id = NULL,
memory_model_id = NULL,
embedding_model_id = NULL,
updated_at = now()
WHERE id = $1
`
@@ -66,35 +69,6 @@ func (q *Queries) GetSettingsByBotID(ctx context.Context, id pgtype.UUID) (GetSe
return i, err
}
const getSettingsByUserID = `-- name: GetSettingsByUserID :one
SELECT id AS user_id, chat_model_id, memory_model_id, embedding_model_id, max_context_load_time, language
FROM users
WHERE id = $1
`
type GetSettingsByUserIDRow struct {
UserID pgtype.UUID `json:"user_id"`
ChatModelID pgtype.Text `json:"chat_model_id"`
MemoryModelID pgtype.Text `json:"memory_model_id"`
EmbeddingModelID pgtype.Text `json:"embedding_model_id"`
MaxContextLoadTime int32 `json:"max_context_load_time"`
Language string `json:"language"`
}
func (q *Queries) GetSettingsByUserID(ctx context.Context, id pgtype.UUID) (GetSettingsByUserIDRow, error) {
row := q.db.QueryRow(ctx, getSettingsByUserID, id)
var i GetSettingsByUserIDRow
err := row.Scan(
&i.UserID,
&i.ChatModelID,
&i.MemoryModelID,
&i.EmbeddingModelID,
&i.MaxContextLoadTime,
&i.Language,
)
return i, err
}
const upsertBotSettings = `-- name: UpsertBotSettings :one
WITH updated AS (
UPDATE bots
@@ -164,54 +138,3 @@ func (q *Queries) UpsertBotSettings(ctx context.Context, arg UpsertBotSettingsPa
)
return i, err
}
const upsertUserSettings = `-- name: UpsertUserSettings :one
UPDATE users
SET chat_model_id = $2,
memory_model_id = $3,
embedding_model_id = $4,
max_context_load_time = $5,
language = $6,
updated_at = now()
WHERE id = $1
RETURNING id AS user_id, chat_model_id, memory_model_id, embedding_model_id, max_context_load_time, language
`
type UpsertUserSettingsParams struct {
ID pgtype.UUID `json:"id"`
ChatModelID pgtype.Text `json:"chat_model_id"`
MemoryModelID pgtype.Text `json:"memory_model_id"`
EmbeddingModelID pgtype.Text `json:"embedding_model_id"`
MaxContextLoadTime int32 `json:"max_context_load_time"`
Language string `json:"language"`
}
type UpsertUserSettingsRow struct {
UserID pgtype.UUID `json:"user_id"`
ChatModelID pgtype.Text `json:"chat_model_id"`
MemoryModelID pgtype.Text `json:"memory_model_id"`
EmbeddingModelID pgtype.Text `json:"embedding_model_id"`
MaxContextLoadTime int32 `json:"max_context_load_time"`
Language string `json:"language"`
}
func (q *Queries) UpsertUserSettings(ctx context.Context, arg UpsertUserSettingsParams) (UpsertUserSettingsRow, error) {
row := q.db.QueryRow(ctx, upsertUserSettings,
arg.ID,
arg.ChatModelID,
arg.MemoryModelID,
arg.EmbeddingModelID,
arg.MaxContextLoadTime,
arg.Language,
)
var i UpsertUserSettingsRow
err := row.Scan(
&i.UserID,
&i.ChatModelID,
&i.MemoryModelID,
&i.EmbeddingModelID,
&i.MaxContextLoadTime,
&i.Language,
)
return i, err
}