Skip to content

v0.2.0

Choose a tag to compare

@tannevaled tannevaled released this 26 Oct 17:38
· 10 commits to main since this release
142f667

The live flow map (milestone M-relay-2b): a page the relay serves that draws the class's flows as they happen.

wctr-relay flowmap --class <class> --url https://relay.local:8443   # prints the link for the projector
  • Students are boxes holding their containers, coloured by security group; flows are lines whose width follows throughput; refused flows flash as dashed red lines, with the missing rule in the event log. Click for details; the filter box dims the rest.
  • FlowLogService.WatchFlowMap (Connect server stream): one aggregated update per tick (4 Hz), coalesced for a slow reader, capped at 400 containers and 2 000 flows. FlowMapService.FlowMapTicket: a read-only, 12-hour ticket (admin listener only). A student's session sees only their own flows.
  • The page is Go WebAssembly on go-widgets GraphView (toolkit v0.343.0), served under script-src 'self' 'wasm-unsafe-eval' with nothing from elsewhere.
  • Tested in Chromium and Firefox (Playwright) against an in-process relay with real flows.

The binaries attached below include the page (-tags flowmap; its WebAssembly is ~5 MB, not committed). A plain go install …@v0.2.0 serves the page without it and says so.

🤖 Generated with Claude Code