core/cache/sync_engine library

Classes

SyncHost
What the engine needs from the cache manager: the store, and the ability to run a read-modify-write on the same serialized chain captures use, so a compare-and-swap cannot interleave with a merge.
UiGraphSyncEngine
Uploads dirty cache files to POST /embedded-agent/ui-graph.
UiGraphTransportResult
One upload attempt's raw outcome, as reported by the injected transport.

Typedefs

UiGraphTransport = Future<UiGraphTransportResult> Function(Map<String, dynamic> payload)
Injected so the engine never imports api_service.dart — that keeps the whole subsystem testable with no HTTP and no Flutter bindings.