History: src/client/webhub.zig
Ref:
| Hash | Message | Author | Date |
|---|---|---|---|
| 28780537 | fix: mux web refuses a port another hub already listens on | forge-4 | 2026-09-04 |
| 63b5cfa8 | refactor: drop the dead end key, the hub's tracked ws fd, and two stale headers | a73x | 2026-09-03 |
| 0bd41f5a | feat: the hub serves the layout's panes and writes a birth back into it | a73x | 2026-09-03 |
| a500b0cd | feat: sessions_reply carries the daemon's version and a stale-image bit | a73x | 2026-09-02 |
| ac90c478 | refactor: one header spelling, one discontinuity guard | a73x | 2026-09-01 |
| 41c19dfb | sessions_reply gets one walk and one trust policy | a73x | 2026-08-31 |
| bc625c43 | refactor: handoff and hub keep the measurement, drop the diary | a73x | 2026-08-30 |
| 9a21f071 | refactor: one term component — wire contract, engine, delta and replay core behind a single seam | a73x | 2026-08-30 |
| e3f2d1ec | refactor: the one binary's mains are child files of the dispatcher | a73x | 2026-08-30 |
| e99d4a1f | refactor: a prompt is attributed to the ssh mux spawned, however many forks sit between | a73x | 2026-08-30 |
| 372411cb | refactor: the handoff ssh's stderr is a pipe, and narrate replaces quiet | a73x | 2026-08-30 |
| 7b31b7c4 | test: the e2e wall leg is two daemons, live sessions and a browser that authors nothing | a73x | 2026-08-29 |
| 019b1c19 | feat: the browser hub reads the hosts file and polls like the CLI wall | a73x | 2026-08-29 |
| fed80c17 | refactor: the hub resolves a tile through the one resolver | a73x | 2026-08-29 |
| e3ad4ec2 | refactor: the refusal is named for the grammar it enforces, not the defence it outlived | a73x | 2026-08-29 |
| 5d9b51fe | refactor: the handoff recipe is an argv — ssh is exec'd, not a shell line | a73x | 2026-08-29 |
| 9ad104a9 | refactor: the daemon is `mux d`, the agent `mux a`, the hub `mux web` | a73x | 2026-08-28 |
| 907b6627 | refactor: modules live in the folder of what owns them | a73x | 2026-08-28 |