Thanks for your interest. The HTTPS Diagnostic Workbench is a working,
local-only tool: a Go program under cmd/ with a loopback web UI that
tests one HTTPS endpoint at a time, built from the specification in
docs/HTTPS_Diagnostic_Workbench_Design.md.
See README.md for what it does and how to run it, and
CHANGELOG.md for recent changes.
Valuable contributions include bug reports backed by reproducible evidence, new or sharpened diagnostics, test coverage, and careful reviews of the design and its guidance — especially gaps in diagnostic coverage, places where a conclusion outruns its evidence, or security and privacy concerns.
This tool exists to diagnose honestly, so contributions are held to the same standard the design sets:
- Observation is not conclusion. A failure at one layer is not proof of a failure at another. Keep claims scoped to what was actually observed.
- Summaries and standings report posture, not a grade. The executive summary, its standing, and the compatibility/security-tier placement describe how the observed posture matches a named target and cite their sources. They must never present an overall score or letter grade, or treat a single rejected offer as proof that a setting is disabled.
- No auto-remediation. The tool never changes a remote server. Features that would "fix" a target are out of scope.
- Local-only. No telemetry, cloud analysis, or external AI in the core product.
- Redact secrets. Never paste real tokens, cookies, private keys, or internal hostnames into issues, pull requests, or test fixtures. Use placeholders.
Prerequisites: a recent Go toolchain. The baseline is pinned in
go.mod (currently Go 1.27.2).
go build ./...
go vet ./...
gofmt -l . # should print nothing
go test ./... -raceContinuous integration runs these on every pull request — see
.github/workflows/ci.yml.
- Open an issue first for anything non-trivial, so the approach can be agreed before you invest time.
- Fork, branch from
main, and keep each pull request focused on one change. - Write a clear commit message explaining why, not just what.
- Make sure
go vet,gofmt, and the tests pass locally. - Fill in the pull-request template.
By participating you agree to the Code of Conduct.