Skip to content

POTA/SOTA: add keyboard-first activation CLI workflow and ADIF export #533

Description

@rtreit

Parent: #384

Summary

Provide the first complete operator-facing vertical slice for activation sessions through the CLI, including start, status, stop, correction-oriented inspection, and activation-bounded ADIF export.

This task depends on first-class activity references and durable activation sessions. Catalog lookup may be optional in the first implementation as long as exact references work offline.

Commands

Support an equivalent of:

  • qsoripper activation start pota <ref> [<ref>...]
  • qsoripper activation start sota <ref>
  • qsoripper activation status
  • qsoripper activation stop
  • qsoripper activation list
  • qsoripper activation show <id>
  • qsoripper activation export <id> --format adif --output <path>
  • QSO entry options for explicit worked POTA/SOTA references.

Logging behavior

  • Starting an activation resolves and snapshots catalog metadata when available.
  • An active session automatically supplies local references and session linkage.
  • Worked P2P or summit references remain fast explicit input.
  • Validation must be immediate and concise, with no network dependency in the save path.
  • Existing QSO entry remains available when no activation is active.
  • Stop does not automatically upload or export.

Export behavior

  • Export exactly the QSOs linked to the requested session.
  • Emit local and worked references from first-class fields.
  • Preserve one physical QSO per contact, including multi-reference POTA lists.
  • Produce stable results after restart and catalog updates.
  • Do not claim direct POTA upload support where no supported upload API exists.

Tests

  • CLI parsing and output tests.
  • Start/log/status/stop/list/show/export end-to-end tests.
  • Multi-park and P2P export fixtures.
  • Offline catalog behavior.
  • Invalid reference, conflicting active session, and retry behavior.

Acceptance criteria

  • An operator can complete and export a POTA or SOTA activation without using a GUI.
  • Local references do not need to be retyped for each QSO.
  • P2P entry remains a short, keyboard-first action.
  • Export selection is based on session identity, not date/ref heuristics.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions