> ## Documentation Index
> Fetch the complete documentation index at: https://radarhq.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Flagger rollout visibility

> See recorded Flagger rollout outcomes, suspension intent, target and metric template references, and failed-rollout warnings. In-cluster collection is opt-in.

Radar provides native details and concise REST/MCP summaries for `flagger.app`
**Canary** and **MetricTemplate** resources, with native list columns for recorded state, strategy, canary target, reported
weight and requested suspension. The unstable top-level transition timestamp is
not used as a failure-onset column.

Canary details distinguish recorded rollout phase from a requested suspension.
The recorded phase stays visible while suspension is requested. Normal analysis,
confirmation waits and promotion are neutral states; a failed last
rollout remains visible even when suspension is requested. Flagger does not publish
an observed generation, so its recorded phase is not proof that the latest spec
has been reconciled. `Promoted=False` alone is not treated as a failure.

The drawer links to the canary-side target, optional HPA/KEDA scaler and metric
templates, including template namespace overrides. Links follow the controller's
native clients: templates always resolve as `flagger.app` MetricTemplates; target
kind determines the apps/core/Knative identity. Built-in metrics and inline queries
are labeled without inventing template links. Blue/green, A/B and mirrored analysis
are identified; reported canary weight is shown for weighted canaries, not as a
live traffic measurement. MetricTemplate details show provider configuration and
query text without rendering provider headers or fetching external metrics.

A Deployment target is normally scaled to zero between analyses while its primary
continues serving. Generated primary resources appear through existing ownership
in Related Resources; Radar does not manufacture primary links from naming guesses.
DaemonSet targets are parked using a node selector rather than zero replicas.

**Issues:** collected Canaries in the caller-visible namespace scope with `status.phase=Failed` produce a warning
for the last recorded rollout. The onset comes from the matching failed `Promoted` condition’s last-transition
time when valid; the top-level timestamp is rewritten on scheduler ticks and is
not used. Without that condition the onset remains unknown. Inspect the Canary's events for the
cause. A failed new rollout does not imply the primary is down. Suspended failed
rollouts remain visible; ordinary waiting/progress and `Promoted=False` remain quiet.
No new workflow actions, topology edge types, traffic queries or MCP tools are added.

Compact REST/MCP summaries also identify the configured strategy and carry the
reported counters under `flaggerCanary`: weight percentage for weighted analysis, iteration
for iteration-based analysis, and failed checks when reported. A reported zero
is retained; an absent counter means unreported, not zero. These counters are
controller snapshots, with the same freshness limits as the recorded phase.

| Resource | Group | Topology | Detail View | AI Summary |
| - | - | - | - | - |
| Canary | flagger.app | No dedicated nodes or edges; primary navigation is in Related Resources | Recorded rollout, analysis and explicit refs | Recorded outcome, suspension and target |
| MetricTemplate | flagger.app | No new edges | Provider and query configuration | Provider type and configuration state |

**Access limitation:** existing namespace-authorized REST, YAML and MCP paths can
return full Canary and MetricTemplate objects, including credential-bearing
webhook metadata and provider headers, to callers with namespace visibility.
Native summaries omit those fields; this integration does not add a per-kind
response-authorization or redaction boundary.

**In-cluster collection is opt-in:** set `rbac.crdGroups.flagger=true` in the Radar
Helm chart to grant its collector `get/list/watch` on Canaries and MetricTemplates.
Without collection access, in-cluster browsing and failed-rollout Issues for these
kinds are unavailable. Locally, Radar uses the current Kubernetes identity's access.
The Cloud integration-read baseline does not add these resources to generated
caller-role grants. That baseline is not a deny rule for the response paths above.
Default collector/caller access for existing integrations is unchanged.

### Flagger dependency checks

Issues reports missing declared Flagger targets, analysis MetricTemplates and provider Secrets used by those templates. These are warnings about release reconciliation/evaluation, not proof the stable primary is down. Suspended/deleting Canaries produce no reference warnings; skipped analysis suppresses only analysis-reference warnings; zero target replicas are valid.

Absence is reported only from an already watched, synced inventory covering the referenced namespace. Unwatched, unsynced or unreadable dependencies produce no missing-reference finding; the scan starts no watches and makes no provider requests. Secret checks use metadata existence, never values. Findings depending on another namespace or Secret inventory are withheld unless the caller may read that evidence. Generated primary workloads and Services are not declared prerequisites.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.