In your example the human and ChatGPT are interchangeable. In my example, they are also interchangeable. Your situation yields a "probably not" answer. My situation yields a "probably" answer. These answers contradict each other, despite their identical basis and despite both being correct answers. Therefore, it must be that this human/ChatGPT comparison must not be the locus of the difference between the answers.
I think people ought to take a breath and think about what is actually fundamental about programming. It might be "code"; but then we've sort of just kicked the can down the road, because now we've got to figure out what's fundamental about code and how that means something is or isn't programming. And without this sort of definition, it really isn't meaningful to ask whether this or that thing is programming.
<programmer friend> == human => ?
<programmer friend> == ChatGPT => ?