fixes
This commit is contained in:
@@ -61,3 +61,15 @@ func TestResolvePlatformOpenAI_viaPlatformService(t *testing.T) {
|
||||
t.Fatalf("source=%q", oi.Source)
|
||||
}
|
||||
}
|
||||
|
||||
func TestPlatformModeLabel(t *testing.T) {
|
||||
if got := platformModeLabel(platformsettings.SourceDB, "https://llm.overloadedbot.org/v1"); got != ModeInternalLabel {
|
||||
t.Fatalf("db remote: %q", got)
|
||||
}
|
||||
if got := platformModeLabel(platformsettings.SourceEnv, "https://api.openai.com/v1"); got != ModeCustomLabel {
|
||||
t.Fatalf("env remote: %q", got)
|
||||
}
|
||||
if got := platformModeLabel(platformsettings.SourceDB, "http://127.0.0.1:18767/v1"); got != ModeCustomLabel {
|
||||
t.Fatalf("mock loopback: %q", got)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import (
|
||||
"context"
|
||||
"strings"
|
||||
|
||||
"github.com/descrybe/descrybe-v2/apps/api/internal/platformsettings"
|
||||
"github.com/descrybe/descrybe-v2/apps/api/internal/processing"
|
||||
"github.com/google/uuid"
|
||||
)
|
||||
@@ -134,7 +135,7 @@ func (s *Service) resolvePlatformRoleCompleter(ctx context.Context, role string)
|
||||
BaseURL: cfg.BaseURL,
|
||||
Model: model,
|
||||
UsingBYOK: false,
|
||||
ModeLabel: ModeInternalLabel,
|
||||
ModeLabel: platformModeLabel(cfg.Source, cfg.BaseURL),
|
||||
})
|
||||
}
|
||||
}
|
||||
@@ -143,13 +144,14 @@ func (s *Service) resolvePlatformRoleCompleter(ctx context.Context, role string)
|
||||
if role == RoleProcessing {
|
||||
key := strings.TrimSpace(s.Env.OpenAIAPIKey)
|
||||
model := strings.TrimSpace(s.Env.OpenAIModel)
|
||||
baseURL := strings.TrimSpace(s.Env.OpenAIBaseURL)
|
||||
if key != "" && model != "" {
|
||||
return s.completerFromEndpoint(RoleEndpoint{
|
||||
APIKey: key,
|
||||
BaseURL: strings.TrimSpace(s.Env.OpenAIBaseURL),
|
||||
BaseURL: baseURL,
|
||||
Model: model,
|
||||
UsingBYOK: false,
|
||||
ModeLabel: ModeInternalLabel,
|
||||
ModeLabel: platformModeLabel(platformsettings.SourceEnv, baseURL),
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -277,6 +277,7 @@ func (s *Service) Resolve(ctx context.Context, companyID uuid.UUID) (Resolved, e
|
||||
if strings.TrimSpace(platform.APIKey) == "" {
|
||||
return Resolved{ModeLabel: ModeInternalLabel, UsingBYOK: false}, nil
|
||||
}
|
||||
modeLabel := platformModeLabel(platform.Source, platform.BaseURL)
|
||||
client := processing.NewOpenAIClient(
|
||||
platform.APIKey,
|
||||
platform.BaseURL,
|
||||
@@ -284,17 +285,29 @@ func (s *Service) Resolve(ctx context.Context, companyID uuid.UUID) (Resolved, e
|
||||
rpm,
|
||||
retries,
|
||||
)
|
||||
client.ModeLabel = ModeInternalLabel
|
||||
client.ModeLabel = modeLabel
|
||||
if s.HTTPClient != nil {
|
||||
client.HTTPClient = s.HTTPClient
|
||||
}
|
||||
return Resolved{
|
||||
Completer: client,
|
||||
ModeLabel: ModeInternalLabel,
|
||||
ModeLabel: modeLabel,
|
||||
UsingBYOK: false,
|
||||
}, nil
|
||||
}
|
||||
|
||||
// platformModeLabel maps platform OpenAI source/base to analytics ModeLabel.
|
||||
// DB-backed admin settings → internal; env bootstrap or mock/loopback → custom.
|
||||
func platformModeLabel(source, baseURL string) string {
|
||||
if processing.IsMockOrLoopbackBaseURL(baseURL) {
|
||||
return ModeCustomLabel
|
||||
}
|
||||
if strings.TrimSpace(source) == platformsettings.SourceEnv {
|
||||
return ModeCustomLabel
|
||||
}
|
||||
return ModeInternalLabel
|
||||
}
|
||||
|
||||
func (s *Service) platformConfigured(ctx context.Context) (bool, error) {
|
||||
oi, err := s.resolvePlatformOpenAI(ctx)
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user