Boxes use chart coordinates; halfspaces require Space::is_chart_flat. Only geodesic spheres have the same distance contract across curved spaces.