Migration SQL Source with Track Changes I have a D8 migration from a SQL source to nodes which is working perfectly apart from track_changes is not working, in my YAML I simply have:

source:
  plugin: job
  constants:
    slash: /
  track_changes: true


I discovered track_changes does not work when the map is joinable and applied the patch, but every time I run the migration I get:

[notice] Processed 0 items (0 created, 0 updated, 0 failed, 0 ignored) - done with 'job'

Do I need to add anything specific to the source plugin? For now I'm getting round this by updating the whole migration each time, but I would prefer not to. If necessary I will have to use the high_water_property instead.
I had an issue like you did and i solve it by changing my:
track_changes: true

on
  high_water_property:
    name: changed
    alias: n

But the problem with this way that you need to:

Manually delete, NOT update your database destination fields.
Import old data.(Before check your source plugin, it must have changed field!)
Update your database with new data.

(and only than high_water_property will work)

About this two Source Plugins
Declaring highwater property in Migrate
About track_changes