--- topic: checking it status: accepted date: 2026-09-21 deciders: jochen reconstructed: false extends: 02-DECISIONS/0089-a-bed-reads-the-catalogue-it-proves.md --- # 93. A fixture that runs a module's runtime carries the module's name ## Context [ADR 0089](0089-a-bed-reads-the-catalogue-it-proves.md) said a bed that needs less than a module declares is a mesh test, and carries a name of its own. Twelve beds were to be renamed on that basis ([issue 074](../04-ISSUES/074-a-mesh-test-wears-a-catalogue-modules-name/00-report.md)). Reading how a module's tools are reached showed why they cannot be: the account the mesh issues a module is scoped to `serve..*` from the manifest's name, and the runtime binds its tool queues under the name baked into its image. A fixture named otherwise but running the real runtime would be refused its own queues. The name is not a label; it is the tool namespace and the broker scope. ## Considered Options 1. **Rename anyway, and rebuild each runtime under the fixture's name.** Rejected: a runtime built under a false name proves nothing about the module and costs a build per bed. 2. **A fixture that runs a module's runtime carries the module's name, and therefore reads the catalogue.** Adopted. ## Decision A bed that runs a module's runtime installs the catalogue's manifest for that module and what it requires — the vault for a `secret`, the route module for a route — and proves the mechanism against the real module. A name of its own is for a fixture that runs no real runtime: a declaration-only stub, a bare upstream image. ## Consequences The mechanism beds become module beds with a mechanism inside them, which is more than they were. What got harder: a bed that wanted a cut-down redis now raises the vault beside it; one that wanted a sidecar without its server raises the server. Each conversion is a lab run, and the beds still carrying a copy are declared with this reason until converted. ## How it is checked The lab's inline-copy check refuses undeclared copies as before; the declared list's reason for these beds names this record. Two beds converted with the vault beside them ran green. ## References - [issue 074](../04-ISSUES/074-a-mesh-test-wears-a-catalogue-modules-name/00-report.md) - [ADR 0089](0089-a-bed-reads-the-catalogue-it-proves.md), [ADR 0047](0047-a-module-runs-its-code-as-its-own-process-with-its-own-account.md) - [`03-DESIGN/01-to-be/01-end-to-end-testing.md`](../03-DESIGN/01-to-be/01-end-to-end-testing.md)