Skip to content

POTACAT: add setup, status, recovery UX, and operator documentation #538

Description

@rtreit

Parent: #529

Summary

Make the POTACAT integration discoverable, diagnosable, and recoverable in QsoRipper after the compatible-producer status and replay-safety work is available.

Setup

  • Describe QsoRipper's listener as WSJT-X-compatible QSO ingestion while retaining compatible configuration names.
  • Provide a POTACAT recipe using Extra UDP, WSJT-X binary, loopback, and a dedicated port such as 2238.
  • Explain how this coexists with POTACAT's primary logger integration.
  • Detect and report bind conflicts without failing engine startup.

Status surfaces

Expose in GUI and CLI:

  • Listener bound state and address.
  • Last sender ID and endpoint.
  • Last datagram and last successful import time.
  • Last imported callsign/local ID.
  • Imported, updated, duplicate, ignored, and error counters.
  • Last actionable error.

Provide a safe local diagnostic based on receiving a valid heartbeat or test envelope. Do not create a fake QSO merely to test connectivity.

Recovery and reliability

  • State clearly that UDP delivery is best-effort and has no end-to-end acknowledgement.
  • Document replay/resend from POTACAT once stable external identity handling is present.
  • Document optional append-only ADIF tail recovery only after POTACAT's file behavior is tested.
  • Explain that edits and deletes do not synchronize through the baseline bridge.
  • Explain that baseline multi-park/cross-program delivery is limited until the full-fidelity handoff task lands.

Deployment and security

  • Keep loopback as the default.
  • Document explicit LAN binding, Docker /udp publishing, and host firewall allowlisting.
  • Explain that sender application IDs are spoofable and are not authentication.
  • Do not expose ingestion broadly by default.

Tests and verification

  • GUI/CLI status view-model tests.
  • Bind-conflict and no-sender states.
  • Documentation command/config verification on Windows and Linux/container examples.
  • UX capture for material Avalonia changes.

Acceptance criteria

  • An operator can configure and verify POTACAT delivery without guessing ports or packet formats.
  • Healthy traffic is distinguishable from delivery failures.
  • Reliability and feature limits are explicit.
  • POTACAT absence or failure never blocks ordinary QsoRipper logging.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationenhancementNew feature or request

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions