Skip to content

Test Harness: interactive RC1 validation server for Sendspin client apps #84

Open

Description

@chrisuthe

Build sendspin-validate, an interactive validation server that Sendspin client developers run on Linux or macOS to check their app against spec 1.0.0-rc1. It lives in Sendspin/conformance as a second console script, and runs with no clone through uvx.

What it does

  • Connection modes: a client can connect in either direction. The validator advertises itself and browses for clients over mDNS, and also accepts --connect.
  • Unpaired and paired:
    • It checks unpaired access in both its on and off states.
    • It walks through every pairing method the client advertises: pairing_psk, the dynamic code and the static code.
    • After pairing it checks reconnect, credential mismatch, unpair and persistence.
  • Machine checks: it validates every message the client sends, and every response it owes, against the spec. Each failure cites the spec file and line.
  • Prompts: it tells the user what to do in their app, for example "paste the pairing token" or "open the pairing window".
  • Synthesized audio: it generates test audio itself, so there is no licensing question. It plays a clip in every format the client advertises. The human answers randomized challenge questions such as how many beeps they heard and which side, so a check can't be rubber-stamped.
  • Display checks: it covers the artwork, metadata, controller, color, visualizer and source roles, again with randomized challenges.
  • Report: a report.json and a report.html, which separate machine-checked results from results a human attested to.

Decisions

  • Plain CLI for v1. The prompts sit behind an interface, so a UI can be added later.
  • Pairing input is pasted text only.
  • Fault injection is opt-in.
  • v1 targets RC1 only.
  • The validator is self-contained. It bundles a patched aiosendspin until upstream releases the hooks it needs.

Work

Related: #70

Activity

  1. self-assigned this
    on Oct 14, 2026
  2. changed the title [-]Client validator: interactive RC1 validation server for Sendspin client apps[/-] [+]Test Harness: interactive RC1 validation server for Sendspin client apps[/+] on Oct 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions