Is there any way through the Python API to determine if a grease pencil stroke/point has been drawn in material or vertex paint mode?
As far as I can tell, if a stroke has been created in material mode the vertex_color attr will always yield a value of (0.0, 0.0, 0.0, 1.0) even if the material's stroke color is some other value...which is to be expected since the material's stroke color is driving the point colors.
But if the point's values are set using Python, it seems to sever the connection between the material and the vertex color as if the points were drawn in vertex mode and changing the material no longer affects those vertices. I suppose this makes sense too since you're explicitly redefining the color of the vertex.
Is this state change stored anywhere that can be accessed via Python? I don't see anything listed in the API on any of grease pencil classes that might be queried. Maybe it's some other type of mechanism driving this that can be queried?