Engine messages hard-code CLI flag names; give them structured codes instead
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 35/100
- Tipo de issue
- Refatoração
- Clareza
- Razoavelmente clara
- Status de atividade
- Ativa
- Stack de tecnologia
- go
- Domínio
- backend-api-design, cli
Direção de pesquisa
Start by reading the message strings in internal/scan/runner.go, options.go, scope.go, verdict.go, internal/dns/resolver.go and transport.go, then inspect the rewrite tables in pkg/subenum/subenum.go and their tests. The issue allows either structured codes and settings or neutral setting names, but replacing message parsing across engine and front ends is broad design work. Done means no engine message hard-codes CLI flags and the CLI, TUI and pkg/subenum each present settings in their own terms without parsing message text.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Why it matters
Engine messages name command-line flags ("Use -force to scan anyway", "set -max-queries or -force", "concurrency (-t) must be at least 1"). That reads well in the CLI but is wrong anywhere else: the TUI has form fields, and pkg/subenum callers have Config fields, not flags.
Evidence
- About 40 flag references in message strings across
internal/scan/runner.go,options.go,scope.go,verdict.goandinternal/dns/resolver.go,transport.go. pkg/subenumworks around this with a regexp that rewrites-flagto the matchingConfigfield (flagFieldsandfieldNamesinpkg/subenum/subenum.go). It works and is tested, but a new message that names a flag missing from the table gets through unchanged.
Suggested approach
- Give events and validation errors a structured part: a code such as
wildcard_refusedorcap_reached, and the setting involved (force,max_queries). Each front end then writes its own wording. - Or, as a smaller step, have the engine refer to settings by neutral names and let each front end map them.
- Delete the regexp rewrite in
pkg/subenumonce the engine no longer writes flag names.
Done when
No engine message hard-codes a CLI flag, and the CLI, the TUI and pkg/subenum each name settings in their own terms without parsing message text.
- Linguagem predominante
- Go
- Estrelas
- 1
- Forks
- 1
- Merge médio
- 5d 2h
- PRs com merge (30d)
- 3
Preparar o ambiente
Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.
- Inclui um Dockerfile ou 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 TMHSDigital/subenum
-
area: cli enhancement good first issue
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
TMHSDigital/subenum#136 ·
Mantenedores costumam responder em até 1 dia
-
community documentation good first issue
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
TMHSDigital/subenum#135 ·
Mantenedores costumam responder em até 1 dia
-
area: dns enhancement good first issue
Dificuldade 2/5 Menos de uma hora Facilidade para iniciantes 90/100
TMHSDigital/subenum#134 ·
Mantenedores costumam responder em até 1 dia
-
community marketing priority: low
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
TMHSDigital/subenum#132 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
feature priority: low
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
TMHSDigital/subenum#131 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de TMHSDigital/subenum
Issues semelhantes
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
vanderheijden86/b9s#20 ·
-
go-battery needs an ndsctl on PATH: TestPurchaseSessionGuardHoldsThroughTheOutcomeUnknownWindow fails on bare hosts (passes with stub)Talvez já em andamento Um pull request vinculado a esta issue está aberto ou já foi mesclado. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
OpenTollGate/tollgate-module-basic-go#726 ·
Mantenedores costumam responder em até 1 dia
-
ux waiting for feedback
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 63/100
evcc-io/evcc#34527 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
phase:v3 type:harness
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia