This bug happens sometimes if Google decides to present certain elements on the page.
This is the reported search where bug can be seen: https://serpapi.com/searches/610f83940574f5475b697c82/inspect
If the element below is present, local results and map is not parsed and not put in JSON result.
My suspect is
<div class="GrtD3c gsmt">Carpet Cleaning Services</div>
is the element breaking the parser. It is not shown every time I search with the same parameters. If it is not present on the page, map and local results are parsed. If it is present, those are not parsed at all as you can see in the example.
Here is the reproduced version of the same search, it may or may not show this buggy version:
Here is a similar search, it may or may not show this buggy version: