docs(comments): 注释中文化 · internal/runtime/model + internal/services/backthink(54 文件,纯替换)
- 只翻注释/文档字符串:`go/scanner` 剥注释后按 token 序列+literal 逐 token 比对,**54/54 文件 SAME**;
改动文件总行数与 HEAD 漂移 = 0(严格 1:1,无合并/拆行)
- 裁决编号与 design 节号逐字保留(03.4.1/03.4.2/03.4.3/14.4.1/14.4.5/07.4.2-4、design/04 §3.1/§3.2 等);
`chat_template_kwargs` / `enable_thinking` / `reasoning_effort` / `thinking:{type}` 字段名与形状说明未动
- 存疑译法(已登记):`persona` 在叙事语境用「角色」、标识符语境保留 `persona`(仓库既有模块本身混用);
`rung`→「级」;`provider` 存在「提供商/提供者」两种落笔(可按需一键统一)
- 复核:build/vet 绿 + 两包测试绿;gofmt 干净;残留英文注释 0 条
- 既有存量(未修,只报告):`model/anthropic_test.go` 612 行 >500;`applyAnthropicEvent` 115 行 >80
This commit is contained in:
1 parent
f5cf117482
commit
3dc1232bc2
54 files changed
+1923
-1923
No files matched your search
@@ -16,8 +16,8 @@ import (
|
||||
"git.yeij.top/AskaEth/Cyrene_v2/internal/channel/adapter"
|
||||
)
|
||||
|
||||
// mockExporter records exported messages and can block or fail on demand so the
|
||||
// pusher hook's non-blocking / failure-tolerant behaviour is testable.
|
||||
// mockExporter 记录已导出的消息,并可按需阻塞或失败,
|
||||
// 使推送器钩子的非阻塞 / 容错行为可测。
|
||||
type mockExporter struct {
|
||||
mu sync.Mutex
|
||||
msgs []adapter.UnifiedMessage
|
||||
@@ -49,9 +49,9 @@ func (m *mockExporter) messages() []adapter.UnifiedMessage {
|
||||
return append([]adapter.UnifiedMessage(nil), m.msgs...)
|
||||
}
|
||||
|
||||
// TestPushOutletHTTPPrimaryDelivers proves the self-hosted service is the
|
||||
// primary tier: the payload is POSTed with the bearer token and a 2xx response
|
||||
// is reported as delivered.
|
||||
// TestPushOutletHTTPPrimaryDelivers 证明自托管服务是
|
||||
// 主级:负载带着 bearer token 被 POST,2xx 响应
|
||||
// 被上报为已投递。
|
||||
func TestPushOutletHTTPPrimaryDelivers(t *testing.T) {
|
||||
t.Parallel()
|
||||
type payload struct {
|
||||
@@ -109,14 +109,14 @@ func TestPushOutletHTTPPrimaryDelivers(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// TestPushOutletUnreachableLogsGetuiFallback asserts an unreachable primary is a
|
||||
// logged miss (not an error), names the pending Getui fallback, and never logs
|
||||
// the token.
|
||||
// TestPushOutletUnreachableLogsGetuiFallback 断言主级不可达是一次
|
||||
// 记账的未命中(不是错误),会点出待接入的个推降级,且绝不记录
|
||||
// token。
|
||||
func TestPushOutletUnreachableLogsGetuiFallback(t *testing.T) {
|
||||
t.Parallel()
|
||||
srv := httptest.NewServer(http.HandlerFunc(func(http.ResponseWriter, *http.Request) {}))
|
||||
url := srv.URL
|
||||
srv.Close() // now unreachable
|
||||
srv.Close() // 此时已不可达
|
||||
|
||||
var buf bytes.Buffer
|
||||
log := slog.New(slog.NewTextHandler(&buf, nil))
|
||||
@@ -137,7 +137,7 @@ func TestPushOutletUnreachableLogsGetuiFallback(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// TestPushOutletHTTPErrorReportsMiss asserts a non-2xx primary response is a miss.
|
||||
// TestPushOutletHTTPErrorReportsMiss 断言主级非 2xx 响应算未命中。
|
||||
func TestPushOutletHTTPErrorReportsMiss(t *testing.T) {
|
||||
t.Parallel()
|
||||
srv := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, _ *http.Request) {
|
||||
@@ -155,8 +155,8 @@ func TestPushOutletHTTPErrorReportsMiss(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// TestNewPushOutletDisabledOrUnconfigured covers the two degraded shapes: the
|
||||
// hook off (nil) and enabled without a primary URL (miss + Getui note).
|
||||
// TestNewPushOutletDisabledOrUnconfigured 覆盖两种降级形态:钩子
|
||||
// 关闭(nil)与启用但无主级 URL(未命中 + 个推备注)。
|
||||
func TestNewPushOutletDisabledOrUnconfigured(t *testing.T) {
|
||||
t.Parallel()
|
||||
if exp := NewPushOutlet(PushOutletConfig{Enabled: false, URL: "http://example.invalid"}); exp != nil {
|
||||
@@ -178,8 +178,8 @@ func TestNewPushOutletDisabledOrUnconfigured(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// TestPusherExportsProactiveToOutlet asserts the hook mirrors the delivered
|
||||
// proactive message to the outlet after the IM delivery.
|
||||
// TestPusherExportsProactiveToOutlet 断言钩子在 IM 投递之后
|
||||
// 把已投递的主动消息镜像到出口。
|
||||
func TestPusherExportsProactiveToOutlet(t *testing.T) {
|
||||
t.Parallel()
|
||||
exp := &mockExporter{delivered: true}
|
||||
@@ -205,9 +205,9 @@ func TestPusherExportsProactiveToOutlet(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// TestPusherExportHookNonBlockingAndFailureTolerant asserts a hung/failing outlet
|
||||
// never delays the push and never turns a delivered proactive message into a
|
||||
// failure.
|
||||
// TestPusherExportHookNonBlockingAndFailureTolerant 断言挂死/失败的出口
|
||||
// 绝不延迟推送,也绝不把已投递的主动消息变成
|
||||
// 失败。
|
||||
func TestPusherExportHookNonBlockingAndFailureTolerant(t *testing.T) {
|
||||
t.Parallel()
|
||||
started := make(chan struct{})
|
||||
@@ -238,8 +238,8 @@ func TestPusherExportHookNonBlockingAndFailureTolerant(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// TestPusherRateLimitedPushIsNotExported asserts a rate-limited push never
|
||||
// reaches the outlet: the hook mirrors real proactive sends only.
|
||||
// TestPusherRateLimitedPushIsNotExported 断言被限流的推送绝不
|
||||
// 到达出口:该钩子只镜像真实的主动发送。
|
||||
func TestPusherRateLimitedPushIsNotExported(t *testing.T) {
|
||||
t.Parallel()
|
||||
exp := &mockExporter{delivered: true}
|
||||
|
||||
Reference in new issue
Block a user