Transport
SystemOne talks HTTP through Transport. Live traffic is heddle on JVM,
Scala.js (Node fetch), and Native. Tests use Transport.test.
Retry, status mapping, and JSON live in SystemOne, not in Transport.
That is what keeps TestTransport honest.
val script = TestTransport.Script(HttpResponse(200, Map.empty, body))
SystemOne.evaluate(state, questions)
.provide(Transport.test(script), ZLayer.succeed(cfg), SystemOne.layer)
Transport.heddle(client) injects an existing heddle Client.
JevError.TimedOut.messagerequest timed out