Skip to content

docs: add guided offline map installation steps - #64

Merged
torlando-tech merged 2 commits into
mainfrom
docs/map-installer-steps
Aug 8, 2026
Merged

docs: add guided offline map installation steps#64
torlando-tech merged 2 commits into
mainfrom
docs/map-installer-steps

Conversation

@torlando-tech

@torlando-tech torlando-tech commented Aug 7, 2026

Copy link
Copy Markdown
Owner

Summary

  • add a five-step SD-card map installation guide to the web flasher
  • link directly to Oxed's community MUI Map Tile Downloader
  • identify OSM Bright as the currently compatible style
  • document local validation, SD-card selection, safe ejection, and data-preservation behavior
  • add a sanitized representative downloader ZIP fixture and exercise it through validation and transactional installation
  • update the offline-map documentation and add UI/workflow contract coverage

Greptile remediation

The representative 1,162-byte fixture reproduces the recommended downloader's compatibility-relevant ZIP envelope without retaining its geographic tile payloads or identifying coverage:

  • rootless canonical XYZ paths
  • stored PNG entries
  • ZIP data-descriptor flag with zero local CRC and sizes
  • signed trailing data descriptors
  • DOS-created central records with no extra fields or external attributes

The browser test mechanically checks those traits, validates zoom 0–2 coverage, installs the archive, and verifies the published PNG bytes. No production importer behavior changed.

Verification

  • python3 -m pytest -q tests/build_scripts tests/native tests/tools — 254 passed
  • python3 -m pytest -q tests/build_scripts/test_map_web_installer_contract.py — 4 passed
  • node --check docs/flasher/js/map-installer.js — passed
  • node --test tests/web/test_map_installer.mjs — 12 passed
  • fixture ZIP integrity check — passed
  • browser-rendered workflow inspection — passed at the original guide head
  • git diff --check — passed

Scope

Documentation and web-flasher test guidance only. No firmware, map format, installer behavior, dependency, or release artifact changes.

@greptile-apps

greptile-apps Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR adds a guided five-step offline-map installation workflow and closes the previous downloader-compatibility coverage gap.

  • Links users to the recommended downloader and documents compatible style selection, local validation, SD-card handling, safe ejection, and preservation behavior.
  • Adds a sanitized downloader-derived ZIP fixture and verifies its ZIP envelope before exercising the production inspection and installation paths end to end.
  • Updates the offline-map documentation and UI contract coverage.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Important Files Changed

Filename Overview
docs/flasher/index.html Adds clear, ordered offline-map installation guidance without changing installer behavior.
docs/offline-map-packs.md Updates the recommended browser workflow with the downloader link and compatible OSM Bright style.
tests/build_scripts/test_map_web_installer_contract.py Adds a static contract check for the complete ordered SD-card workflow and hardened external link.
tests/web/test_map_installer.mjs Validates the downloader-derived fixture structure and runs it through production ZIP inspection and installation.
tests/web/fixtures/README.md Documents the fixture provenance, sanitization, and preserved compatibility traits.
tests/web/fixtures/downloader-rootless-stored-descriptor.zip Provides a sanitized representative archive covering the recommended downloader’s relevant ZIP envelope.

Reviews (2): Last reviewed commit: "test: cover recommended map downloader a..." | Re-trigger Greptile

Comment on lines +33 to +37
assert (
'href="https://download.tiles.coalition.space/" '
'target="_blank" rel="noopener noreferrer"'
) in source
expected_steps = (

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Downloader compatibility lacks coverage

The new contract checks only the downloader URL and instructional text, while importer tests use synthetic ZIPs rather than a representative downloader archive. Add a representative fixture covering the installer’s ZIP constraints so changes to the recommended archive format do not leave the advertised workflow passing tests while local validation rejects it.

Knowledge Base Used: Release Build, Packaging, and Web Flasher

Prompt To Fix With AI
This is a comment left during a code review.
Path: tests/build_scripts/test_map_web_installer_contract.py
Line: 33-37

Comment:
**Downloader compatibility lacks coverage**

The new contract checks only the downloader URL and instructional text, while importer tests use synthetic ZIPs rather than a representative downloader archive. Add a representative fixture covering the installer’s ZIP constraints so changes to the recommended archive format do not leave the advertised workflow passing tests while local validation rejects it.

**Knowledge Base Used:** [Release Build, Packaging, and Web Flasher](https://app.greptile.com/torlando-tech/-/custom-context/knowledge-base/torlando-tech/pyxis/-/docs/release-build-and-flasher.md)

---

For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Fix in Claude Code

@torlando-tech
torlando-tech merged commit 3f4a70d into main Aug 8, 2026
5 checks passed
@torlando-tech
torlando-tech deleted the docs/map-installer-steps branch August 8, 2026 13:48
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