From c0fd4e9848e99630d797de804e19ef3c2f3b866f Mon Sep 17 00:00:00 2001 From: atlas Date: Mon, 12 Oct 2026 04:07:10 +0200 Subject: [PATCH] module-eval: hosting the swarm's shared services leaves the review classifier off Pins that deploy.review-classifier.enable is not derived from allSwarmServices: the same fixture turns the queue on and leaves the classifier and its container absent. --- nix/module-eval/swarm-services-switch.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/nix/module-eval/swarm-services-switch.nix b/nix/module-eval/swarm-services-switch.nix index 36be82f6..9d13a4c7 100644 --- a/nix/module-eval/swarm-services-switch.nix +++ b/nix/module-eval/swarm-services-switch.nix @@ -177,6 +177,16 @@ let in lib.length (lib.attrNames es) == 9 && lib.all lib.id (lib.attrValues es); } + { + # Every run spends money on an operator's key, so hosting the shared + # services does not start the classifier. The queue is the control: + # the same fixture does turn the switch's own services on. + name = "hosting the swarm's shared services leaves the review classifier off"; + ok = + !swarmServicesHere.services.hyperhive.deploy.review-classifier.enable + && !(swarmServicesHere.containers ? swarm-review-classifier) + && swarmServicesHere.services.hyperhive.deploy.nats.enable; + } { # The switch fills in for an operator who has not spoken and yields to # one who has — that is what keeps a shared service placeable on a host