You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PR #2172 successfully distinguished recovered execution errors from terminal
assertion failures and subprocess deadlines. Its records and existing logs
still cannot locate the network phase of a request interrupted by process
termination. This is a lower-priority follow-up under #1943, complementary to #1695's assertion summaries.
PR 2195: deck/multi-file ends with khttp-000008, GET /v2/control-planes,
at 2026-09-16 04:21:46.687 UTC; killed about 59 seconds later.
PR 2201: ai-gateway/vault ends with khttp-000001, GET /v1/ai-gateways,
at 2026-09-16 15:13:54.727 UTC; killed about 60 seconds later.
PR 2197: all captures a connection reset on a gateway-services GET. The second
execution succeeds; the eventual assertion failure is a separate event.
The #2201 stall is the first request of a new kongctl process. Reuse of an
earlier connection within that process cannot explain every observed stall.
Packet capture was disabled in all three inspected runs.
Proposed change
Add opt-in HTTP connection-phase events/timings, using existing logging
conventions and Go HTTP tracing: DNS, connect, TLS, connection acquisition
and reuse, request write, and first response byte.
Persist phase starts/progress as they happen so SIGKILL does not discard
all evidence of an unfinished request. A final completion-only record is
insufficient for this use case.
Correlate request records with the scenario, logical command, execution
attempt, and artifact-relative paths. Request IDs can restart in each CLI
process; do not treat them as globally unique.
Surface effective HTTP and subprocess budgets plus the last unfinished
request/phase in diagnostics where supported. Keep evidence from recovered
attempts distinct from the terminal failure.
Document a targeted diagnostic-run procedure, including the existing
packet-capture option, and how to compare a failure against a successful
command without automatically rerunning shards.
Acceptance criteria
Controlled delayed-response and connection-error cases identify the last
observed phase and elapsed time, including when the process is terminated.
Missing events remain unknown; neither a subprocess deadline nor an open
request is labeled a confirmed server timeout.
Events contain no credentials, request/response bodies, or sensitive query
values; endpoint representation follows existing redaction conventions.
Existing normal-verbosity behavior remains bounded and tracing is opt-in.
Attempt links distinguish the first failed execution from final success
and any later assertion mismatch.
Problem
PR #2172 successfully distinguished recovered execution errors from terminal
assertion failures and subprocess deadlines. Its records and existing logs
still cannot locate the network phase of a request interrupted by process
termination. This is a lower-priority follow-up under #1943, complementary to
#1695's assertion summaries.
deck/multi-fileends withkhttp-000008, GET/v2/control-planes,at 2026-09-16 04:21:46.687 UTC; killed about 59 seconds later.
ai-gateway/vaultends withkhttp-000001, GET/v1/ai-gateways,at 2026-09-16 15:13:54.727 UTC; killed about 60 seconds later.
allcaptures a connection reset on a gateway-services GET. The secondexecution succeeds; the eventual assertion failure is a separate event.
The #2201 stall is the first request of a new kongctl process. Reuse of an
earlier connection within that process cannot explain every observed stall.
Packet capture was disabled in all three inspected runs.
Proposed change
conventions and Go HTTP tracing: DNS, connect, TLS, connection acquisition
and reuse, request write, and first response byte.
all evidence of an unfinished request. A final completion-only record is
insufficient for this use case.
attempt, and artifact-relative paths. Request IDs can restart in each CLI
process; do not treat them as globally unique.
request/phase in diagnostics where supported. Keep evidence from recovered
attempts distinct from the terminal failure.
packet-capture option, and how to compare a failure against a successful
command without automatically rerunning shards.
Acceptance criteria
observed phase and elapsed time, including when the process is terminated.
request is labeled a confirmed server timeout.
values; endpoint representation follows existing redaction conventions.
and any later assertion mismatch.
diff rendering work.