Case
sendspin-go -> sendspin-go
Start the server first, then the client. The client advertises a listener, the server connects in, observes controller state, receives a control command, disconnects, and the matrix verifies the recorded command.
Server
sendspin-go
Client
sendspin-go
Status
Passed
Controller command matched (next)
Inspection
Summaries, logs, and builds
Matrix result
RAW{
"case_dir": "artifacts/results/data/macos__server-initiated-controller__sendspin-go__to__sendspin-go",
"client_exit_code": 0,
"client_impl": "sendspin-go",
"reason": "Controller command matched (next)",
"scenario_id": "server-initiated-controller",
"server_exit_code": 0,
"server_impl": "sendspin-go",
"status": "passed"
}Server summary (JSON)
RAW{
"client": {
"client_id": "sendspin-go-client-id",
"name": "sendspin-go-client",
"supported_roles": [
"controller@v1"
]
},
"controller": {
"expected_command": {
"command": "next"
},
"muted": false,
"received_command": {
"command": "next"
},
"supported_commands": [
"next"
],
"volume": 100
},
"discovery_method": "registry_advertised",
"implementation": "sendspin-go",
"initiator_role": "server",
"peer_hello": {
"payload": {
"client_id": "sendspin-go-client-id",
"device_info": {
"manufacturer": "Sendspin Conformance",
"product_name": "sendspin-go Conformance Client",
"software_version": "0.1.0"
},
"name": "sendspin-go-client",
"supported_roles": [
"controller@v1"
],
"version": 1
},
"type": "client/hello"
},
"preferred_codec": "none",
"role": "server",
"scenario_id": "server-initiated-controller",
"server_id": "sendspin-go-server",
"server_name": "sendspin-go server",
"status": "ok"
}Server log
RAW{
"client": {
"client_id": "sendspin-go-client-id",
"name": "sendspin-go-client",
"supported_roles": [
"controller@v1"
]
},
"controller": {
"expected_command": {
"command": "next"
},
"muted": false,
"received_command": {
"command": "next"
},
"supported_commands": [
"next"
],
"volume": 100
},
"discovery_method": "registry_advertised",
"implementation": "sendspin-go",
"initiator_role": "server",
"peer_hello": {
"payload": {
"client_id": "sendspin-go-client-id",
"device_info": {
"manufacturer": "Sendspin Conformance",
"product_name": "sendspin-go Conformance Client",
"software_version": "0.1.0"
},
"name": "sendspin-go-client",
"supported_roles": [
"controller@v1"
],
"version": 1
},
"type": "client/hello"
},
"preferred_codec": "none",
"role": "server",
"scenario_id": "server-initiated-controller",
"server_id": "sendspin-go-server",
"server_name": "sendspin-go server",
"status": "ok"
}
Client summary (JSON)
RAW{
"client_id": "sendspin-go-client-id",
"client_name": "sendspin-go-client",
"controller": {
"received_state": {
"muted": false,
"supported_commands": [
"next"
],
"volume": 100
},
"sent_command": {
"command": "next"
}
},
"implementation": "sendspin-go",
"initiator_role": "server",
"peer_hello": {
"payload": {
"active_roles": [
"controller@v1"
],
"connection_reason": "playback",
"name": "sendspin-go server",
"server_id": "sendspin-go-server",
"version": 1
},
"type": "server/hello"
},
"preferred_codec": "none",
"role": "client",
"scenario_id": "server-initiated-controller",
"server": {
"active_roles": [
"controller@v1"
],
"connection_reason": "playback",
"name": "sendspin-go server",
"server_id": "sendspin-go-server",
"version": 1
},
"status": "ok"
}Client log
RAW{
"client_id": "sendspin-go-client-id",
"client_name": "sendspin-go-client",
"controller": {
"received_state": {
"muted": false,
"supported_commands": [
"next"
],
"volume": 100
},
"sent_command": {
"command": "next"
}
},
"implementation": "sendspin-go",
"initiator_role": "server",
"peer_hello": {
"payload": {
"active_roles": [
"controller@v1"
],
"connection_reason": "playback",
"name": "sendspin-go server",
"server_id": "sendspin-go-server",
"version": 1
},
"type": "server/hello"
},
"preferred_codec": "none",
"role": "client",
"scenario_id": "server-initiated-controller",
"server": {
"active_roles": [
"controller@v1"
],
"connection_reason": "playback",
"name": "sendspin-go server",
"server_id": "sendspin-go-server",
"version": 1
},
"status": "ok"
}
Server build log · sendspin-go-server · built · 0.55s
RAWNo build detail was recorded.
Client build log · sendspin-go-client · built · 7.94s
RAWgo: downloading github.com/gorilla/websocket v1.5.3 go: downloading github.com/mewkiz/flac v1.0.13 go: downloading github.com/icza/bitio v1.1.0 go: downloading github.com/mewkiz/pkg v0.0.0-20250417130911-3f050ff8c56d go: downloading github.com/mewpkg/term v0.0.0-20241026122259-37a80af23985