shrub/tests/sys
fang 4affae8181 eyre: GETting non-existent channels creates them
Previously, a channel could only be created by sending a PUT request,
and a GET request to receive the channel's stream would only succeed
after channel creation had happened that way. This forces client
libraries, that generally have an explicit "set up" step before allowing
normal operation, to do strange things, like sending faux pokes
(commonly hi-ing oneself) before connecting to the channel's stream as
normal.

Here, we update the GET request handling for channels to allow requests
for non-existent channels. When this happens, the channel will be
created, and eyre tracks the request as normal.

We do some... gentle restructuring... of +on-get-request:by-channel to
let the new creation case share code with the "already exists" codepath.
In the process, we find that duct-to-key was never getting updated in
the case where we replace the original channel request/connection with
the new incoming one. We fix this, it's trivial. We also identify two
other areas with vaguely-incorrect behavior, but consider them less
important and out of scope.

We also add a test case for "create channel through GET".
2023-09-19 19:12:25 +03:00
..
arvo tests: move to root, out of pkg/arvo 2023-01-18 16:50:42 +01:00
hoon test: adds failing multi-byte-glyph sanity 2023-05-31 14:32:39 -04:00
vane eyre: GETting non-existent channels creates them 2023-09-19 19:12:25 +03:00
zuse Merge branch 'next/kelvin/413' into i/5788/remote-scry 2023-04-22 14:33:20 -04:00
fine.hoon Merge branch 'next/kelvin/412' into tinnus/local-provenance 2023-06-07 20:38:05 +12:00
grq.hoon tests: revert test now that dead flow consolidation is default off 2023-09-14 23:13:24 +03:00
nock.hoon tests: move to root, out of pkg/arvo 2023-01-18 16:50:42 +01:00