From 9a2834bc8d0dc7eff68c9927c9f1b4bd478b7f78 Mon Sep 17 00:00:00 2001 From: jester Date: Sat, 25 Apr 2026 20:34:52 +0000 Subject: [PATCH] Record API Velocity lifecycle decisions --- Codex/API/DECISIONS.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Codex/API/DECISIONS.md b/Codex/API/DECISIONS.md index e83b562..1b11b72 100644 --- a/Codex/API/DECISIONS.md +++ b/Codex/API/DECISIONS.md @@ -18,6 +18,12 @@ - proxy logging should avoid exposing cookies or detailed forwarded-header values in routine logs. - legacy worker-based provisioning is no longer a live API path and should stay archived unless intentionally revived. - legacy port allocation / slot reservation is no longer part of the active provisioning model and should stay retired unless intentionally revived end to end. +- Minecraft edge routing uses Velocity; API should call the bridge's real HTTP routes: `POST /zpack/register`, `POST /zpack/unregister`, and `GET /zpack/status`. +- API must not depend on a nonexistent Velocity `/zpack/list` route for registration verification. +- `registered_with_proxy` means Velocity accepted the backend into its routing table; it does not mean the Minecraft backend is confirmed playable. +- `proxy_ping_ok` / `proxy_ping_failed` are the stronger proxy-side readiness signals because they come from Velocity pinging the registered backend. +- Proxy lifecycle state belongs under `ContainerInstance.payload.proxy`, separate from agent readiness and `agentState`. +- The Velocity bridge should report proxy lifecycle events to `POST /internal/velocity/proxy-status` using the same hashed `X-Zpack-Secret` auth style. ## Tracking rule - when API work completes, remove it from `OPEN_ITEMS.md`