Skip to content

PingGopher v1.1.0 β€” Multi-Channel Alerting & Advanced Synthetic Probes πŸš€

Latest

Choose a tag to compare

@SirZeck SirZeck released this 23 Aug 13:12

πŸ”” PingGopher Technical Release Report (v1.1.0)

Target Repository: github.com/SirZeck/ping-gopher
Release Tag: v1.1.0 (Feature Release)
Date: August 23, 2026
Auditing & Architecture Reference: docs/branching_and_release_strategy.md


1. Executive Summary

This technical release report documents PingGopher Release v1.1.0, introducing multi-channel webhook alerting (Slack & Discord), advanced synthetic probe types (TCP socket connections and DNS resolution lookups), HTTP status/keyword assertions, and Web UI dashboard controls.

All code changes were developed under isolated Git Flow feature branches (feature/multi-channel-alerting, feature/tcp-dns-probes, feature/web-ui-enhancements), integrated on develop, and verified via v1.1.0-beta.1 pre-release testing.


2. Feature & Capabilities Breakdown (v1.1.0)

πŸ”” Multi-Channel Alerting Engine (internal/notifier)

  • Slack Block-Kit Webhooks (internal/notifier/slack.go): Formats outage and recovery notifications into Slack Block-Kit JSON with status header icons, target details, and outage block quotes.
  • Discord Embed Webhooks (internal/notifier/discord.go): Formats notifications into color-coded Discord Embed cards (0xE74C3C Red for Outages, 0x2ECC71 Green for Recovery).
  • SSRF Endpoint Guard: Evaluates incoming Slack & Discord webhook endpoints against validator.ValidateSafeURL before dispatch.

⚑ Advanced Synthetic Probe Engine (internal/worker)

  • TCP Socket Probes (ExecuteTCPProbe): Dials raw TCP ports (e.g. Postgres :5432, Redis :6379, SSH :22) with connect-time socket SSRF validation (SafeDialContext) and latency metrics.
  • DNS Resolution Probes (ExecuteDNSProbe): Performs live DNS lookups for A, AAAA, MX, and TXT records via net.DefaultResolver.
  • HTTP Keyword & Status Assertions (ExecuteHTTPAssertionProbe): Asserts exact status code expectations (e.g., 200, 201) and response body keyword matches.

🎨 Web UI Dashboard & Status Page Enhancements (web/)

  • Target Creation Modal: Added Probe Type selector (HTTP, SSL, TCP, DNS), Expected HTTP Status, Keyword Assertion, Slack Webhook URL, and Discord Webhook URL input fields.
  • Target Component Badges: Renders interactive HTTP, SSL, TCP, DNS, Slack, and Discord badges on dashboard target cards and public status pages.

3. Automated Test Suite Verification

Executed go test -count=1 ./... β€” 100% PASS:

ok  	github.com/SirZeck/ping-gopher/cmd/pinggopher-cli	1.950s
ok  	github.com/SirZeck/ping-gopher/internal/api	3.490s
ok  	github.com/SirZeck/ping-gopher/internal/auth	0.742s
ok  	github.com/SirZeck/ping-gopher/internal/db	1.661s
ok  	github.com/SirZeck/ping-gopher/internal/notifier	2.402s
ok  	github.com/SirZeck/ping-gopher/internal/scheduler	2.882s
ok  	github.com/SirZeck/ping-gopher/internal/worker	2.723s