---
id: w3/m4/t004
title: "Verify end-to-end on the cluster (stepped series over a real range) + docs update"
worker: worker3
status: done
estimate: 30m
depends_on: [w3/m4/t002, w3/m4/t003]
---

## Objective

Prove the whole chain on the real cluster — cAdvisor → Prometheus → bex-api → REST/GraphQL — over a range of at least an hour, then update `docs/ADR010-observability.md` so the docs describe reality.

## Context

- Verify recipe pattern already in `docs/ADR010-observability.md` ("Verify (mock cluster)" section) — extend it with a ranged query.
- The "Render compatibility" deviations list currently leads with "snapshot resolution — resource metrics return a single current point"; that entry must be rewritten (Prometheus path stepped, metrics-server fallback still snapshot).
- The w3/m3 dashboard metrics page is the downstream consumer — a quick look there confirms charts draw lines, not dots.

## Steps

1. Deploy/sync t001's Prometheus config; wait for cAdvisor targets to be up.
2. `curl` `/v1/metrics/cpu|memory|instance-count` with `startTime`/`endTime` spanning ≥1h and a `resolutionSeconds`; confirm multiple points per series and sane `percentage=true` values. Repeat via GraphQL `metrics(...)`.
3. Update `docs/ADR010-observability.md`: metrics flow diagram/source description, the snapshot deviation entry, and the verify recipe. Run `npx prettier@3.4.2 --write "**/*.md"`.

## Files

- `docs/ADR010-observability.md`

## Acceptance criteria

- [ ] A ≥1h ranged cpu query against the live bex-api returns ≥10 points per instance series.
- [ ] `docs/ADR010-observability.md` no longer claims resource metrics are single-point when Prometheus is configured.
- [ ] Prettier clean.

## Out of scope

- Dashboard chart changes (w3/m3 consumes this transparently).
- Request-metrics host/path filters (separate parity follow-up).
