ARCHITECTURE.md names missing identifiers and describes replaced behavior
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 85/100
- Issue-Typ
- Dokumentation
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- go
- Bereich
- documentation
Rechercherichtung
Beginne mit docs/ARCHITECTURE.md und prüfe jede zitierte Zeile gegen den Code, auf den sie verweist: main_wordlist.go (prepareWordlist), main.go (validateArgs, etwa Zeilen 211 und 283-301), internal/dns/resolver.go, internal/dns/cname.go, internal/output/writer.go (writeJSONElement), internal/validate/validate.go, internal/scan/runner.go, main_ct.go und main_config.go. Korrigiere veraltete Bezeichner, die -w-Anforderung, die Behauptung zur JSON-Pufferung, die Formen der DNS-Server, das Verhalten von EventDone und den Eintrag zu -dry-run. Fertig ist, wenn jeder Checklistenpunkt im Issue behoben ist und die Dateiliste cname.go enthält.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
Ten statements in docs/ARCHITECTURE.md contradict the code: two function names that no longer exist, -w described as required, JSON output described as buffered, and a scan described as able to end without EventDone.
Where
docs/ARCHITECTURE.md:66docs/ARCHITECTURE.md:124docs/ARCHITECTURE.md:158docs/ARCHITECTURE.md:194docs/ARCHITECTURE.md:197docs/ARCHITECTURE.md:250docs/ARCHITECTURE.md:253docs/ARCHITECTURE.md:268docs/ARCHITECTURE.md:331docs/ARCHITECTURE.md:343main_wordlist.go:56main.go:211main.go:283-301internal/dns/resolver.go:284-290internal/dns/resolver.go:329-332internal/dns/cname.go:49-62internal/output/writer.go:255internal/validate/validate.go:47-67internal/scan/runner.go:590-596main_ct.go:28main_config.go:39
Details
Each item below contradicts the code at d0c56f0:
- :66
main_wordlist.go - readWordlist. NoreadWordlistexists; the file definesprepareWordlist(main_wordlist.go:56) and thewordlistPathsflag value. - :124 "
validateFlags, which checks that-wand a target are present", and :250 "When-wor a target ... is missing ... exits with status 2".-wis optional (main.go:211, "omitted: the bundled top-5000 list");validateArgschecks only the domain or-dL(main.go:283-301). - :158 "one lookup per requested record type (... CNAME via
LookupCNAME...)". CNAME goes through the package's ownlookupCNAME, one query (cname.go:49-62; resolver.go:286 "not Go's LookupCNAME, which also sends A and AAAA (#249)"), and the types are looked up at the same time (resolver.go:329-332, #250). Line 160 of the same document already says the opposite about CNAME. - :194 "In
jsonformat results are buffered and written as a single array byFinish" and :197 "Finish- writes the buffered JSON array". The array is streamed element by element (writeJSONElement, writer.go:255, #181; CHANGELOG.md:47). - :253 "The DNS server must be a valid
ip:portwith an IP host".tls://host[:port]andhttps://host/pathare accepted, and their host may be a name (validate.go:47-67). Line 125 of the same document says so. - :268 "a failed preflight or an inconclusive wildcard check ... emits
EventErrorand ends the scan withoutEventDone". Every scan ends with exactly oneEventDone, withStoppedset when it ended before the candidates (runner.go:590-596, #99). - :331 "
withCTEntriesappends those not already in the wordlist". No such function; the passive names are gathered bypassiveNames(main_ct.go:28) and merged bypassive.Merge. - :343 lists the flags never taken from defaults as
-tui,-version,-print-config,-resume,-h;dry-runis innoDefaultFlagstoo (main_config.go:39), as README.md:417 and docs/cli.md:44 say. - The file list (:75-84) has no entry for
internal/dns/cname.go.
Impact
A contributor searching for readWordlist or withCTEntries finds nothing, and one who writes a scan.Run consumer from section 4.3 will treat a missing EventDone as a possible outcome, or budget five queries for -type A,AAAA,CNAME instead of three.
Suggested fix
Correct the nine items in place: rename the two functions, drop "-w and" from 2.1 and 4.1, rewrite the Lookups bullet (own lookupCNAME, concurrent types), say JSON is streamed and Finish closes the array, list the three resolver forms in 4.1, say EventDone follows with Stopped set in 4.3, add -dry-run to 5.8 and cname.go to the file list.
Acceptance criteria
- Each checklist item under Details is corrected
Getting started
- Relevant files:
docs/ARCHITECTURE.md,main_wordlist.go,main.go,internal/dns/resolver.go - How to run tests:
make test(orgo test ./...). Tests must stay hermetic: use-simulate,-simulate-zoneor the local DNS test server, never a live domain. - Related docs:
docs/DEVELOPER_GUIDE.md,docs/ARCHITECTURE.md
Filed by repo-audit/full-audit at d0c56f0. Severity: low. Effort: S. audit-key: documentation|docs/ARCHITECTURE.md|stale-identifiers
- Vorherrschende Sprache
- Go
- Sterne
- 1
- Forks
- 1
- Ø Merge
- 6 Std. 42 Min.
- Gemergte PRs (30 T.)
- 7
Entwicklungsumgebung
Startet den Dev-Container des Projekts im Browser, mit Ihrem eigenen GitHub-Konto.
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus TMHSDigital/subenum
-
good first issue severity: low tech-debt
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 75/100
TMHSDigital/subenum#329 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area: release dependencies good first issue severity: low
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
TMHSDigital/subenum#324 ·
Maintainer antworten meist innerhalb von 1 Tag
-
ci good first issue severity: low
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
TMHSDigital/subenum#323 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area: output bug good first issue severity: low
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
TMHSDigital/subenum#319 ·
Maintainer antworten meist innerhalb von 1 Tag
-
community documentation good first issue
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
TMHSDigital/subenum#135 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in TMHSDigital/subenum
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
GillMacedo/godebugdiff#13 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
GillMacedo/racesift#14 ·
-
IsTextFile reads the whole file into memory (OOM on large files in the file watcher)Evtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
gtsteffaniak/filebrowser#3395 ·
Maintainer antworten meist innerhalb von 1 Tag
-
effort:s impact:low raised-by:worker risk:low
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 70/100
medici-finance/assay#6496 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
kind/bug require/reproduce require/severity
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
Maintainer antworten meist innerhalb von 1 Tag