1d0872e7ca
新增 OpenAI WebSocket v2 passthrough relay 数据面与服务适配层, 支持按账号 ws mode 在 ctx_pool 与 passthrough 间路由。 同步调整前端 OpenAI ws mode 选项为 off/ctx_pool/passthrough, 并补充 i18n 文案与对应单测。 新增 Caddyfile.dmit 与 docker-compose-aicodex.yml 部署配置, 用于宿主机场景下的反向代理与服务编排。 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
30 lines
871 B
Go
30 lines
871 B
Go
package openai_ws_v2
|
|
|
|
import (
|
|
"sync/atomic"
|
|
)
|
|
|
|
// MetricsSnapshot 是 OpenAI WS v2 passthrough 路径的轻量运行时指标快照。
|
|
type MetricsSnapshot struct {
|
|
SemanticMutationTotal int64 `json:"semantic_mutation_total"`
|
|
UsageParseFailureTotal int64 `json:"usage_parse_failure_total"`
|
|
}
|
|
|
|
var (
|
|
// passthrough 路径默认不会做语义改写,该计数通常应保持为 0(保留用于未来防御性校验)。
|
|
passthroughSemanticMutationTotal atomic.Int64
|
|
passthroughUsageParseFailureTotal atomic.Int64
|
|
)
|
|
|
|
func recordUsageParseFailure() {
|
|
passthroughUsageParseFailureTotal.Add(1)
|
|
}
|
|
|
|
// SnapshotMetrics 返回当前 passthrough 指标快照。
|
|
func SnapshotMetrics() MetricsSnapshot {
|
|
return MetricsSnapshot{
|
|
SemanticMutationTotal: passthroughSemanticMutationTotal.Load(),
|
|
UsageParseFailureTotal: passthroughUsageParseFailureTotal.Load(),
|
|
}
|
|
}
|