Skip to content

feat(map): GeoJSON overlay, cross-project map mgmt, download history (#129) - #157

Closed
luandro wants to merge 3 commits into
mainfrom
agent/comapeo-cloud-app/issue-129
Closed

feat(map): GeoJSON overlay, cross-project map mgmt, download history (#129)#157
luandro wants to merge 3 commits into
mainfrom
agent/comapeo-cloud-app/issue-129

Conversation

@luandro

@luandro luandro commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Draft — needs rebase before merge

Phase 1 "Should Have" follow-ups for #129. This draft captures the two test files that
were the final blocker for CI (DownloadHistory + GeoJsonOverlay coverage), which now pass
the full Husky validate gate locally and on push:

  • tests/unit/screens/MapScreen/DownloadHistory.test.tsx
  • tests/unit/screens/MapScreen/GeoJsonOverlay.test.tsx

Verification (this push, e02a3ec)

  • eslint: 0 errors (pre-existing InviteScreen warning only)
  • prettier: clean
  • tsc: clean
  • coverage: All files | 87.55 | 80.42 | 86.5 | 89.26 (branch 80.42% > 80% gate)
  • build + check:i18n: green

⚠️ Action required before squash-merge

The branch forked from an older main; its committed src/i18n/messages/en.json is ~183
lines behind origin/main (main added categories.* and other keys after the split).
Husky only compares the working tree against the branch's own committed en.json, so it
passed — but a squash-merge onto current main would drop those newer keys. Please
rebase onto origin/main (or let me do it) and re-run the gate before merging.

Scope note

The WIP feature code in 32aca2e is in-progress per label agent:implementation-in-progress.
This PR is opened as DRAFT so the test coverage gate is satisfied and CI is green; the
feature itself is not yet review-complete.

Closes #129

@luandro luandro added the agent:implementation-in-progress An agent is currently implementing this issue. label Jul 28, 2026
github-actions Bot added 3 commits July 28, 2026 00:46
…ory (#129)

In-progress work preserved as draft PR. Includes GeoJSONOverlay component,
useAllMaps hook, DownloadHistory screen, and MapScreen authoring/mgmt
wiring. Not yet CI-green or review-complete.

Refs #129
…Overlay

Add unit tests for the two new components to satisfy the 80% global
branch coverage gate before push.

- DownloadHistory.test.tsx: error row + retry, loading skeleton, empty state,
  ready/error status labels, size formatting (8 tests).
- GeoJsonOverlay.test.tsx: dropzone render, drag-active hint, FeatureCollection /
  single Feature / bare Geometry acceptance, invalid GeoJSON / bad extension /
  unparseable JSON rejection, large-file warning, visibility toggle, remove and
  clear-all (12 tests).

Both files pass and exceed 80% lines/branch/functions/statements.
- Idle dropzone was absolute inset-0 z-20 with no pointer-events-none,
  covering the MapLibre canvas and swallowing pan/zoom/draw events.
  Now pointer-events-none when idle, pointer-events-auto only during drag.
- Remove unused overlaysRef (written, never read).
- Remove unused GeoJsonData export and overlayHidden message (never rendered),
  keeping en/es/pt i18n in sync.
@github-actions

Copy link
Copy Markdown
Contributor

Preview deployment ready: https://agent-comapeo-cloud-app-issu-lj19.comapeo-cloud-app.pages.dev

Commit: 950f2e3

@luandro luandro closed this Jul 30, 2026
@luandro
luandro deleted the agent/comapeo-cloud-app/issue-129 branch July 30, 2026 12:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent:implementation-in-progress An agent is currently implementing this issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(map): GeoJSON overlay, cross-project map management, and download history (Phase 1 'Should Have' follow-ups)

1 participant