After researching this for the original poster on stackoverflow, I am seeing the same thing with my own custom domains.
When hitting a route that has public caching setup - the edge cache doesn't work when hitting that url from the custom domain. It always returns 200 status in app engine logs. However, hitting that same app engine app via
APP_ID.appspot.com domain - it starts taking advantage of the edge cache almost immediately. In that case it returns 204 status as expected.
Sample snippet to get these pages to publicly cache is:
response.headers['Pragma'] = 'Public'
response.headers['Cache-Control'] = 'public, max-age=%d'%time
The edge cache used to work when routing through a domain but doesn't seem to any more.
Jeff