Okay, so I have reworked the patch a bit and finished with the attached, adapting the context message to give more information. I have noticed as well a bug in the patch: the context callback was set before checking if the column used for transformation is checked on being a system column or not, the problem being that the callback could be called without the fields set.
Interesting. I wasn't sure it was set at the right time indeed.
I have updated the regression tests that I found, the main portion of the patch being dedicated to that and being sure that all the alternate outputs are correctly refreshed. In this case int8, float4, float8, xml and contrib/citext are the ones impacted by the change with alternate outputs.
Thanks! I couldn't find time to update it last week, so thanks for chiming in.
I am passing that down to a committer for review. The patch looks large, but at 95% it involves diffs in the regression tests, alternative outputs taking a large role in the bloat.