/** * [ref] 批1 追加件(clay 当场裁定,[ref] 批1 行):`POST /v1/admin/config/refresh` —— operator 改完 * 配置**不等 60s tick**,手动触发一次立即拉取。 * * 族属 = `POST /v1/admin/drain` 逐字同族(operator lane:同一条 `explicitOperatorOk` 门、billable=false、 * 刻意不吃 drain / roster-pending 两道 503 —— 运维在停机窗里也要打得通自己的口)。门序照那边: * 身份 → 授权 →(本口无 body,无验型步)。 * * 🔴 语义 = **触发一次既有的 refresh 拍**,不是「再实现一遍拉取」:实现面是 * `configCenter.refreshNow()`,它与 60s cadence 共用同一只 join 形拍(在飞则 join,绝不并发双拍)。 * 回执里的两个世代号取自**同一本**世代账(`/health` 的三键同源)—— 两面各算一次迟早会各说各话。 * * 🔴 没有配置管道(纯 env 形)⇒ 诚实 409 指路,**不吞成 200**:一个「triggered:true 但什么都没发生」的 * 回执会让运维以为配置已经拉过了,那比拒绝糟得多。 */ import type { IncomingMessage, ServerResponse } from "node:http"; import type { RouteCtx, RouteMatch, RouteIdsOf } from "../route-ctx.js"; export declare const ADMIN_CONFIG_REFRESH_PATH = "/v1/admin/config/refresh"; export declare function handleAdminConfigRefresh(req: IncomingMessage, res: ServerResponse, match: RouteMatch, ctx: RouteCtx): Promise; export declare const ADMIN_CONFIG_REFRESH_ROUTES: readonly [{ readonly id: "admin-config-refresh"; readonly path: "/v1/admin/config/refresh"; readonly methods: readonly ["POST"]; }]; /** 本域可分派行的 `id` 闭集 —— handler 的 `switch` 按它判穷尽(漏一口 = 编译红)。 */ export type AdminConfigRefreshRouteId = RouteIdsOf; //# sourceMappingURL=admin-config-refresh.d.ts.map