From cadc7daa6bd244deebb33da17eb82c53f9ca1d90 Mon Sep 17 00:00:00 2001 From: jedarden Date: Thu, 2 Jul 2026 13:44:18 -0400 Subject: [PATCH] docs(plan): update dashboard version to 1.1.0, document cache token features and new docs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Bump header version: dashboard 1.0.0 → 1.1.0, last updated 2026-07-02 - Update Tokens panel row to reflect cache-read/cache-write token rates and running totals display - Add cache token rate fields (token_rate_cache_read/write) to snapshot fields table - Add new docs to Operations inventory: dashboard/README.md, DASHBOARD_API_REFERENCE.md, DEVELOPMENT.md, CONTRIBUTING.md Co-Authored-By: Claude --- docs/plan/plan.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/docs/plan/plan.md b/docs/plan/plan.md index 18b532e..d24dca8 100644 --- a/docs/plan/plan.md +++ b/docs/plan/plan.md @@ -1,7 +1,7 @@ # ZAI Proxy Ecosystem — Plan -**Last updated:** 2026-05-16 -**Version:** proxy/1.10.0, dashboard/1.0.0 +**Last updated:** 2026-07-02 +**Version:** proxy/1.10.0, dashboard/1.1.0 ## Objective @@ -178,6 +178,7 @@ purge runs every 10 minutes. |-------|-------------| | `req_rate` | Requests per second (counter rate over interval) | | `token_rate_in/out` | Input/output tokens per second | +| `token_rate_cache_read/write` | Cache-read/cache-write tokens per second | | `error_rate_pct` | `5xx / total * 100` | | `latency_p50/p95/p99` | Histogram quantiles (ms) | | `request_size_avg` / `response_size_avg` | Histogram mean (bytes) | @@ -194,7 +195,7 @@ Six panels in a 2×3 responsive grid, each wrapped in an error boundary: |-------|---------------| | Request Rate | req/s time series | | Latency | p50 / p95 / p99 (ms) time series | -| Tokens | Input + output token rate (tokens/s) | +| Tokens | Input + output + cache-read + cache-write token rate (tokens/s) and window running totals | | Concurrency | In-flight requests vs MAX_WORKERS | | Rate Limiter | Current rate, AIMD adjustments, rejections | | Errors | Error rate %, upstream errors by type | @@ -212,7 +213,7 @@ Global controls: | Variable | Default | Description | |----------|---------|-------------| -| `SCRAPE_TARGETS` | `http://zai-proxy.mcp.svc.cluster.local:8080/metrics` | Comma-separated scrape URLs | +| `SCRAPE_TARGETS` | `http://zai-proxy.devpod.svc.cluster.local:8080/metrics` | Comma-separated scrape URLs | | `SCRAPE_INTERVAL` | `5s` | How often to scrape | | `SCRAPE_TIMEOUT` | `3s` | Per-scrape HTTP timeout | | `LISTEN_ADDR` | `:8080` | Dashboard listen address | @@ -220,9 +221,6 @@ Global controls: | `RETENTION_5S` | `24h` | High-resolution data retention | | `RETENTION_1M` | `168h` (7d) | Downsampled data retention | -> The default `SCRAPE_TARGETS` hardcodes `mcp` namespace. In deployments where -> the proxy runs in a different namespace (e.g., `devpod`), override via env. - ### Grafana — Prometheus Dashboard (separate from the React dashboard) A Grafana dashboard ConfigMap lives at @@ -406,6 +404,10 @@ Workers reach the proxy via cluster-internal DNS: | Document | What it covers | |----------|----------------| +| `dashboard/README.md` | Dashboard architecture, components, and development guide | +| `docs/notes/DASHBOARD_API_REFERENCE.md` | Dashboard REST API and SSE event documentation | +| `DEVELOPMENT.md` | Development workflow, testing, and CI/CD | +| `CONTRIBUTING.md` | Contribution guidelines and code review process | | `docs/notes/ENVIRONMENT_VARIABLES.md` | Full env var reference | | `docs/notes/DEPLOYMENT.md` | Production/canary dual-deploy workflow | | `docs/notes/CANARY_PROMOTION_PROCEDURE.md` | Step-by-step canary promotion |