Skip to content

The package now carries the whole browser channel instead of leaving every host to copy it

Choose a tag to compare

@prmeyn prmeyn released this 25 Oct 12:13
· 2 commits to main since this release
766ce07

Channel owns the browser handshake, instructions and sign-in/out
The package now carries the whole browser channel instead of leaving every
host to copy it:

  • Reserved Channel.* wire names resolve to built-in actions (Register,
    VerifyConnection, DownloadInstruction, KeepAlive, SignOut); a host action
    under that prefix fails startup.
  • ChannelPushService.PushInstructionAsync is the one public push: the
    instruction is stored, a pointer is pushed, the browser downloads it once.
    Downloads are bound to the owning session. Raw SendTo* are internal.
  • IChannelInstructionStore and IChannelTokenStore, in-memory by default,
    MongoDB via AddSignedChannelMongoDb / AddSignedChannelMongoDbEphemeralStores.
  • ChannelSessionService.SignInAsync/SignOutAsync tell every tab.
  • Hooks for host bookkeeping: IPresenceObserver.OnConnectionBoundAsync,
    IConnectionChangeNotifier now also fires when a tab is verified, and
    IChannelSignOutObserver.
  • First .NET test project: the real endpoints on a test server, driven by a
    C# stand-in for the browser. Run in CI.

Breaking: the PoC-era WebBrowsers.* names are gone.