Skip to content

[Bug]: Confirmation dialogs silently swallow map clicks in the Interactive Labeler #114

Description

@airshiner

Summary

The "Done — Predicted N buildings and saved" and "Saved — Labels saved successfully" dialogs render a full-screen backdrop over the map. While one is open, every click on the map is absorbed: no labels are created, and no error is shown.

Steps to reproduce

  1. Open the Interactive Labeler on a building-workflow layer.
  2. Click Predict all buildings (or Save labels) and wait for the confirmation dialog.
  3. Without dismissing it, click on building footprints.
  4. The label counters do not move. No error appears anywhere.

Expected

Either the click reaches the map, or the user gets some indication that input is being blocked.

Actual

Clicks land on <div aria-hidden="true" class="fui-DialogSurface__backdrop"> and are discarded silently. The dialog also blocks the Save labels and Predict all buildings buttons themselves — Playwright reports:

<div aria-hidden="true" class="fui-DialogSurface__backdrop r1e18s3l"> ... subtree intercepts pointer events

Impact

This was the highest-cost defect in an end-to-end run, and it bit twice:

  • A batch of 55 labeling actions produced zero labels with zero feedback.
  • Later, during a label-restore operation, a dialog left open by the previous save silently blocked several subsequent passes. The stall looked like a precision or coordinate problem and consumed hours of misdirected debugging before a screenshot revealed the dialog sitting over the map.

A human labeling by hand would probably notice the dialog. Anyone scripting the tool, or simply clicking quickly after a save, will lose work with no signal at all.

Suggested fix

Any of:

  • dismiss on outside click
  • auto-dismiss after a few seconds
  • replace the modal with a toast/notification that doesn't capture pointer events

Workaround

Automation must run a "close any open dialog" loop before every click batch, and re-check between clicks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions