Skip to content

kudaのAPIキー認証に対応#196

Merged
kojira merged 1 commit into
mainfrom
claude/ranking-feature-bug-a8nq2k
Jul 20, 2026
Merged

kudaのAPIキー認証に対応#196
kojira merged 1 commit into
mainfrom
claude/ranking-feature-bug-a8nq2k

Conversation

@kojira

@kojira kojira commented Jul 20, 2026

Copy link
Copy Markdown
Member

概要

kuda がAPIキー認証を導入予定(現在は移行期間 REQUIRE_API_KEY=0 でキー無しも可、フリップ後は401)のため、おみくじのkudaクライアントを先行対応します。

実装

  • kuda.go: KUDA_API_KEY 環境変数(kuda_...)が設定されていれば Authorization: Bearer ヘッダで送信。サーバー間通信なのでヘッダレーンのみ(半公開キー kudaq_?key= クエリレーンは使わない)。X-Client-Id: debug-shrine を常送してkuda側の統計・監査で識別可能に
  • workflow(dev/prod): omikujiGo の --set-env-vars に GitHub Secrets(DEV_KUDA_API_KEY / PROD_KUDA_API_KEY)から注入。Secret未設定なら空=無認証の互換動作のままなので、キー発行前にマージしても壊れない
  • エラー方針は不変: 401(キー無効)・429(日次クォータ超過)も503(枯渇)と同じ「引けない」(no_entropy)。疑似乱数フォールバックなし
  • テスト追加: キー設定時のBearer送信/未設定時の不送信/X-Client-Id/401のエラー扱い

必要な運用作業(コード外)

  1. kudaダッシュボード(Nostr認証)で 通常キー(kuda_)を2本発行(dev用・prod用)
  2. daily_quota の引き上げ: 新規キー既定は30滴/日。おみくじは3バイト/回なので既定のままだと1日10回で頭打ち。prodは用途に合わせて引き上げ推奨(例: 1000滴/日≈333回)
  3. リポジトリの Settings → Secrets and variables → Actions に DEV_KUDA_API_KEY / PROD_KUDA_API_KEY を登録
  4. 次回デプロイから有効

検証

  • Firestoreエミュレータで go test ./... 全パス(新テスト含む)
  • 両workflowのYAML構文チェックOK

🤖 Generated with Claude Code

https://claude.ai/code/session_01DwkB6Hj2JggoKcy7FoxNcU


Generated by Claude Code

kudaがAPIキー必須化を予定(移行期間中はキー無しも可)のため先行対応する。

- KUDA_API_KEY 環境変数が設定されていれば Authorization: Bearer で送る
  (サーバー間なのでヘッダレーンのみ。?key= クエリレーンは使わない)
- X-Client-Id: debug-shrine を常送し、kuda側の統計・監査で識別可能に
- デプロイworkflowの omikujiGo に GitHub Secrets
  (DEV_KUDA_API_KEY / PROD_KUDA_API_KEY)から注入。未設定なら空=無認証互換
- 401/429 も503と同じ「引けない」(no_entropy)。疑似乱数フォールバックなし
- 認証ヘッダの送信/不送信と401エラー扱いのテストを追加

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DwkB6Hj2JggoKcy7FoxNcU
@cursor

cursor Bot commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@kojira
kojira merged commit a4e3ab4 into main Jul 20, 2026
3 checks passed
kojira pushed a commit that referenced this pull request Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants