Skip to content

K2GO-566 fix(maps): drive the iiab#4574 tile-extract CLI from dash-node 1.5.2 - #764

Merged
luisguzman-adfa merged 3 commits into
mainfrom
fix/K2GO-566-adopt-iiab-4574
Nov 13, 2026
Merged

luisguzman-adfa merged 3 commits into
mainfrom
fix/K2GO-566-adopt-iiab-4574

Conversation

@luisguzman-adfa

@luisguzman-adfa luisguzman-adfa commented Nov 13, 2026 •

Copy link
Copy Markdown
Collaborator

What changes

  • Patch 0004 now carries IIAB 4574 (tile-extract.py: argparse CLI, FQR lock, delete --yes) in place of the r2 skip-redownload pin.
  • dash-node 1.5.2 detects the installed CLI (modern or legacy) and builds the extract, estimate and delete arguments to match. Boxes on an older rootfs keep working.
  • A second map download waits in queued while another one holds the lock, then starts by itself.
  • /maps/delete returns 409 when a download or delete is running (was: the call could hang or race).
  • Cancel removes the job's partial files only when the job created the region. A region that existed before the job is kept.
  • Cancel of a paused job now removes its partial files.
  • Network errors from the script (catalog, mirrors) stay resumable (paused), not failed.
  • The FQR contract test pins the new CLI flags and the messages dash-node matches.
  • A download that ends with no region (the script exits 0 because the box overlaps a region that an earlier queued job made) is an error, not done.

Why

  • 4574 is the expected final form of the upstream FQR change. Carrying it replaces our own patch and lets the next production rootfs ship the upstream behavior.

Verifications

  • npm test 129/129. test:db 7/7 on the box (local native binding not built).
  • Patch set on a fresh iiab master: applied=28 skipped=1 failed=0; second run all skipped. Patched files equal the PR head e774e10. Contract test passes on the patched tree and fails on unpatched master.
  • Device (Samsung, dash-node rebuilt from this branch via the REST rebuild): estimate, overlap 409, download, pause/resume from the journal, queue, delete 409 during a download, cancel of a running and of a paused job (partials -> 0). All pass.
  • dash-node 1.5.2 on the old script (legacy CLI): estimate, download, delete. 5/5 pass.

Notes

  • Follow-up (not in this PR): a delete during a download returns 409, and the app shows only the generic "delete failed". Nothing breaks.
  • 4574 is still open. If its head changes before merge upstream, refresh patch 0004.

…place of the r2 pin

The new 0004 carries the PR head (e774e10): argparse CLI, a lock for one FQR download or delete,
delete --yes that also removes an unfinished download, and the same pmtiles r2 pin.
…de 1.5.2

Use --bbox/--yes when the installed script has them (else the older form), delete with no stdin
(no EPIPE), queue a second download behind the box lock, and never purge a region the job did not
make. The contract test pins the CLI and messages dash-node reads.
With --yes, tile-extract.py exits 0 and downloads nothing when the box
overlaps a region; a queued job then showed done with no region.
@luisguzman-adfa
luisguzman-adfa merged commit 2c01554 into main Nov 13, 2026
5 checks passed
@luisguzman-adfa
luisguzman-adfa deleted the fix/K2GO-566-adopt-iiab-4574 branch November 13, 2026 13:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant