Why is get_pages() returning a boolean?

Historically I’ve had better luck using get_posts() over get_pages(). Especially in the case of a custom post type, I’d recommend using something like

$args = array(
    'post_type' => 'home_section',
);
$hp_sections = get_posts( $args );

instead of using get_pages().

Reference