Detta beror på att operatorn ->> hämtar JSON-matriselement som text. Du behöver en cast för att konvertera dess resultat tillbaka till JSON.
Du kan eliminera denna redundanta cast genom att använda operatorn -> :
select person->'dogs'->0->'breed' from people where id = 77;