From ad795205f6d84054d1e761fa4c8af43274e066be Mon Sep 17 00:00:00 2001 From: luvs01 <27862058+luvs01@users.noreply.github.com> Date: Thu, 13 Aug 2026 02:18:26 +0900 Subject: [PATCH] test(claude): pin listener policy propagation --- .../src/content/docs/ja/reference/configuration/server.md | 2 +- tests/loopback-listener-admission.test.ts | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/docs-site/src/content/docs/ja/reference/configuration/server.md b/docs-site/src/content/docs/ja/reference/configuration/server.md index 99c7085958..f950a77859 100644 --- a/docs-site/src/content/docs/ja/reference/configuration/server.md +++ b/docs-site/src/content/docs/ja/reference/configuration/server.md @@ -53,7 +53,7 @@ x-opencodex-api-key: your-secret-token | `/v1/messages/count_tokens` |受け入れられました |受け入れられました |受け入れられました | | `/v1/models` |受け入れられました |受け入れられました |受け入れられました | -応答とチャット完了では、Codex Direct パススルーの可能性のために `Authorization` を予約しているため、そこでは専用のアドミッション ヘッダーのみが受け入れられます。ダッシュボードで生成された `apiKeys` は、起動後に環境トークンを置き換える可能性があります。候補は一定時間内に比較されます。 +応答とチャット完了では、Codex Direct パススルーの可能性のために `Authorization` を予約しているため、そこでは専用のアドミッション ヘッダーのみが受け入れられます。ダッシュボードで生成された `apiKeys` は、起動後に環境トークンを置き換える可能性があります。候補値は定数時間で比較されます。 Messages と `count_tokens` はルーティングクライアントとの互換性のために 3 つの admission 形式を引き続き受け入れます。 ただし非ループバック bind のネイティブ Anthropic パススルーでは、プロキシ admission は diff --git a/tests/loopback-listener-admission.test.ts b/tests/loopback-listener-admission.test.ts index 3a98c46912..080fa1bdea 100644 --- a/tests/loopback-listener-admission.test.ts +++ b/tests/loopback-listener-admission.test.ts @@ -67,6 +67,12 @@ describe("loopback listener policy view", () => { expect(countTokensStart).toBeGreaterThan(-1); expect(messagesStart).toBeGreaterThan(countTokensStart); expect(chatStart).toBeGreaterThan(messagesStart); + expect(source.slice(countTokensStart, messagesStart)).toContain( + "await handleClaudeCountTokens(req, config, policy)", + ); + expect(source.slice(messagesStart, chatStart)).toContain( + "await handleClaudeMessages(req, config, logCtx, { requestId, start, turnAdmissionLease }, policy)", + ); for (const branch of [ source.slice(countTokensStart, messagesStart), source.slice(messagesStart, chatStart),