Pursuant to the conversation here, there are two different ways to name the fields provided by a changeset source. The streaming source (accessed by spark.read.format(Source.Changesets)) uses snake case for its variable names (e.g., created_at), while changeset ORC files tend to use camel case (createdAt). If one intends to use .as[Changeset] to convert to a Dataset, it will be necessary to use the latter convention.
We should provide the means to convert from one case structure to the other.