I don’t think I explored that hook since it occurs after entry creation.
I had a lot of inconsistent results (possible due to local caching and/or using the custom post type plugin). I actually gave up on this a few times. Ultimately, I got it to work doing a few things:
I assigned the class instantiation to a variable by adding the following lines at L1101 of gravityforms-update-post.php:
$gform_update_post = new gform_update_post();
$gform_update_post::init();
I then referenced it in my custom functions.php and had it assigned to the wp hook:
global $gform_update_post;
add_action( 'wp', array($gform_update_post, 'init'), 100 );
In my validation script, I loop through custom posts, find the matching field, then retrieve its $post_id. With the global instance I then called:
$gform_update_post::get_post_object($post_id);
Lastly, I added a post_id via a shortcode on the page containing the form. I found that omitting the variable via query string or shortcode made it fail.
[gform_update_post post_id=1]
I suppose this could be optimized further, but I’ve easily surpassed the time I allocated toward this and am simply grateful that it’s now working.