A teammate’s pull request makes the intake server start faster. The network list is now kept and turned into centers on the first request, a center listed twice is rejected while they are created, and every center’s lookup is warmed then, so no intake request waits for one. You are reviewing the pull request.
Since the change, a lookup at one center fails when another center’s export is syncing, and a misconfigured network starts, reports healthy, and fails its first request instead of failing to start.
Reproduce
With riverside’s export still syncing, start the server and look up owl at northfield: northfield should answer [5], built once. Today the lookup is rejected with riverside: export still syncing. And a network that lists riverside twice starts without complaint.
Acceptance criteria
- A network that lists a center twice is rejected when the server starts, with duplicate center: name.
- A center’s lookup is still built on that center’s first lookup only: no request builds another center’s, and one center’s syncing export fails only its own lookups.
- Starting the server and polling status build nothing.
- The earlier levels’ rules still hold: a failed lookup is retried, a malformed plan is kept until reload.
Notes
- Output as in the earlier levels. For a rejected start, the case prints only start: rejected (reason).
- Keep the server’s and centers’ names and signatures, the recipes and the plumbing; the checker calls them. You may remove what the pull request added.