bug(sdk/go): gateways with host-derived names (containing dots) cannot be loaded
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 72/100
Direção de pesquisa
Comece por validateGatewayName em gateway/paths.go, em sdk/go/openshell/v1/gateway, e acompanhe como LoadConfig, NewClient (incluindo o caminho do gateway ativo com nome vazio) e ListGateways a chamam. Leia os testes de validação de caminhos existentes para ver quais casos de traversal já estão cobertos. Está pronto quando nomes com pontos, como gw.example.com, e hosts IPv4 são carregados, listados e resolvidos como ativos, enquanto .. e separadores de caminho continuam sendo rejeitados.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
User Story
I use OpenShell and build automation against its SDKs. While reviewing sdk/ I hit this behavior and reproduced it with the minimal test below against main. Any gateway added by URL without --name is affected.
Problem Statement
openshell gateway add https://gw.example.com derives the gateway name from the host (gw.example.com). The CLI accepts any single path component as a name, but the Go SDK's validateGatewayName rejects any name containing a dot (gateway/paths.go).
Impact / Why This Matters
gateway.NewClient("gw.example.com") and gateway.LoadConfig fail with invalid gateway name: name must not contain dots; when that gateway is the active one, NewClient("") fails too, and ListGateways() silently omits it. Users must re-register gateways under a dot-free name to use the Go SDK.
Acceptance Criteria
- The Go SDK loads, lists and resolves (as active) any gateway name the CLI can create, including host-derived names such as
gw.example.comand IPv4 hosts. - Path traversal (
.., separators) is still rejected.
Reproduction Steps
openshell gateway add https://gw.example.com(or create$XDG_CONFIG_HOME/openshell/gateways/gw.example.com/metadata.jsonwith{"gateway_endpoint":"https://gw.example.com:443","auth_mode":"none"}andactive_gateway=gw.example.com).- Call
gateway.LoadConfig("gw.example.com"),gateway.LoadConfig(""),gateway.ListGateways().
Suggested UX (if applicable)
No response
Environment
- OpenShell:
main@ 82977e2 (2026-10-13) - SDK: Go (
sdk/go/openshell/v1/gateway) - Toolchain: Go 1.25.4 linux/amd64, Node 22
Logs
gateway: invalid gateway name: name must not contain dots
gateway: no active gateway: active_gateway contains invalid name "gw.example.com": gateway: invalid gateway name: name must not contain dots
ListGateways omits the CLI-registered gateway
- Linguagem predominante
- Rust
- Estrelas
- 16.3k
- Forks
- 1.8k
- Merge médio
- 2d 6h
- PRs com merge (30d)
- 399
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de NVIDIA/OpenShell
-
state:triage-needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
Mantenedores costumam responder em até 1 dia
-
state:triage-needed
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
bug(sdk/go): browser login callback binds 127.0.0.1 but redirect_uri uses localhostTalvez livre de novo Um pull request para esta issue foi fechado sem ser mesclado. Abertastate:triage-needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
NVIDIA/OpenShell#4518 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
state:triage-needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
Mantenedores costumam responder em até 1 dia
-
bug(sdk/go): edge (Cloudflare Access) token is cached for the client lifetime and never reloadedAbertastate:triage-needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
NVIDIA/OpenShell#4515 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
Todas as issues de NVIDIA/OpenShell
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
EmbarkStudios/cargo-deny#910 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
tursodatabase/turso#10054 ·
Mantenedores costumam responder em até 1 dia
-
build: Update rust versionTalvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Abertadependencies
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
ibm-granite-community/granite-cli#229 ·
Mantenedores costumam responder em até 1 dia
-
setTargetAtTime booked ahead of time starts its curve early (values blow up before start_time)Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
orottier/web-audio-api-rs#658 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
aosama/astronomical#1318 ·
Mantenedores costumam responder em até 1 dia