Appearance
Inspect the signed event bus
Node events flow through the PLEXSPHERE_NODE_EVENTS JetStream stream, driven by an outbox poller whose high-water mark is the plexsphere.sse_relay_cursor Postgres row. There is no plexctl surface; use the nats CLI and psql.
Prerequisites
- The
natsCLI configured against the deployment's JetStream. - Read access to the
plexspherePostgres role.
Steps
Inspect the stream
shell
nats stream info PLEXSPHERE_NODE_EVENTS
nats stream view PLEXSPHERE_NODE_EVENTS --raw --count 1Each message carries a Nats-Msg-Id header equal to the originating outbox row's UUID; JetStream uses it for dedup.
Inspect the relay cursor
sql
SELECT stream_name, last_published_seq
FROM plexsphere.sse_relay_cursor
WHERE stream_name = 'PLEXSPHERE_NODE_EVENTS';Force a re-publish from a known point
Lower the cursor to re-emit envelopes. Nats-Msg-Id dedup makes the replay safe — envelopes already on the stream are dropped:
sql
UPDATE plexsphere.sse_relay_cursor SET last_published_seq = <seq>
WHERE stream_name = 'PLEXSPHERE_NODE_EVENTS';Verification
shell
nats stream view PLEXSPHERE_NODE_EVENTS --count 5The expected envelopes reappear without duplicates.
See also
- Operate peers and PSKs — the producing side.
../../contexts/mesh/sse.md— the signed event bus model.