fix(number-fields): избегаем потери точности длинных чисел
- number-поля теперь рендерятся как text + inputMode=numeric, чтобы браузер не округлял значения через input type=number - пробелы при вставке в number-поля удаляются - бэкенд нормализует значения number-полей в строку перед сохранением - добавлен хелпер normalizeFieldValueForStorage Closes: искажение расчётного счёта и других длинных числовых полей
This commit is contained in:
24
migrations/0005_llm_providers.sql
Normal file
24
migrations/0005_llm_providers.sql
Normal file
@@ -0,0 +1,24 @@
|
||||
-- LLM Provider Registry
|
||||
CREATE TABLE IF NOT EXISTS llm_providers (
|
||||
id SERIAL PRIMARY KEY,
|
||||
organization_id INTEGER NOT NULL REFERENCES organizations(id) ON DELETE CASCADE,
|
||||
name VARCHAR(200) NOT NULL,
|
||||
provider_type VARCHAR(50) NOT NULL DEFAULT 'openai',
|
||||
base_url TEXT,
|
||||
api_key TEXT,
|
||||
enabled_models JSONB DEFAULT '[]',
|
||||
is_active BOOLEAN DEFAULT TRUE,
|
||||
created_at TIMESTAMP DEFAULT NOW(),
|
||||
updated_at TIMESTAMP DEFAULT NOW()
|
||||
);
|
||||
|
||||
-- Add LLM provider reference to bots
|
||||
ALTER TABLE bots ADD COLUMN IF NOT EXISTS llm_provider_id INTEGER REFERENCES llm_providers(id) ON DELETE SET NULL;
|
||||
ALTER TABLE bots ADD COLUMN IF NOT EXISTS llm_model VARCHAR(200);
|
||||
|
||||
-- Add provider references to rag_settings
|
||||
ALTER TABLE rag_settings ADD COLUMN IF NOT EXISTS embedding_provider_id INTEGER REFERENCES llm_providers(id) ON DELETE SET NULL;
|
||||
ALTER TABLE rag_settings ADD COLUMN IF NOT EXISTS chat_provider_id INTEGER REFERENCES llm_providers(id) ON DELETE SET NULL;
|
||||
|
||||
-- Allow embedding_model to be NULL when registry provider is selected
|
||||
ALTER TABLE rag_settings ALTER COLUMN embedding_model DROP NOT NULL;
|
||||
Reference in New Issue
Block a user