Skip to content

"A closer spot may exist on the left" shows after the left end was reached, or when the spot is already on the left #83

Open

Description

@AidenJohnston

The result banner "A closer spot may exist on the left of your meter. The scan didn't reach that side." showed after the tester had reached the left end, and again when the chosen spot was itself on the left, closer than that end.

Seen in. Device field test of TestFlight build 4.1 (beta at 45017ba), iPhone 14 without LiDAR, iOS 26.6.2, 2026-09-26.

  • Run 1 (the indoor mock wall): result at 6:06–6:10 in the recording. Report ID A41-1-11 in run1-2000.md.
  • Run 3 (a real house): result at 1:46–1:47. Report ID A41-2055-09 in run3-2055.md.

What happens.

  • Run 1. The spot was 12 ft 3 in right of the meter. The tester did reach the physical left end, the post about 2 ft left. The end is unexplored (1 ft 0 in left) only because "Can't get there" was the only way out of the corner loop (see "Corner flow: no "the wall just ends" answer, the refusals loop, and a surface behind the end post was accepted as the next wall").
  • Run 3. The spot was 4 ft 7 in left (−5.90 → −3.32 ft), and the left end was unexplored at 13 ft 2 in left. Any spot past that end is at least 13 ft from the meter, farther than the chosen spot, so "closer" is false. The right end (unexplored, 1 ft 9 in right) is the one side where a closer spot could exist, and the banner doesn't mention it. Both ends came from the skip cascade in "No way to finish a scan early: stopping took 7 rapid "Can't get there" taps, each silently setting ends".

Cause.

  • The app picks the side from the first past_end item. Failing that, it takes the left end if it is unexplored, and only then the right (ScanEngine+Export.swift#L286-L294). The banner copy is fixed (ResultScreen.swift#L52-L55). Neither compares the end with the spot.
  • The server makes a past_end request for every unexplored end within cable reach, in left-then-right order, whether or not a spot past it could beat the chosen one (solver.py#L1369-L1383).

Fix direction.

  • When there is a spot, show the banner for a side only if that end is closer to the meter than the spot's near edge, so a spot past it really could be closer. Choose that side rather than left first.
  • Name the end in the copy, for example "The scan stopped 1 ft 9 in right of your meter. A closer spot may be past there."
  • Keep today's behaviour when there is no spot.
  • The run 1 case also goes away once the corner flow offers "the wall just ends".

Related.

  • New issues "Corner flow: no "the wall just ends" answer, the refusals loop, and a surface behind the end post was accepted as the next wall" and "No way to finish a scan early: stopping took 7 rapid "Can't get there" taps, each silently setting ends".
  • Report IDs A41-1-11 and A41-2055-09.

Screen recordings are in the comment below.

Activity

  1. added
    bugSomething is broken or behaving incorrectly.
    size:S10-29 effective changed lines.
    on Sep 27, 2026
  2. AidenJohnston commented on Sep 27, 2026

    @AidenJohnston
    CollaboratorAuthor

    Screen recordings from the build 4.1 field test (TestFlight 4.1, iPhone 14 without LiDAR). Click a link to play.

    Times are in each run's recording. Full analyses: PR #60.

  3. added 3 commits that reference this issue on Sep 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething is broken or behaving incorrectly.size:S10-29 effective changed lines.

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions