pub const DEFAULT_FLUX_RECONCILE_INTERVAL: &str = "10m";Expand description
Canonical Flux v2 spec.interval reconcile-poll cadence duration
scalar every caixa-flux-emitted Flux v2 CR (the per-caixa
cluster_bundle triplet’s GitRepository + HelmRelease +
Kustomization) declares as its default reconcile-schedule when the
per-caixa ClusterBundleOpts::for_caixa seed doesn’t carry an
operator-pinned override. Every rendered per-caixa Flux v2 CR consults
the same &'static str at seed time so a future substrate-side
reconcile-cadence migration ("10m" → "5m" once the Flux v2 source-
controller / helm-controller / kustomize-controller trio ships lower-
latency-poll optimizations that make per-CR cluster load safe at a
faster cadence, "10m" → "15m" on cost-optimized clusters where the
per-CR source-controller poll cost outweighs the reconcile-freshness
gain) is a one-line edit on this canonical declaration, not a
coordinated rewrite across the [ClusterBundleOpts] default seed and
every future per-target renderer the substrate adds.
The single source of truth the rendered per-caixa Flux v2 cluster bundle’s per-CR reconcile-poll cadence default seed reaches for:
ClusterBundleOpts::for_caixa’s per-caixa default seed (caixa-flux/src/lib.rs — theinterval: <DEFAULT>.into()field of the [ClusterBundleOpts] struct default the substrate’s per-caixacluster_bundlerenderer threads through every emitted Flux v2 CR’sFLUX_KEY_INTERVALaxis verbatim).
The value is a valid Flux v2 reconcile-poll cadence duration scalar (per
the upstream Flux v2 metav1.Duration OpenAPI schema on each of the
three Flux v2 CRDs — source.toolkit.fluxcd.io/v1/GitRepository.spec. interval, helm.toolkit.fluxcd.io/v2/HelmRelease.spec.interval,
kustomize.toolkit.fluxcd.io/v1/Kustomization.spec.interval): a
non-empty Go-duration-format string (e.g. "10m", "5m", "1h30m"),
which the Flux v2 controller-side per-CR admission gate parses via
metav1.ParseDuration before installing the per-CR watch. A future
rebrand on this lift cannot silently land a value the Flux v2
controller-side admission gate rejects at the first per-caixa
HelmRelease apply against a cluster, far from the rebrand commit’s
source — the pin at the canonical lift documents the Go-duration-format
grammar contract with the Flux v2 admission gate every downstream
consumer of the rendered per-CR reconcile-cadence axis rests on.
Pairs with the sibling FLUX_KEY_INTERVAL (48db6e2) per-Flux-v2-CR
reconcile-poll cadence scalar-axis key the value the substrate seeds
here nests directly under across every rendered per-caixa Flux v2 CR
— the key half of the per-CR spec.interval scalar-key/scalar-value
pair lives at FLUX_KEY_INTERVAL, the value half’s substrate-side
default seed lives here. Same “the typed constant lives in one place”
discipline the DEFAULT_NAMESPACE (a085b26) /
DEFAULT_FLUX_SYSTEM_NAMESPACE (7197d38) / DEFAULT_LIBRARY_NAME
(41438dc) / [DEFAULT_SERVICO_PORT] (1e22add) /
DEFAULT_GATEWAY_CLASS_NAME (d9b0743) /
[DEFAULT_PUBLISH_TAG_PREFIX] (0a6a602) lifts apply on the peer
canonical-substrate-default-load-bearing-scalar surface — extends the
canonical-substrate-default single-sourcing discipline from the peer
substrate-side default-namespace / default-library-chart-name /
default-Servico-listen-port / default-Gateway-API-controller-name /
default-git-publish-tag-prefix surfaces onto the sibling default-Flux-
v2-per-CR-reconcile-poll-cadence surface every rendered per-caixa
Flux v2 cluster bundle CR carries.