Crafter.Debug/interfaces
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jorijn van der Graaf f8024b7a43
feat(cli): reach instances over QUIC
crafter-debug had a placeholder transport that reported every instance
unreachable. Cli::ConnectQuic dials 127.0.0.1 at the port in the
discovery record on the first call, keeps the connection for the next,
and dials again after one is lost. Each call opens a stream, sends the
request with a FIN, and reads lines: one with a result or an error is
the reply, anything before it a stream line for onLine, which runs on
the calling thread so a slow terminal never stalls msquic's worker.
Past the deadline the stream is aborted and the call times out.

The handshake gives up after 3 s, and keep-alives every 2 s hold a
quiet follow or a long wait open under the 10 s idle timeout. main
starts a pool with one worker, which Network reports some failures on,
and ends with _Exit once Run has closed its connections, since msquic's
teardown at exit waits on connections.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-01 03:07:09 +01:00
..
Crafter.Debug-Condition.cppm feat(registry): commands, watches, samples, the timeline and conditions 2026-11-01 01:40:59 +01:00
Crafter.Debug-Registry.cppm feat(session): serve requests without blocking a thread, pause and step 2026-11-01 01:53:15 +01:00
Crafter.Debug-Session.cppm feat(session): serve requests without blocking a thread, pause and step 2026-11-01 01:53:15 +01:00
Crafter.Debug-Timeline.cppm feat(session): serve requests without blocking a thread, pause and step 2026-11-01 01:53:15 +01:00
Crafter.Debug-Transport.cppm feat(transport): serve the session over QUIC on loopback 2026-11-01 03:06:56 +01:00
Crafter.Debug.Cli-Client.cppm feat(cli): crafter-debug, the client agents drive an app with 2026-11-01 02:03:38 +01:00
Crafter.Debug.Cli-Quic.cppm feat(cli): reach instances over QUIC 2026-11-01 03:07:09 +01:00
Crafter.Debug.Cli.cppm feat(cli): reach instances over QUIC 2026-11-01 03:07:09 +01:00
Crafter.Debug.Core-BuildInfo.cppm feat(discovery): find live instances across sandboxes; build info 2026-11-01 01:56:31 +01:00
Crafter.Debug.Core-Codec.cppm feat(cli): crafter-debug, the client agents drive an app with 2026-11-01 02:03:38 +01:00
Crafter.Debug.Core-Discovery.cppm feat(discovery): find live instances across sandboxes; build info 2026-11-01 01:56:31 +01:00
Crafter.Debug.Core-Protocol.cppm feat(session): serve requests without blocking a thread, pause and step 2026-11-01 01:53:15 +01:00
Crafter.Debug.Core-Reflect.cppm feat(core): Value, reflection, codecs and results, shared by app and client 2026-11-01 01:31:58 +01:00
Crafter.Debug.Core-Result.cppm feat(core): Value, reflection, codecs and results, shared by app and client 2026-11-01 01:31:58 +01:00
Crafter.Debug.Core-Value.cppm feat(core): Value, reflection, codecs and results, shared by app and client 2026-11-01 01:31:58 +01:00
Crafter.Debug.Core.cppm feat(discovery): find live instances across sandboxes; build info 2026-11-01 01:56:31 +01:00
Crafter.Debug.cppm feat(transport): serve the session over QUIC on loopback 2026-11-01 03:06:56 +01:00