View Source ProcessHub.Service.DeclaredChildren.Boot (ProcessHub v0.8.0)

Boot-time resolution of the declared list: adopts the highest version among the local store and the remote manifest, seeds version 1 from durable registry rows on first enablement, and parks the hub's reconcile when the list is missing while durable evidence says it should exist.

Summary

Functions

Fetches and decodes the remote copy, bounded and off the caller's heap.

Applies a remote copy re-fetched after a remote outage at boot, as the boot comparison would. MUST run inside the coordinator process.

Resolves the list on coordinator boot. A stored format newer than this release refuses to open.

Types

@type fetched() ::
  {:ok, ProcessHub.Service.DeclaredChildren.manifest()}
  | :not_found
  | :not_configured
  | {:error, term()}

What remote_fetch/1 found.

Functions

@spec remote_fetch(ProcessHub.Hub.t()) :: fetched()

Fetches and decodes the remote copy, bounded and off the caller's heap.

Link to this function

remote_recompare(hub, error)

View Source
@spec remote_recompare(ProcessHub.Hub.t(), fetched()) :: :ok | {:error, term()}

Applies a remote copy re-fetched after a remote outage at boot, as the boot comparison would. MUST run inside the coordinator process.

@spec run(ProcessHub.Hub.t()) ::
  {:ok, :ready | :parked | {:remote_error, term()}} | {:error, term()}

Resolves the list on coordinator boot. A stored format newer than this release refuses to open.