Skip to content

Merge clients into a unified tracker_client CLI (mechanical port) #1771

@josecelano

Description

@josecelano

Summary

Merge the three existing tracker testing binaries into a single tracker_client binary, while keeping behavior changes minimal:

  • http_tracker_client
  • udp_tracker_client
  • tracker_checker

This is a mechanical unification/refactor, not a CLI redesign.

Context

This work closes the pending EPIC task in #669 (unified client CLI) and follows discussion #660.

Decisions for this issue

  • CLI shape: explicit protocol subcommands (tracker_client http ..., tracker_client udp ..., tracker_client check ...)
  • Output default: JSON (--format=json), with --format=text available
  • Legacy binaries: keep for ~1 year with deprecation warning on startup; no new features
  • Scope guard: top-level auto-dispatch aliases (tracker_client announce ...) are out of scope for this issue

In Scope

  • Implement unified tracker_client entry point with http, udp, check subcommands
  • Wire current HTTP/UDP announce/scrape and checker workflows
  • Add unified --format=<json|text> behavior
  • Add deprecation warnings to legacy binaries
  • Update in-repo docs/skills/CI references
  • Run and record manual verification scenarios against a local tracker

Out of Scope

Manual Verification (required)

Run local tracker and then execute one manual scenario per command family, tracking status/evidence:

  1. HTTP announce
  2. HTTP scrape
  3. UDP announce
  4. UDP scrape
  5. Checker
  6. HTTP text-format output
  7. UDP text-format output

A full matrix with concrete commands and evidence fields is captured in the issue spec.

Follow-up

Create a separate issue for optional top-level announce/scrape convenience aliases that dispatch to HTTP/UDP by URL scheme.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions