Testland
Browse all skills & agents

qa-realtime-protocols

Real-time protocol testing: 7 skills (grpc-streaming-tests, mqtt-tests, server-sent-events-tests, sse-load-tests, stomp-amqp-tests, webhook-replay-tests, websocket-tests) and 1 agent (realtime-protocol-reviewer). Anchored on RFC 6455, WHATWG SSE, gRPC streaming, MQTT v5, and the Standard Webhooks signature scheme.

Install this plugin

/plugin install qa-realtime-protocols@testland-qa
View source

Part of role bundle: qa-role-backend

qa-realtime-protocols

Real-time protocol wire-level testing: not just message round-trips, but handshakes, control frames, close codes, and the failure-mode matrix that's invisible until production. gRPC streaming lives in qa-grpc (grpc-streaming-test-author); webhook testing lives in qa-notifications (webhook-delivery-tester).

Components

TypeNameDescription
Skillwebsocket-testsRFC 6455 - handshake (Sec-WebSocket-Key/Accept), control frames (ping/pong/close), close codes (1000/1001/1006/1011), subprotocol negotiation, ping/pong keepalive, reconnect-with-jitter, Playwright frame inspection
Skillserver-sent-events-testsWHATWG SSE - EventSource lifecycle, event-stream format, Last-Event-ID reconnect-with-replay, HTTP/1.1 connection-pool ceiling; k6 load testing in references/sse-load.md
Skillmqtt-testsMQTT v5 - QoS 0/1/2 redelivery semantics, retained messages, LWT, shared subscriptions, $SYS/... introspection; Mosquitto in CI; STOMP + AMQP 0-9-1 in references/stomp-amqp.md
Agentrealtime-protocol-reviewerAdversarial read-only reviewer of WebSocket / SSE / MQTT / webhook handler diffs - checks close-code handling, reconnect backoff, signature validation, MQTT QoS/Clean Start, and heartbeat/idle-timeout; emits BLOCK/PASS verdict

Install

/plugin marketplace add testland/qa
/plugin install qa-realtime-protocols@testland-qa

Skills

mqtt-tests

Test MQTT v5.0 with Mosquitto broker in CI + paho-mqtt clients - QoS 0 / 1 / 2 delivery semantics, retained messages, Last Will and Testament (LWT), shared subscriptions ($share/group/topic), $SYS topic introspection. Critical for IoT, embedded, and M2M systems where wire-level guarantees matter. Also carries STOMP-over-WebSocket + AMQP 0-9-1 broker testing (Spring / RabbitMQ frame, ack-mode, and exchange/binding tests via Testcontainers) in references/stomp-amqp.md. Use when a product speaks MQTT, STOMP, or AMQP on the wire and QoS 1 / 2 redelivery, retained-message state, LWT, ack-mode, or broker-topology behavior needs a broker-backed test - including smoke-testing a new broker auth / ACL / persistence config.

server-sent-events-tests

Test Server-Sent Events (SSE) flows, one-way server-to-client push only (not bidirectional, use websocket-tests for client-to-server messaging): `EventSource` API on the browser side (`onmessage`, `onerror`, `readyState` 0/1/2), event stream format (`data:`, `event:`, `id:`, `retry:`), `Last-Event-ID` reconnect-with-replay header, content-type `text/event-stream`, and HTTP/1.1 connection-pool limits. Use Playwright for browser-side, raw HTTP client for server-side stream tests; k6 load testing (concurrent-stream capacity, connection churn, HTTP/1.1 vs HTTP/2 ceiling) lives in references/sse-load.md. Use when a feature pushes updates over `text/event-stream` and the reconnect interval, `Last-Event-ID` replay, per-origin connection ceiling, or concurrent-stream capacity has no coverage.

websocket-tests

Test WebSocket protocol behavior - opening handshake (HTTP Upgrade with Sec-WebSocket-Key + Sec-WebSocket-Version: 13), control frames (ping 0x9 / pong 0xA / close 0x8), close-frame status codes (1000 normal, 1001 going-away, 1006 abnormal, 1011 server error), subprotocol negotiation, backpressure, and reconnect with jitter. Works with ws (Node), websockets (Python), or Playwright frame inspection per language. Use when a feature holds a long-lived WebSocket open and reconnect, close-code, or backpressure behavior is unverified.