Repository navigation
"Still needed" asks for wall past a limit end (wall to 26 ft 2 in; the wall ends at 19 ft 9 in) #78
Description
The result's "Still needed" list asks the homeowner to film wall past a "Something blocks it" end, where there is no wall.
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 2 (the indoor mock wall), result screen at 4:59–5:04 in the recording. Report ID A41-2015-10 in run2-2015.md.
What happens. The right end was answered "Something blocks it", so it is a limit end at 19 ft 9 in. "Still needed" then showed:
- "Show the wall from 10 ft 8 in right of the meter to 26 ft 2 in right of the meter, seen at least 6 ft 6 in up the wall. Part of it is past the right end: point the camera there from the end."
- "Show the ground in front of the wall from 4 ft 2 in right of the meter to 33 ft 2 in right of the meter, at least 15 ft 4 in out from the wall. Part of it is past the right end: point the camera there from the end."
The ground half is defensible: ground past a limit end can still hold a driveway or a pool, and the contract counts it. There is no wall past a limit end, though, so the last 6 ft 5 in of the wall request can never be met.
Re-running the server at 45017ba on the exported scene gives the same item: band: wall, span_ft 10.64 → 26.14, from gas_clearance, opening_clearance and wall_equipment_above. The spot ends at 19.68 ft. The extra reach is the check radius: the 3 ft clearance plus the wall's error at the spot's far edge (0.3 + 0.16 × 19.68 ≈ 3.45 ft), so 19.68 + 6.45 ≈ 26.1 ft.
Cause.
- The scene adds an
extensionpiece past each end of the wall chain, as long as the largest clearance plus the battery plus the wall error (scene.py#L720-L748). - For a limit end,
Scene.coverablestops at the outer piece's end, which is the end of that extension, for every band, includingwall(scene.py#L345-L358). Its docstring ("and past a limit end") fits the ground but not the wall. unobserved_wall_linesspanspieces[0].s0topieces[-1].s1, extensions included (scene.py#L360-L368)._missingintersects the two within the check radius and turns the result into a wall view (solver.py#L407-L431)._past_end_hintthen adds "point the camera there from the end" whatever the band (solver.py#L1299-L1309).
Fix direction.
- Clip the wall band's coverable region, and
unobserved_wall_lines, to the end marks for both end kinds. Keep ground past a limit end. - For the ground part past a limit end, say why it is asked for (for example "to check for a driveway or pool past the end").
- Add a server test: a limit end with the spot near it gives no wall request past
s_max.
Related.
- Past-end requests: a band request beyond a marked end never fills, and a past_end request drops the end #35: band requests past a marked end never fill on the phone.
- Walk guidance asks for stretches past a wall end, which can never fill #38: the same "past the end" problem in the walk guidance.
- New issue "Ground requests driven by placeholder rules ask for 14–16 ft of ground nobody can show, and the copy misdescribes the span".
- Report ID A41-2015-10.
Screen recordings are in the comment below.
Activity
AidenJohnston commentedon Sep 27, 2026
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.
server: ask for more views only for checks a request names
Merge t3/server into t3/41-server-requests-text
server: a request names only checks that capturing it settles
server: say that views settle an unobserved check only when a request…
Finalize amendments after a completed parent packet (#78)