Skip to content

test: add TCP client robustness tests #530

@malpern

Description

@malpern

Context

The TCP client (KanataTCPClient) is the reload trigger — after every config change, it sends a reload command to the running kanata daemon. If the TCP path breaks, config changes silently don't take effect.

Gaps to address

  • Connection timeout handling (server not responding)
  • Retry logic on transient failures
  • Partial read handling (incomplete server responses)
  • Server-not-running scenarios (connection refused)
  • Concurrent reload requests (debounce/single-flight)

Priority

High — silent failures here are the worst kind of bug.

See docs/TEST_COVERAGE_REPORT.md for full audit.

Metadata

Metadata

Assignees

No one assigned

    Labels

    testingTest coverage and test infrastructure

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions