debug(lotw): add dry-run .tq8 download endpoint for diagnostics#215
Merged
Conversation
GET /api/lotw/dryrun-tq8?station_id=<id>[&limit=N] (or ?contact_id=<id>) builds the exact same signed .tq8 the real upload routes would POST to lotw.arrl.org and returns it as a file download, with zero side effects: no upload log row, no contacts marked, no network call to LoTW. Lets the operator save the file, upload it manually via the LoTW web form at lotw.arrl.org/lotw/upload, and isolate whether problems live in the .tq8 content (manual upload fails the same way) vs. the HTTP POST mechanics (manual upload works fine — multipart/charset/whatever). Caps bulk dry-runs at 100 QSOs (default 5) so the inspection file stays small. Authentication is the same as the real upload — verifyToken plus station-ownership check. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
GET /api/lotw/dryrun-tq8?station_id=<id>[&limit=N](or?contact_id=<id>) builds the exact same signed.tq8the real upload routes would POST to LoTW and returns it as a file download. Zero side effects — no upload log row, no contacts marked, no network call to LoTW.Lets you save the
.tq8to disk and upload it manually via the LoTW web form (lotw.arrl.org/lotw/upload) to split the problem:.tq8content itself has a problem; we'll need to inspect the bytes..tq8build is fine.Caps bulk dry-runs at 100 QSOs (default 5) so the inspection file stays small. Auth: same
verifyToken+ station-ownership check as the real upload.Usage
After deploying, on Windows:
Then upload that file at https://lotw.arrl.org/lotw/upload and see what happens.
Test plan
GET /api/lotw/dryrun-tq8?station_id=Xreturns a.tq8downloadlotw_upload_logsafter calling itlotw_qsl_sentflags on contacts unchanged after calling itGET /api/lotw/dryrun-tq8?contact_id=Yreturns a single-QSO.tq8🤖 Generated with Claude Code