fix(s3fs): harden S3 client transport to fail fast on stale connections
The AWS SDK's default transport (IdleConnTimeout: 90s, no
ResponseHeaderTimeout) allows reused keep-alive connections to Tigris
to sit stale and never respond. With context.TODO() (no timeout),
ReadObject hangs forever instead of failing and retrying.
Inject a hardened HTTP client (ResponseHeaderTimeout: 30s,
IdleConnTimeout: 30s) into every S3 call via per-call options, so
stale connections error quickly and the retryer recovers.
Relates to: lazy-read clone hangs (independently useful).
Assisted-by: Claude Opus 4.8 via claude.ai
Signed-off-by: Xe Iaso <me@xeiaso.net>