Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 3 additions & 14 deletions .github/required-checks.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,5 @@
# workflow_file|job_name
pr-test-build.yml|go-ci
pr-test-build.yml|quality-ci
pr-test-build.yml|quality-staged-check
pr-test-build.yml|fmt-check
pr-test-build.yml|golangci-lint
pr-test-build.yml|route-lifecycle
pr-test-build.yml|provider-smoke-matrix
pr-test-build.yml|provider-smoke-matrix-cheapest
pr-test-build.yml|test-smoke
pr-test-build.yml|pre-release-config-compat-smoke
pr-test-build.yml|distributed-critical-paths
pr-test-build.yml|changelog-scope-classifier
pr-test-build.yml|docs-build
pr-test-build.yml|ci-summary
pr-test-build.yml|build
pr-path-guard.yml|ensure-no-translator-changes
required-check-names-guard.yml|verify-required-check-names
codeql.yml|Analyze (Go)
1 change: 1 addition & 0 deletions .github/workflows/pr-path-guard.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ on:

jobs:
ensure-no-translator-changes:
name: ensure-no-translator-changes
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/pr-test-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ permissions:

jobs:
build:
name: build
runs-on: ubuntu-latest
steps:
- name: Checkout
Expand Down
4 changes: 4 additions & 0 deletions internal/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,10 @@ type Config struct {
// Nil means enabled (default behavior).
ResponsesWebsocketEnabled *bool `yaml:"responses-websocket-enabled,omitempty" json:"responses-websocket-enabled,omitempty"`

// ResponsesCompactEnabled gates the /v1/responses/compact route rollout.
// Nil means enabled (default behavior).
ResponsesCompactEnabled *bool `yaml:"responses-compact-enabled,omitempty" json:"responses-compact-enabled,omitempty"`

// GeminiKey defines Gemini API key configurations with optional routing overrides.
GeminiKey []GeminiKey `yaml:"gemini-api-key" json:"gemini-api-key"`

Expand Down
11 changes: 11 additions & 0 deletions internal/config/responses_compact_toggle.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package config

// IsResponsesCompactEnabled reports whether /v1/responses/compact is enabled.
// Default is true when config or toggle is unset.
func (c *Config) IsResponsesCompactEnabled() bool {
if c == nil || c.ResponsesCompactEnabled == nil {
return true
}
return *c.ResponsesCompactEnabled
}

1 change: 1 addition & 0 deletions pkg/llmproxy/api/aliases.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ var (
WithEngineConfigurator = api.WithEngineConfigurator
WithLocalManagementPassword = api.WithLocalManagementPassword
WithKeepAliveEndpoint = api.WithKeepAliveEndpoint
WithPostAuthHook = api.WithPostAuthHook
WithRequestLoggerFactory = api.WithRequestLoggerFactory
NewServer = api.NewServer
)
6 changes: 6 additions & 0 deletions sdk/api/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import (

"github.com/gin-gonic/gin"
internalapi "github.com/router-for-me/CLIProxyAPI/v6/internal/api"
"github.com/router-for-me/CLIProxyAPI/v6/sdk/cliproxy/auth"
"github.com/router-for-me/CLIProxyAPI/v6/sdk/api/handlers"
"github.com/router-for-me/CLIProxyAPI/v6/internal/config"
"github.com/router-for-me/CLIProxyAPI/v6/internal/logging"
Expand Down Expand Up @@ -44,3 +45,8 @@ func WithKeepAliveEndpoint(timeout time.Duration, onTimeout func()) ServerOption
func WithRequestLoggerFactory(factory func(*config.Config, string) logging.RequestLogger) ServerOption {
return internalapi.WithRequestLoggerFactory(factory)
}

// WithPostAuthHook registers a hook to be called after auth record creation.
func WithPostAuthHook(hook auth.PostAuthHook) ServerOption {
return internalapi.WithPostAuthHook(hook)
}
2 changes: 1 addition & 1 deletion sdk/auth/codex.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import (
"strings"
"time"

"github.com/router-for-me/CLIProxyAPI/v6/pkg/llmproxy/auth/codex"
"github.com/router-for-me/CLIProxyAPI/v6/internal/auth/codex"
"github.com/router-for-me/CLIProxyAPI/v6/pkg/llmproxy/browser"
// legacy client removed
"github.com/router-for-me/CLIProxyAPI/v6/internal/config"
Expand Down
Loading