yoi/crates/client
2026-06-07 09:02:01 +09:00
..
src feat: add explicit ticket workflow state 2026-06-07 09:02:01 +09:00
Cargo.toml feat: add ticket role pod launcher 2026-06-06 04:18:36 +09:00
README.md docs: reorganize developer documentation 2026-06-01 20:59:32 +09:00

client

Role

client contains reusable socket-client and runtime-command mechanics for talking to Pods from CLI/TUI code.

Boundaries

Owns:

  • one-shot Pod socket client behavior
  • request/reply delivery mechanics
  • runtime command construction below the product façade
  • shared attach/status probing helpers used by higher layers

Does not own:

  • product command names (yoi)
  • Pod state authority (pod, pod-store, session-store)
  • UI rendering (tui)
  • Worker turn semantics (llm-worker)

Design notes

The client boundary lets tui and yoi share Pod communication without making library crates depend on the product binary. Socket clients should drain connect-time snapshot/alert traffic before sending a method or deciding status.

See also