fix: lots of web updates

This commit is contained in:
Hayden Hargreaves 2026-04-23 23:58:52 -07:00
parent 44fc05af81
commit 25c985cc65
7 changed files with 30 additions and 63 deletions

View File

@ -1,45 +0,0 @@
# termtap Test Coverage Summary
Generated from:
```bash
go test -coverprofile=/tmp/termtap.cover ./...
go tool cover -func=/tmp/termtap.cover
```
## Package coverage snapshot
| Package | Coverage |
|---|---:|
| `cmd/tap` | 100.0% |
| `internal/app` | 98.1% |
| `internal/cli` | 93.4% |
| `internal/process` | 95.8% |
| `internal/proxy` | 90.0% |
| `internal/tui` | 96.2% |
| `examples/echo` | 0.0% (example app; intentionally not covered) |
| `internal/model` | no test files (pure data structs) |
Total statements in module: **77.9%**.
## Notable lower-coverage targets (production code)
- `internal/proxy/handlers.go:handleConnect` — 75.9%
- `internal/proxy/certs.go:writeFileAtomically` — 76.2%
- `internal/proxy/certs.go:load` — 90.5%
- `internal/proxy/certs.go:create` — 80.8%
- `internal/proxy/certs.go:IsTrustedBySystem` — 76.9%
- `internal/cli/run.go:runCert` — 87.5%
## Interpretation
- Core runtime paths (`internal/app`, `internal/process`, `internal/tui`) are high confidence.
- Proxy package has broad behavior coverage including HTTP and HTTPS MITM integration flow, and now clears 90% package coverage.
- CLI command routing and fatal/stdout/stderr seams are covered, including `Run` success/error branches.
- TUI pane rendering coverage now includes error/PID branch behavior.
## Next optional improvements
1. Add deeper CONNECT tunnel write/flush/read failure permutations inside `handleConnect` loop.
2. Add additional deterministic edge cases for `IsTrustedBySystem` non-unknown-authority verify failures.
3. Optionally add non-unix signal file coverage in CI matrix (currently unix-focused).

View File

@ -4,7 +4,7 @@
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>web</title>
<title>Tap | Debug your Backend</title>
</head>
<body>
<div id="root"></div>

View File

@ -42,7 +42,7 @@ export function HeroSection() {
</a>
<a
className="rounded-md border border-slate-800 px-5 py-2.5 text-slate-200 transition-colors hover:border-emerald-400 focus-visible:border-emerald-400"
href="https://github.com"
href="https://github.com/haydenhargreaves/termtap"
target="_blank"
rel="noreferrer"
>

View File

@ -8,18 +8,28 @@ export function InstallSection() {
>
<SectionLabel label="// INSTALL" />
<p className="mt-4 text-sm text-slate-500">
Download the binary for your OS from{' '}
<a
className="text-emerald-400 underline-offset-2 hover:underline"
href="https://github.com/haydenhargreaves/termtap/releases"
>
GitHub Releases
</a>
:
</p>
<div className="mt-4 rounded-md border border-slate-800 bg-slate-900 px-4 py-3 text-xs md:text-sm">
<span className="text-slate-500">$ brew install </span>
<span className="text-emerald-400">termtap</span>
<span className="text-emerald-400">https://github.com/haydenhargreaves/termtap/releases</span>
</div>
<p className="mt-3 text-xs leading-6 text-slate-500">
or download a binary from{' '}
<a className="text-slate-200 underline-offset-2 hover:underline" href="https://github.com">
GitHub releases
</a>
.
Choose your OS/architecture asset, unpack it, and move <code className="px-0 text-slate-200">tap</code>
into your PATH. Run{' '}
<code className="px-0 text-slate-200">tap cert </code>
if you need the HTTPS trust path.
</p>
<p className="text-slate-600 text-xs">Supported: macOS, Linux, Windows</p>
</section>
)
}

View File

@ -42,7 +42,7 @@ export function SiteHeader({ page, onNavigate }: SiteHeaderProps) {
</a>
<a
className={`${sharedLinkClasses} text-slate-500`}
href="https://github.com"
href="https://github.com/haydenhargreaves/termtap"
target="_blank"
rel="noreferrer"
>

View File

@ -21,7 +21,7 @@ export function StatusSection() {
<p className="mt-4 max-w-3xl text-xs leading-6 text-slate-500 md:text-sm">
Expect rough edges, occasional breaking changes, and missing features. Bug reports and
feedback on{' '}
<a className="text-slate-200 underline-offset-2 hover:underline" href="https://github.com">
<a className="text-slate-200 underline-offset-2 hover:underline" href="https://github.com/haydenhargreaves/termtap">
GitHub
</a>{' '}
are very welcome.

View File

@ -111,20 +111,22 @@ export function DocsPage() {
<DocsSection id="install" number="01" title="Install">
<p>
Download the latest binary from{' '}
<a className="text-emerald-400 underline-offset-2 hover:underline" href="https://github.com/termtap/releases">
Download the binary for your OS from{' '}
<a className="text-emerald-400 underline-offset-2 hover:underline" href="https://github.com/haydenhargreaves/termtap/releases">
GitHub Releases
</a>
:
</p>
<CommandBlock>
<span className="text-slate-400">$ curl -L -o termtap.tar.gz </span>
<span className="text-emerald-400">https://github.com/termtap/releases/latest</span>
<span className="text-emerald-400">https://github.com/haydenhargreaves/termtap/releases</span>
</CommandBlock>
<p className="text-slate-500 text-sm">
Unpack the binary, place it on your PATH, and run <code className="px-0 text-slate-200">tap cert </code>
Choose your OS/architecture asset, unpack it, and move <code className="px-0 text-slate-200">tap </code>
into your PATH. Run{' '}
<code className="px-0 text-slate-200">tap cert </code>
if you need the HTTPS trust path.
</p>
<p className="text-slate-600 text-xs">Supported: macOS, Linux, Windows</p>
<p className="text-slate-600 text-xs">
If demand for other install methods grows, they can be added later.
</p>
@ -234,7 +236,7 @@ export function DocsPage() {
</ul>
<p className="text-slate-500 text-sm">
Last updated: 2026-04-19. Questions?{' '}
<a className="text-slate-300 underline-offset-2 hover:underline" href="https://github.com">
<a className="text-slate-300 underline-offset-2 hover:underline" href="https://github.com/haydenhargreaves/termtap">
Open an issue.
</a>
</p>
@ -246,7 +248,7 @@ export function DocsPage() {
</a>
<a
className="transition-colors hover:text-slate-200 focus-visible:text-slate-200"
href="https://github.com"
href="https://github.com/haydenhargreaves/termtap"
target="_blank"
rel="noreferrer"
>