History: src/client/client.zig
Ref:
| Hash | Message | Author | Date |
|---|---|---|---|
| 8d4f4e41 | feat: add native local TCP forwarding | a73x | 2026-09-08 |
| 5b6c89ea | refactor: share surface input encoding | a73x | 2026-09-07 |
| ea49739c | merge: integrate gui text selection sprint | a73x | 2026-09-06 |
| b0a68b12 | refactor: share terminal selection gestures with native clients | a73x | 2026-09-06 |
| c5be8085 | build: add pinned linting and reliable development checks | a73x | 2026-09-06 |
| 3bf0fc41 | fix: stop native reconnect on SSH authentication refusal | a73x | 2026-09-05 |
| 67a1e976 | feat: add native host and session pickers | a73x | 2026-09-05 |
| c49a06ed | feat: render native sessions with shared terminal input and reconnect | a73x | 2026-09-04 |
| d39f9927 | test: the handoff stderr check asks whether fd 2 is a pipe | a73x | 2026-09-03 |
| a514d02b | refactor: the shared root asks the OS in portable words, and sockpath owns the runtime dir | a73x | 2026-09-03 |
| d3ff0d67 | fix: mux hosts rm takes the daemon's panes out of the layout too | a73x | 2026-09-03 |
| 831be5c9 | feat: the picker lists a host's sessions; Enter adds one, c births, x ends with the daemon's two-step | a73x | 2026-09-03 |
| a500b0cd | feat: sessions_reply carries the daemon's version and a stale-image bit | a73x | 2026-09-02 |
| d1572590 | refactor: spell the host grammar once, free the key path once | a73x | 2026-09-01 |
| 8fe125a8 | refactor: Transport wraps the Link, policy stays and mechanics move | a73x | 2026-08-31 |
| 41c19dfb | sessions_reply gets one walk and one trust policy | a73x | 2026-08-31 |
| d51f6359 | One round trip asks a Transport a question | a73x | 2026-08-31 |
| 8860165d | Add dial: the client side of a daemon's socket | a73x | 2026-08-31 |
| 8f9fef4e | Remove the prose ratchets from the comment gate | a73x | 2026-08-31 |
| 76fd930e | refactor: the link layer's docs name the failure, not the incident | a73x | 2026-08-30 |
| 3827724d | refactor: layers count components, and the test order bands by touch | a73x | 2026-08-30 |
| 9a21f071 | refactor: one term component — wire contract, engine, delta and replay core behind a single seam | a73x | 2026-08-30 |
| 4fa1d021 | refactor: the client link owns its core, hosts file, handoff, layout, keymap and askpass as child files behind pub seams | a73x | 2026-08-30 |
| a514d95d | feat: a wall dial's ssh sends its prompts to mux, not to /dev/tty | a73x | 2026-08-30 |
| e144f97c | refactor: a dial leaves ssh's last line AND the pid that said it | a73x | 2026-08-30 |
| 60970c6c | test: a flooded stderr is a session that stops, and the drain is why it doesn't | a73x | 2026-08-30 |
| 100cc396 | feat: the picker row and the failure line carry ssh's last line | a73x | 2026-08-30 |
| 372411cb | refactor: the handoff ssh's stderr is a pipe, and narrate replaces quiet | a73x | 2026-08-30 |
| 0698569c | refactor: the sun_path bound belongs to the one binder | a73x | 2026-08-30 |
| 502e12d7 | refactor: the daemon's foreground is `start`, and `-d` is what forks it | a73x | 2026-08-30 |
| b2bf74db | refactor: openHandoff performs the table, and decides nothing | a73x | 2026-08-29 |
| e8d541ee | refactor: the client's start branch folds into one announce read | a73x | 2026-08-29 |
| eb9ab4e5 | refactor: the asked recipe is the reading one plus `--start` | a73x | 2026-08-29 |
| 019b1c19 | feat: the browser hub reads the hosts file and polls like the CLI wall | a73x | 2026-08-29 |
| e78769e9 | refactor: one session poll loop, in client.zig | a73x | 2026-08-29 |
| 6e57f5f4 | refactor: the host grammar and the one atomic writer live in hosts.zig | a73x | 2026-08-29 |
| 1b4ed4a8 | refactor: one owner turns a spelling into a Target | a73x | 2026-08-29 |
| 9c8255f8 | refactor: one bounded wait for both side-connection asks | a73x | 2026-08-29 |
| b756779f | refactor: three client-side twins get one owner each | a73x | 2026-08-29 |
| c651e9a0 | refactor: one QUIC client, dialled by the product and by the tests | a73x | 2026-08-29 |
| 24397e0d | refactor: one owner for "the frame at the front of this buffer" | a73x | 2026-08-29 |
| 9a6befa2 | refactor: one spelling for "drop n bytes off the front of a buffer" | a73x | 2026-08-29 |
| 31bb70a8 | refactor: delete the four decls no product path calls | a73x | 2026-08-29 |
| d7967ffa | fix: the small ones the review found — a hint, a note, a test, an install | a73x | 2026-08-29 |
| 0023a4d0 | test: a handoff target nobody spawns is spelled as the argv it would be | 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 |
| e5f99437 | docs: the wall's files, and the citations that name them | a73x | 2026-08-28 |
| 2197eacd | refactor: client names no tui module — the detach byte is keymap's | a73x | 2026-08-28 |
| 907b6627 | refactor: modules live in the folder of what owns them | a73x | 2026-08-28 |