Skip to content

SignalCli receive liveness watchdog, OTel exporter auth, and messaging reliability fixes#35

Merged
f2calv merged 10 commits into
mainfrom
f2calv/2026-06-updates2
Jun 14, 2026
Merged

SignalCli receive liveness watchdog, OTel exporter auth, and messaging reliability fixes#35
f2calv merged 10 commits into
mainfrom
f2calv/2026-06-updates2

Conversation

@f2calv

@f2calv f2calv commented Jun 14, 2026

Copy link
Copy Markdown
Owner

Summary

Hardens the Signal communications pipeline with a passive receive-liveness watchdog,
adds authentication support to the OpenTelemetry exporter, improves the SignalCli
integration test suite, and corrects the Signal reaction feedback so failures are no
longer reported as successes. Also refreshes NuGet dependencies and adds design
documentation.

Changes

SignalCli receive liveness

  • Added a passive receive-staleness watchdog to SignalCliJsonRpcClientService:
    tracks the time since the last inbound WebSocket frame and surfaces a configurable
    staleness timeout (ReceiveStalenessTimeoutMs) so a silently dead receive stream is
    detected rather than hanging indefinitely.
  • New _SignalCliConfig options to drive the watchdog behaviour.

Messaging reliability

  • Fixed the Signal reaction feedback in CommunicationsBgService: the green tick (✅)
    was previously sent unconditionally, even when agent inference failed and produced no
    response. The reaction now reflects the actual outcome — ✅ only on a successful,
    non-empty response, and ❌ (red cross) on failure or empty result.

Observability

  • Added authentication support to the OpenTelemetry (OTLP) exporter so traces/metrics
    can be exported to a secured collector endpoint.

Testing

  • Added xUnit traits (SignalCliTraits) for categorising SignalCli integration tests.
  • Improved integration-test teardown for deterministic cleanup of server-side state.
  • Additional SignalCli REST client integration test coverage and TestBase tweaks.

Dependencies

  • Routine NuGet package updates (Directory.Packages.props).

Documentation

  • New design docs: 002-signalcli-receive-heartbeat.md (receive-liveness investigation
    and the passive watchdog decision) and 003-speckit-adoption.md.

Notes

  • The active receive-heartbeat approach explored in design doc 002 was found to be
    unworkable for a linked signal-cli device and is documented as parked; the committed
    solution is the passive watchdog only.

@f2calv f2calv self-assigned this Jun 14, 2026
@f2calv f2calv added bug Something isn't working documentation Improvements or additions to documentation enhancement New feature or request dependencies Pull requests that update a dependency file labels Jun 14, 2026
@f2calv f2calv changed the title F2calv/2026 06 updates2 SignalCli receive liveness watchdog, OTel exporter auth, and messaging reliability fixes Jun 14, 2026
@f2calv f2calv merged commit 7d4a938 into main Jun 14, 2026
2 checks passed
@f2calv f2calv deleted the f2calv/2026-06-updates2 branch June 14, 2026 07:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working dependencies Pull requests that update a dependency file documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant