bug(sdk/go): browser login callback binds 127.0.0.1 but redirect_uri uses localhost
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 65/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 活発
- 技術スタック
- go
調査の方向性
リスナーは oidc/authcode.go にあり(startCallbackServer が 127.0.0.1 上で net.Listen を呼び出します)、リダイレクト URI は oidc/oidc.go で構築されています(loginBrowser が localhost を使用します)。両方を読んだうえで、リダイレクトのホストを 127.0.0.1 に変更するか、リスナーで両方のループバックファミリーをカバーするかを判断してください。リダイレクト URI のホストがサーバーの受け入れるものと一致し、通常の IPv4 ホストで Login のフローが引き続き完了すれば完了です。この問題はまだ再現されていないため、修正済みとみなす前に IPv6 のケースを確認してください。
索引モデルが issue の本文から書いたものです。
説明
User Story
I use OpenShell and build automation against its SDKs. I found this while reviewing sdk/ on main; it is identified from the code paths cited below and has not yet been reproduced against a live gateway.
Problem Statement
startCallbackServer listens on 127.0.0.1:<port>, but loginBrowser sends redirect_uri=http://localhost:<port>/callback. The CLI uses 127.0.0.1 for both.
Impact / Why This Matters
On hosts or browsers where localhost resolves to ::1 first without IPv4 fallback, the IdP redirect fails to reach the callback and Login times out.
Acceptance Criteria
- The redirect URI host matches the address the callback server listens on (or the server listens on both loopback families).
Reproduction Steps
Code reference: oidc/authcode.go net.Listen("tcp", "127.0.0.1:%d") vs oidc/oidc.go fmt.Sprintf("http://localhost:%d/callback", port). On a host where localhost maps only to ::1, run oidc.Login.
Suggested UX (if applicable)
No response
Environment
- OpenShell:
main@ 82977e2 (2026-10-13) - SDK: Go (
sdk/go/openshell/v1/oidc) - Toolchain: Go 1.25.4 linux/amd64, Node 22
Logs
- 主要言語
- Rust
- スター
- 15.4k
- フォーク
- 1.7k
- 平均マージ
- 2日 3時間
- マージ済み PR(30日)
- 374
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
NVIDIA/OpenShell のほかの issue
-
state:triage-needed
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
メンテナーはふだん 1 日以内に返信
-
bug(sdk/go): edge (Cloudflare Access) token is cached for the client lifetime and never reloadedオープンstate:triage-needed
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
state:triage-needed
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
state:triage-needed
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
メンテナーはふだん 1 日以内に返信
-
state:triage-needed
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
メンテナーはふだん 1 日以内に返信
NVIDIA/OpenShell の issue をすべて見る
似ている issue
-
docs(skills): issue-first should reference an existing Linear ticket instead of filing a duplicateオープンdocumentation
難易度 1/5 1〜3時間 初心者へのやさしさ 74/100
メンテナーはふだん 1 日以内に返信
-
area: tui good first issue help wanted type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
srothgan/claude-code-rust#473 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
storytold/photocraft#5260 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100