Change the TURNPool API types safely - edit types and markers, regenerate, update webhooks, tests and docs. Use whenever a field is added, removed or re-marked in api/v1alpha1.
中文简介正在准备中。当前显示原文说明。
Add a new addressing mode to Turnfleet - implement Planner and Renderer, golden tests, an e2e case and an ADR. Use when a new way of assigning relay addresses or port ranges is needed.
中文简介正在准备中。当前显示原文说明。
实测评分 未实测
查看安装方法安装前可以查看交给 AI 代理的指令内容。
An addressing mode answers two questions: which node does a relay run on, and
which public relay identity (address, port range) does it own. Anything that
does not change capacity accounting is not a new mode.
api/v1alpha1/AddressingMode plus the
+kubebuilder:validation:Enum marker. Adding a value breaks every switch
over the type by design, so fix them all (exhaustive enforces it).internal/relay.Planner for the mode:
(address, disjoint port range).
Prove disjointness, do not assume it.portsTotal sums to one IP's port space, not more).internal/relay.Renderer for the mode: listening address,
relay address, -E/-X mapping, port range, listeners, realm, secret,
denied peers. Every coturn flag must already appear in
internal/relay/testdata/coturn-4.18.0-r0-help.txt. Before adding a flag,
re-capture that file from the pinned image (docker run --rm <pinned coturn> turnserver --help) and update docs/adr/0008-coturn-config-rendering.md.internal/relay/testdata/, plus a
planner test for stability, rebalancing and disjointness. The FuzzRenderer
target must still pass.internal/webhook/v1alpha1/turnpool_webhook.go: required fields present,
forbidden fields absent, ranges partitioned without overlap.test/e2e/ that proves the mode with real relays: the
advertised address is the expected one, the ranges are disjoint, and each
relay answers a real TURN Allocate. Fixtures go in test/fixtures/.docs/adr/NNNN-addressing-mode-<name>.md: what the mode is for,
what it costs, what capacity it actually adds (often none), and what it
forbids. Update the modes table in docs/adr/0001-addressing-modes.md and
docs/capacity-model.md in the same change.make ci then make test-e2e.还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
Change the TURNPool API types safely - edit types and markers, regenerate, update webhooks, tests and docs. Use whenever a field is added, removed or re-marked in api/v1alpha1.
中文简介正在准备中。当前显示原文说明。
Review the changes since a fixed point (commit, branch, tag, or merge-base) along two axes: Standards (does the code follow this repo's documented coding standards?) and Spec (does the code match what the originating issue/spec asked for?). Runs both reviews in parallel sub-agents and reports them side by side. Use when the user wants to review a branch, a PR, work-in-progress changes, or asks to "review since X".
中文简介正在准备中。当前显示原文说明。
Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.
中文简介正在准备中。当前显示原文说明。
Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.
中文简介正在准备中。当前显示原文说明。
Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.
中文简介正在准备中。当前显示原文说明。
Debug a failing relay end to end - inspect the kind cluster, relay logs and rendered coturn config, and run turnfleet-probe by hand. Use when a relay never forms, a probe fails, or an e2e case breaks.
中文简介正在准备中。当前显示原文说明。