collect
suspend fun collect(entryModelId: String, provider: ModelSourceProvider, limits: ModelPreparationLimits = ModelPreparationLimits.defaults(), signal: ModelCollectionSignal = ModelCollectionSignal.NONE): ModelWorkspace
Collect one exact-id transitive closure through a snapshot-scoped provider. Calls are sequential and deterministic; each exact id is loaded at most once, and collection never retries implicitly.
This suspending Kotlin boundary uses no coroutine-library type. signal is therefore also supplied to the provider so applications can connect their own task or request cancellation mechanism.