5d4fa94286
fix: rename Go module path to gitea.hansenits.com.au/hits/ExploreDNS
...
CI / test (pull_request) Failing after 1m32s
CI / docker (pull_request) Has been skipped
- Update go.mod module declaration
- Update all internal import paths in .go files
- Update go install lines in README.md
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: multica-agent <github@multica.ai >
2026-06-08 23:17:00 +10:00
3da28da9a2
Fix NS resolution, deduplicate results, fix FormatRecord duplication
...
CI / test (pull_request) Failing after 2m31s
Three bugs fixed:
1. processReferral was calling ResolveNS with ref.Name (the query domain,
e.g. '800adventures.com.au.') instead of ref.Bailiwick (the NS hostname,
e.g. 'ns-a.hansenits.com.'). This caused the sub-traversal to look up the
wrong name and always fail to find the nameserver's IP address.
2. In ResolveNS (and Referral.Resolve), child referrals whose name matched the
visited set were unconditionally skipped. When the .com TLD returns glue A
records for the target NS alongside its delegation, the child referral has
addresses and should be queried directly rather than skipped.
3. FormatRecord was prepending the DNS header fields and then appending
rr.String() which already includes those same fields, producing doubled
output like 'example.com. 300 IN A example.com. 300 IN A 1.2.3.4'.
Now simply returns rr.String().
Additional improvements:
- Results section deduplicates terminal results: same NS failure or same
(NS, answer) pair is merged with summed probability, avoiding the same
nameserver appearing 15 times with 6.7% each.
- Result lines now include the NS hostname (from Bailiwick) and use the
compact rdata format, e.g. '33% ns-a.hansenits.com answered with 13.54.63.231'.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: multica-agent <github@multica.ai >
2026-06-08 18:07:38 +10:00
multica-agent
25e6039bde
Improve DNS output: distinguish NS resolution failures from domain errors ( #20 )
CI / test (push) Failing after 2m19s
2026-06-08 05:59:33 +00:00
dd667f734c
fix: remove duplicate test declarations from PR #12/#13 conflict
...
CI / test (push) Has been cancelled
Phase 4.2 (PR #12 ) and test coverage improvement (PR #13 ) independently
added overlapping test functions. Remove duplicates from PR #13 files:
- internal/dns/iterative_test.go: remove TestExtractNSNames,
TestExtractNSNamesEmpty, TestIterativeQueryWithExchangeSuccess,
TestIterativeQueryWithExchangeNilResponse, TestIterativeQueryWithExchangeTCPFallback
(kept in roots_test.go and query_test.go from PR #12 )
- internal/output/coverage_test.go: remove TestRRDataStringDefault,
TestContainsString, TestCollectUniqueServerIPs, TestNewFormatterNilWriter
(kept in stats_test.go and formatter_test.go from PR #12 )
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: multica-agent <github@multica.ai >
2026-06-08 04:30:06 +10:00
dbd9322a1b
test: merge PR #13 test coverage improvements into main
...
Resolves merge conflicts between Phase 4.2 comprehensive test suite and
the test coverage improvement branch:
- config_test.go: take PR's better table-driven tests + keep main's extra tests
- coverage_test.go: keep main's Phase 4.2 comprehensive tests
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: multica-agent <github@multica.ai >
2026-06-08 04:24:56 +10:00
ee20ed51f6
docs: comprehensive documentation for HAN-387
...
CI / test (pull_request) Failing after 1m19s
- README.md: full project overview, installation, quick start, CLI reference,
output format descriptions, architecture overview, and dnstraverse comparison
- GoDoc: package-level documentation for traverse, dns, config, output, and
fingerprint packages
- GoDoc: TraverserConfig and TraversalResult type comments in traverser.go
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: multica-agent <github@multica.ai >
2026-06-08 04:05:15 +10:00
45e15297f4
test: improve coverage to >80% on all core packages
...
CI / test (pull_request) Failing after 2m11s
Add comprehensive test coverage for internal packages:
- internal/config: 66.2% → 98.5%
- internal/dns: 67.8% → 84.3%
- internal/output: 48.8% → 89.1%
- internal/traverse: 56.3% → 86.9%
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: multica-agent <github@multica.ai >
2026-06-08 03:57:29 +10:00
multica-agent
e6e07941a5
feat: comprehensive test suite (Phase 4.2) ( #12 )
CI / test (push) Failing after 1m30s
2026-06-07 17:54:15 +00:00
multica-agent
fe1afe2a97
Phase 4.1: Error handling, edge cases, and robustness ( #11 )
CI / test (push) Failing after 2m36s
2026-06-07 17:24:00 +00:00
multica-agent
76f5010a5e
feat: implement DNS server fingerprinting (HAN-384) ( #10 )
CI / test (push) Has been cancelled
2026-06-07 16:56:51 +00:00
8e7beacc22
fix: address code review issues on PR #9
...
CI / test (pull_request) Waiting to run
- gofmt main.go to fix tab indentation in main() body
- stats.go ComputeSummary: return nil when Answers and ByType are empty
- dns/types.go: remove duplicate ParseQueryType (dead code)
- formatter.go: log hook errors to stderr when Debug > 0; add Debug to Config
- text.go referralID: remove redundant depth==0 branch
- text.go writeServers: remove version lookup placeholder string
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: multica-agent <github@multica.ai >
2026-06-08 02:32:58 +10:00
Gary Hansen and multica-agent
5a54834c5f
feat: implement output formatting and display (HAN-383)
...
CI / test (pull_request) Failing after 2m2s
Add text and JSON formatters with real-time progress via traverser hooks,
summary statistics, and CLI integration for --show-* and --json flags.
Co-authored-by: multica-agent <github@multica.ai >
2026-06-08 02:21:13 +10:00
Gary and multica-agent
8090182e1a
feat: Go project scaffolding - module init, directory structure, CLI skeleton, Makefile, CI
...
CI / build (pull_request) Failing after 3h1m44s
Co-authored-by: multica-agent <github@multica.ai >
2026-06-05 15:08:29 +10:00