Help required in implementing callback for a read only field

you didn’t paste the main YANG part, but i think the problem is due to callpoint placement.

If you put tailf:callpoint; together with config false;, it makes ALL the nested children of the element (if you put it on some container/list) read only data provider implicitly…

If you put tailf:callpoint someplace without config false (resp. with config true), it makes that part of the subrtree (again inherited by all sub-sub-…-children) to be an external database - and, as user guide states (though not explicitly) - you cannot subscribe to external database model… it’s up to DB to notify interested parties about configuration change… (e.g. for confd 7.2 - chapter 8.10. Discussion - CDB versus external DB)

Thus, if your main YANG structure cannot be changed, you will need to modify your callpoint annotation to be put only to all of your RO element(s) specifically… (or only to root of RO only container/list, if it exists / depending in your YANG structure)

edit:
something like: tailf:annotate "/syn:sync/sync-status/sync-state" {...} for one leaf only,
or tailf:annotate "/syn:sync/sync-status" {...} to make “sync-status” container and all of it’s children managed by data subscriber / callpoint