gitproto: add GITSYNC_HTTP_TRACE env var for connection diagnostics

main

Commit

Soph4mo ago

Wires net/http/httptrace into RequestInfoRefs and PostRPCStreamBody, gated on GITSYNC_HTTP_TRACE so production runs pay zero overhead. When enabled, emits per-request connection lifecycle events (GetConn, GotConn with Reused/IdleTime, ConnectStart/Done, TLSHandshake*, WroteRequest, PutIdleConn) to stderr.

Motivated by diagnosing stale keep-alive pool connections against third-party Git HTTPS hosts (CDN edges, hosted git providers) that close idle TLS sockets faster than Go's transport assumes. Those failures surface as "use of closed network connection" on the next POST with no other signal — httptrace makes the pool reuse and idle duration explicit.

Entire-Checkpoint: d0bad48c086b

Checkpoints

git-sync on  main [$!?] via 🐹 v1.26.2 on ☁️ (us-east-2) took 1m26s

Claude Code
View session
Checkpoint 1