summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-03-16 04:08:41 +0200
committerPaul Buetow <paul@buetow.org>2026-03-16 04:08:41 +0200
commit07e285f1bb28c832a78de123392be80fcd0c79b2 (patch)
tree16d36a64172b87c0dcd5b5785d5ab1d84bcc090c
parentd985ff9b90cb8476301b2b611023a4332b47a2f0 (diff)
Address review: add zero-temp test, remove unused surface parameter
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
-rw-r--r--internal/llmutils/temperature_test.go7
-rw-r--r--internal/lsp/handlers_completion.go2
-rw-r--r--internal/lsp/handlers_utils.go4
3 files changed, 10 insertions, 3 deletions
diff --git a/internal/llmutils/temperature_test.go b/internal/llmutils/temperature_test.go
index 2c4089e..60e7dad 100644
--- a/internal/llmutils/temperature_test.go
+++ b/internal/llmutils/temperature_test.go
@@ -60,6 +60,13 @@ func TestResolveTemperature_CaseInsensitiveModel(t *testing.T) {
}
}
+func TestResolveTemperature_ExplicitZeroEntryTemp(t *testing.T) {
+ temp, ok := ResolveTemperature("openai", "gpt-5.0", floatPtr(0.0), floatPtr(0.2))
+ if !ok || temp != 0.0 {
+ t.Fatalf("expected explicit zero entry temp 0.0, got %v ok=%v", temp, ok)
+ }
+}
+
func TestIsGPT5(t *testing.T) {
tests := []struct {
provider, model string
diff --git a/internal/lsp/handlers_completion.go b/internal/lsp/handlers_completion.go
index 7c293b0..b5fd03f 100644
--- a/internal/lsp/handlers_completion.go
+++ b/internal/lsp/handlers_completion.go
@@ -436,7 +436,7 @@ func (s *Server) tryProviderNativeCompletion(ctx context.Context, plan completio
sentBytes := len(prompt) + len(after)
modelUsed := spec.effectiveModel(client.DefaultModel())
tempVal := 0.0
- if val, ok := chooseSurfaceTemperature(surfaceCompletion, cfg, spec.entry, provider, modelUsed); ok {
+ if val, ok := chooseSurfaceTemperature(cfg, spec.entry, provider, modelUsed); ok {
tempVal = val
}
suggestions, err := cc.CodeCompletion(ctx2, prompt, after, 1, "", tempVal)
diff --git a/internal/lsp/handlers_utils.go b/internal/lsp/handlers_utils.go
index d1a9ec3..292ff12 100644
--- a/internal/lsp/handlers_utils.go
+++ b/internal/lsp/handlers_utils.go
@@ -68,7 +68,7 @@ func (s *Server) buildRequestSpecs(surface surfaceKind) []requestSpec {
if entry.Model != "" {
opts = append(opts, llm.WithModel(entry.Model))
}
- if temp, ok := chooseSurfaceTemperature(surface, cfg, entry, provider, fallbackModel); ok {
+ if temp, ok := chooseSurfaceTemperature(cfg, entry, provider, fallbackModel); ok {
opts = append(opts, llm.WithTemperature(temp))
}
specs = append(specs, requestSpec{
@@ -117,7 +117,7 @@ func surfaceConfigsFor(cfg appconfig.App, surface surfaceKind) []appconfig.Surfa
// chooseSurfaceTemperature resolves the effective temperature for a surface
// request, delegating GPT-5 override logic to llmutils.ResolveTemperature.
-func chooseSurfaceTemperature(surface surfaceKind, cfg appconfig.App, entry appconfig.SurfaceConfig, provider string, fallbackModel string) (float64, bool) {
+func chooseSurfaceTemperature(cfg appconfig.App, entry appconfig.SurfaceConfig, provider string, fallbackModel string) (float64, bool) {
effectiveModel := strings.TrimSpace(entry.Model)
if effectiveModel == "" {
effectiveModel = strings.TrimSpace(fallbackModel)