From 1577fb0df2df9c16232ab8c040c0ec236dae05a2 Mon Sep 17 00:00:00 2001 From: janiussyafiq Date: Fri, 15 May 2026 20:57:50 +0000 Subject: [PATCH 1/3] docs: replace stale GET /health references with /livez and /admin/v1/health --- docs/configuration/admin-api.md | 8 ++++---- docs/configuration/bootstrap-config.md | 4 ++-- docs/operations/network-and-security.md | 2 +- docs/operations/production-deployment.md | 4 ++-- docs/operations/troubleshooting.md | 4 ++-- docs/operations/upgrades-and-compatibility.md | 4 ++-- docs/reference/admin-api-reference.md | 2 +- 7 files changed, 14 insertions(+), 14 deletions(-) diff --git a/docs/configuration/admin-api.md b/docs/configuration/admin-api.md index 39b70a2d..d864d18d 100644 --- a/docs/configuration/admin-api.md +++ b/docs/configuration/admin-api.md @@ -28,7 +28,7 @@ Admin authentication is static and bootstrap-based for the authenticated operato The following routes are currently public on the admin listener: -- `GET /health` +- `GET /livez` - `GET /metrics` - `GET /admin/openapi.json` - `GET /admin/openapi-scalar` @@ -51,7 +51,7 @@ Do not mix them. The current admin router exposes: -- `GET /health` +- `GET /livez` - `GET /metrics` - `GET /admin/openapi.json` - `GET /admin/openapi-scalar` @@ -97,9 +97,9 @@ Current status behavior includes: - `409` for conflicts such as duplicate names - `500` for store failures -Public routes such as `/health`, `/metrics`, and the OpenAPI endpoints do not require admin auth. +Public routes such as `/livez`, `/metrics`, and the OpenAPI endpoints do not require admin auth. -Use `GET /health` for simple admin-listener reachability. Use `GET /admin/v1/health` when you need authenticated per-model operator health. +Use `GET /livez` for simple admin-listener reachability. Use `GET /admin/v1/health` when you need authenticated per-model operator health. For automation, plan to branch on admin status codes and `error_msg`, not on the proxy-side OpenAI-compatible error envelope. diff --git a/docs/configuration/bootstrap-config.md b/docs/configuration/bootstrap-config.md index 62c91c24..0f1f5e1a 100644 --- a/docs/configuration/bootstrap-config.md +++ b/docs/configuration/bootstrap-config.md @@ -207,13 +207,13 @@ This is a deployment concern, not a per-guardrail-row field. After updating the bootstrap config, start the gateway and verify: ```bash title="Verify proxy bootstrap" -curl -s http://127.0.0.1:3000/health +curl -s http://127.0.0.1:3000/livez ``` For standalone mode, also verify: ```bash title="Verify admin bootstrap" -curl -s http://127.0.0.1:3001/health +curl -s http://127.0.0.1:3001/livez ``` ## Troubleshooting diff --git a/docs/operations/network-and-security.md b/docs/operations/network-and-security.md index ea5e442b..4bd6935a 100644 --- a/docs/operations/network-and-security.md +++ b/docs/operations/network-and-security.md @@ -20,7 +20,7 @@ Recommended boundary: Do not assume admin auth alone is enough protection. Current admin design intentionally leaves some routes unauthenticated on that private listener. -Current admin design intentionally leaves `/health`, `/metrics`, and OpenAPI endpoints unauthenticated on that private listener, so network placement matters. +Current admin design intentionally leaves `/livez`, `/metrics`, and OpenAPI endpoints unauthenticated on that private listener, so network placement matters. ## Secrets And Credentials diff --git a/docs/operations/production-deployment.md b/docs/operations/production-deployment.md index 65260b26..3ebfe164 100644 --- a/docs/operations/production-deployment.md +++ b/docs/operations/production-deployment.md @@ -85,8 +85,8 @@ Before routing real traffic, verify: After deployment, confirm: -1. `GET /health` returns `200` -2. admin-listener `GET /health` returns `200` in standalone mode +1. `GET /livez` returns `200` +2. admin-listener `GET /livez` returns `200` in standalone mode 3. `GET /admin/v1/health` returns `200` in standalone mode 4. `GET /v1/models` returns the expected caller-visible aliases for a test key 5. one real request succeeds on each endpoint family you actually use diff --git a/docs/operations/troubleshooting.md b/docs/operations/troubleshooting.md index 079c24ca..f6728f0a 100644 --- a/docs/operations/troubleshooting.md +++ b/docs/operations/troubleshooting.md @@ -91,8 +91,8 @@ Meaning: When you are not sure where to start: -1. check `GET /health` -2. check admin-listener `GET /health`, then `GET /admin/v1/health` in standalone mode +1. check `GET /livez` +2. check admin-listener `GET /livez`, then `GET /admin/v1/health` in standalone mode 3. identify whether the symptom is startup, propagation, upstream, or policy related 4. inspect the most specific signal next: logs, metrics, headers, or admin health freshness diff --git a/docs/operations/upgrades-and-compatibility.md b/docs/operations/upgrades-and-compatibility.md index ae7fe986..625bf537 100644 --- a/docs/operations/upgrades-and-compatibility.md +++ b/docs/operations/upgrades-and-compatibility.md @@ -18,8 +18,8 @@ Treat upgrades as behavior changes to be verified, not just binary replacements. Before and after an upgrade, verify: -1. `GET /health` -2. admin-listener `GET /health` +1. `GET /livez` +2. admin-listener `GET /livez` 3. `GET /admin/v1/health` 4. `GET /v1/models` 5. one real request on each critical endpoint your clients use diff --git a/docs/reference/admin-api-reference.md b/docs/reference/admin-api-reference.md index 290ea3e0..21ab3f7c 100644 --- a/docs/reference/admin-api-reference.md +++ b/docs/reference/admin-api-reference.md @@ -6,7 +6,7 @@ sidebar_position: 61 ## Public Admin-Listener Routes -- `GET /health` +- `GET /livez` - `GET /metrics` - `GET /admin/openapi.json` - `GET /admin/openapi-scalar` From 049169212df57d757bcf532bf6692a6d9383ab2b Mon Sep 17 00:00:00 2001 From: janiussyafiq Date: Fri, 15 May 2026 21:04:09 +0000 Subject: [PATCH 2/3] =?UTF-8?q?docs:=20add=20migration=20note=20for=20/hea?= =?UTF-8?q?lth=20=E2=86=92=20/livez=20rename=20on=20upgrade=20page?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/operations/upgrades-and-compatibility.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/operations/upgrades-and-compatibility.md b/docs/operations/upgrades-and-compatibility.md index 625bf537..36d832c1 100644 --- a/docs/operations/upgrades-and-compatibility.md +++ b/docs/operations/upgrades-and-compatibility.md @@ -24,6 +24,8 @@ Before and after an upgrade, verify: 4. `GET /v1/models` 5. one real request on each critical endpoint your clients use +Note: the unauthenticated liveness route was renamed from `GET /health` to `GET /livez`. If your existing health-check tooling targets `/health`, it will return `404` after upgrading; update it to point at `/livez`. The authenticated `GET /admin/v1/health` endpoint is unchanged. + If you use several endpoint families in production, test each one you depend on rather than assuming chat-completions success proves all compatibility. ## Areas To Treat Carefully From c816715d25134dfe52e7a7a8baeea4fb67de6bf1 Mon Sep 17 00:00:00 2001 From: janiussyafiq Date: Fri, 15 May 2026 21:08:50 +0000 Subject: [PATCH 3/3] =?UTF-8?q?Revert=20"docs:=20add=20migration=20note=20?= =?UTF-8?q?for=20/health=20=E2=86=92=20/livez=20rename=20on=20upgrade=20pa?= =?UTF-8?q?ge"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 049169212df57d757bcf532bf6692a6d9383ab2b. --- docs/operations/upgrades-and-compatibility.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/operations/upgrades-and-compatibility.md b/docs/operations/upgrades-and-compatibility.md index 36d832c1..625bf537 100644 --- a/docs/operations/upgrades-and-compatibility.md +++ b/docs/operations/upgrades-and-compatibility.md @@ -24,8 +24,6 @@ Before and after an upgrade, verify: 4. `GET /v1/models` 5. one real request on each critical endpoint your clients use -Note: the unauthenticated liveness route was renamed from `GET /health` to `GET /livez`. If your existing health-check tooling targets `/health`, it will return `404` after upgrading; update it to point at `/livez`. The authenticated `GET /admin/v1/health` endpoint is unchanged. - If you use several endpoint families in production, test each one you depend on rather than assuming chat-completions success proves all compatibility. ## Areas To Treat Carefully