Files
computer-playbook/roles/svc-db-qdrant/meta/variants.yml
kevinveenbirkenbachandClaude Opus 5 5bf4d4d8ac refactor(variants)!: let an MCP round decide for itself what it carries
The mcp-consumer-variant guard demanded three things of a provider's MCP
round: every admitted consumer enabled, each of them pinned `services: null`
so it dragged no dependencies along, and no other service left enabled. Two
of those were the rule legislating a round's contents rather than checking
that the pairing gets proven at all.

Keep the first and drop the rest. What else the round carries is the role's
own call, so the tor/litellm exemption, the datastore exemption and the
`allowed` set they fed have no reader left and go with them.

Strip the 63 `services: null` pins the rule forced across 20 variants, all
written bare as `services:`. The topic-emptying capability behind them
stays: apply_topic still normalises None to {} for the inventory payload,
and the unit tests still cover it. Only the uses and the mandate are gone.

That leaves overridden_providers scanning a repository with nothing left to
find, so its three assertions passed over an empty dict and would have
stayed green however the function broke. Rebuild them on a synthetic role
tree, which also covers the case the repository scan never held: a variant
naming a plain flag is not an override.

Removing the pins changes what deploys. Measured across all 20 variants: 18
identical, prometheus#1 grows 23 to 31 roles, moodle#2 grows 31 to 32 and
crosses the memory budget until the following commit shrinks it back.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-02 01:01:14 +02:00

35 lines
645 B
YAML

---
# Matrix-deploy variant overrides for svc-db-qdrant.
# See docs/contributing/artefact/files/role/variants.md for the file format.
- services:
tor:
enabled: true
openwebui:
enabled: false
shared: false
hermes:
enabled: false
shared: false
openclaw:
enabled: false
shared: false
flowise:
enabled: false
shared: false
- services:
tor:
enabled: true
openwebui:
enabled: true
shared: true
hermes:
enabled: true
shared: true
openclaw:
enabled: true
shared: true
flowise:
enabled: true
shared: true