Pulse/internal/servicediscovery
rcourtman c035c5b514 Cover the missing arms of the SSRF, clone and classifier guards
A second pass targeting PARTIALLY covered functions rather than untouched
ones, so every case here is an arm the existing suites never reached.
Percentages are per-function coverage, measured before and after.

- pkg/securityutil: the SSRF guards, which is where the uncovered arms
  actually matter. isCarrierGradeNATIPv4 and isLocalNetworkIP are pinned at
  the first and last address of 100.64.0.0/10 and just outside both ends,
  across loopback, link-local, every RFC1918 range and IPv6 unique-local.
  joinURLPath, IsLocalNetworkHost, resolveOutboundIPAddrs and
  cloneRestrictedTransport to 100 percent, resolvePermittedOutboundIPs to
  96.8, with the transport clone asserted independent of its source.
- internal/models: eleven deep-copy helpers from as low as 25 percent to 100.
  Every one asserts real independence, mutating each nested slice, map and
  pointer field of the clone and checking the original is untouched, which is
  the failure mode a deep-copy helper actually has.
- internal/alerts: metricClearThreshold 28.6 to 100, resourceTypeLabel and
  alertspecsMetricTriggered 50 to 100, the four canonical spec-id and
  tracking-key builders 66.7 to 100, inferCanonicalKindFromLegacyAlert to 100,
  and the backup-snapshot and ack-identity predicates.
- internal/servicediscovery: the four fingerprint generators to 100, each
  asserted for both stability and sensitivity; the three command builders and
  ValidateResourceID on their exact output and each rejection reason.
- internal/storagehealth: zfsScanActive and firstNonEmpty.

cephClusterSourceRank is deliberately left at 75 percent: its default arm is
unreachable because normalizeCephClusterSource can only return the two cases
above it. That is recorded rather than faked.

No source file is modified. Adversarial review returned no rejects and flagged
nine re-hit subtests; all nine were removed and every target function
re-measured at an identical percentage, proving they carried nothing.

PULSE_ALLOW_CONTRACT_NEUTRAL_COMMIT=test-only branch coverage, no source or contract change
2026-07-25 00:39:15 +01:00
..
availability_suggestion.go fix(discovery): backfill availability suggestions for existing discoveries 2026-06-26 23:56:15 +01:00
availability_suggestion_test.go feat(discovery): suggest availability probes from discovered service types 2026-06-26 17:12:11 +01:00
branchcov0723pm_test.go Cover eval scenario catalog, control-plane printers and pure helpers 2026-07-23 16:42:08 +01:00
commands.go Detect nested-container access topology in discovery 2026-06-07 21:39:22 +01:00
commands_branchcov0724pm_test.go Cover the missing arms of the SSRF, clone and classifier guards 2026-07-25 00:39:15 +01:00
commands_test.go Make discovery a fast surface scan, not a deep scan 2026-06-07 20:54:46 +01:00
deep_scanner.go Route hostname lookups through canonical equivalence 2026-04-21 22:47:23 +01:00
deep_scanner_test.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
fingerprint.go fix(discovery): bring hosts into the fingerprint model so they auto-discover (#1479) 2026-07-07 22:55:04 +01:00
fingerprint_branchcov0724pm_test.go Cover the missing arms of the SSRF, clone and classifier guards 2026-07-25 00:39:15 +01:00
formatters.go Add discovery freshness to the local/full context formatter 2026-06-09 10:58:38 +01:00
formatters_branchcov0718_test.go Add Go branch-coverage tests for twelve pure backend helpers 2026-07-19 15:10:09 +01:00
formatters_test.go Add discovery freshness to the local/full context formatter 2026-06-09 10:58:38 +01:00
readiness.go Add discovery readiness to Assistant context 2026-06-04 21:56:36 +01:00
readiness_branchcov0718_test.go Add Go branch-coverage tests for twelve pure backend helpers 2026-07-19 15:10:09 +01:00
readiness_test.go Add discovery readiness to Assistant context 2026-06-04 21:56:36 +01:00
scenario_corpus_test.go Add Kubernetes (kubectl exec) cell to the Discovery oracle 2026-06-07 15:23:25 +01:00
service.go Quiesce discovery backfills during shutdown 2026-07-09 23:03:21 +01:00
service_identity.go Add distinctive-port fast-path for un-named workloads 2026-06-07 21:52:41 +01:00
service_identity_test.go Add distinctive-port fast-path for un-named workloads 2026-06-07 21:52:41 +01:00
service_test.go Quiesce discovery backfills during shutdown 2026-07-09 23:03:21 +01:00
store.go fix(discovery): bring hosts into the fingerprint model so they auto-discover (#1479) 2026-07-07 22:55:04 +01:00
store_test.go Remove 198 unreachable Go functions 2026-06-03 12:29:37 +01:00
tools_adapter.go Implement Discovery observed context UX 2026-05-20 13:21:55 +01:00
tools_adapter_test.go Implement Discovery observed context UX 2026-05-20 13:21:55 +01:00
types.go feat(discovery): suggest availability probes from discovered service types 2026-06-26 17:12:11 +01:00
types_test.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
url_suggestion.go fix(discovery): backfill availability suggestions for existing discoveries 2026-06-26 23:56:15 +01:00
url_suggestion_test.go Make workload discovery repair known service results 2026-06-05 09:21:53 +01:00