#[non_exhaustive]pub struct RegisterWorkerArgs {
pub worker_id: WorkerId,
pub worker_instance_id: WorkerInstanceId,
pub lanes: BTreeSet<LaneId>,
pub capabilities: BTreeSet<String>,
pub liveness_ttl_ms: u64,
pub namespace: Namespace,
pub now: TimestampMs,
}Expand description
Inputs to crate::engine_backend::EngineBackend::register_worker
(RFC-025). Feature gate: core.
worker_instance_id is process identity (unique per-boot);
worker_id is pool / logical identity (stable across restarts).
See RFC-025 §7 terminology glossary.
liveness_ttl_ms is stored alongside the registration so
heartbeat_worker refreshes to the same value without the caller
re-supplying it.
Re-registering with the same worker_instance_id is
idempotent (RFC-025 §9.3): caps/lanes/TTL overwritten,
Refreshed returned. Re-registering with the same
worker_instance_id under a DIFFERENT worker_id is rejected
with Validation(InvalidInput, "instance_id reassigned").
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.worker_id: WorkerId§worker_instance_id: WorkerInstanceId§lanes: BTreeSet<LaneId>Workers serve one-or-more lanes. BTreeSet for stable
iteration + dedup.
capabilities: BTreeSet<String>§liveness_ttl_ms: u64Stored for subsequent heartbeat_worker TTL refresh.
namespace: Namespace§now: TimestampMsImplementations§
Trait Implementations§
Source§impl Clone for RegisterWorkerArgs
impl Clone for RegisterWorkerArgs
Source§fn clone(&self) -> RegisterWorkerArgs
fn clone(&self) -> RegisterWorkerArgs
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more