Features
- Added exponential backoff and jitter retries to OCI artifact fetches using a new
BackoffPolicy(configured underself_update.download_retry), replacing the previouswith_retries(usize, Duration)API. - Added post-download script support for OCI packages.
- Hardened service restart policies on Linux and Windows platforms (implementing
systemdrate limiting: maximum of 5 restarts within 60 seconds) to prevent crash-looping from saturating CPU capacity. - Added support for retrieving remote agent type definitions directly from OCI registries.
- Configured agent type definitions to tolerate unknown fields to ensure forward compatibility.
- Added support for creating on-host agents without defining a health check, which disables health reporting for that agent.
- Streamlined version tracking for on-host agents by deriving versions directly from OCI package metadata. This eliminates command-based version checking and removes the need for the
deployment.versionconfiguration in agent type definitions. - Replaced the
filesystemconfiguration in on-host agent type definitions with an explicit, recursive, tagged-kind tree structure where every entry declareskind: file | dir | dir_content_from_mapanddirentries nest usingentries:. - Introduced a
persistentflag (default value is set tofalse) for on-host filesystem entries; ephemeral entries are deleted when a sub-agent stops, while persistent entries remain until the agent is removed from thefleet.Reconciliationacross writes is driven by a.ac-managed-paths.jsonmanifest (reserved filename — agent types must not declare it) so paths Agent Control no longer owns are deleted while sub-agent-created files are preserved. - Introduced the
shared-filesystem-dirvariable for agent type configurations. - Extended the internal
fscrate to support file copy operations. - Removed the filesystem manifest-based prune mechanism; Agent Control no longer deletes previously-declared paths dropped by subsequent configurations; agent-managed files are now reclaimed only when the agent is removed from the fleet.
Fixes
- Fixed an on-host self-update issue where pushing an empty
version: ""string from Fleet Control incorrectly triggered an image pull of the:latestOCI tag. It now correctly treats an empty string as a no-op (), matching the behavior of an absent version field.
For a detailed description of changes, see the release notes.