<!-- Shared by every role that reports a measurement. Edit once, here — not in a role file. -->

## Rooms — a measurement is true of the room it was taken in

A verdict that does not name its room gets read as a claim about the product. That has been
measured four times: nine "green on the tree" reports taken on one platform against CI legs on
another, where the tenth measurement was red on six of them; fifteen tests that skip on Linux
and do not skip on macOS; a type check run against one interpreter locally and four in CI,
where an unnecessary suppression became a red pull request in eighteen seconds; and a
clean-room verdict that was correct and could not see the bead running beside it.

**Naming the room does not make a verdict stronger. It makes it answerable** — a reader can
see which rooms the run covers and which it does not. Do not write that a room-naming verdict
is a better one. It is the same verdict, attributed.

- `beadloom rooms` lists the rooms this project **declares** — the supported interpreters from
  its packaging metadata, the legs from its CI workflows — the room you are in, and the ones
  your run did not enter. The list is derived from those declarations, so a leg added later is
  covered without anyone editing a checklist.
- `beadloom rooms --dimension <axis>` prints one axis, one value per line: the form a command
  loops over instead of a spelled-out list that goes stale.
- `beadloom ci` prints the room beside its verdict, and the MCP `complete_bead` tool carries it
  on the verdict a bead is closed on.
- Report a measurement in the words that say which one you made. **"green in a clean room over
  N files"**, **"green on the tree"** and **"green on <leg>"** are three different claims;
  reporting them with one word is what makes a later discrepancy read as a contradiction.

<!-- beadloom:carries=clean-room -->

**The clean room, and what it cannot see.** Verifying in a clean room is correct and is blind
by construction to any interaction with a bead running beside you — four agents once each
reported green on a tree that was red, and none of them was wrong. State that limit where you
state the result, and leave the combined tree to the wave's gate owner rather than writing a
sentence that implies you covered it.

- **Build the room with `beadloom clean-room <bead-id> --at <dir> --carry <path>...`.** The
  command takes the room's directory from the bead, so two agents of one wave cannot be handed
  the same one, and it CREATES that directory rather than entering it: a directory it did not
  build is refused, so nothing inside a room postdates the room. It copies HEAD plus the files
  you name and nothing else — on a shared tree, "everything that differs" is your neighbour's
  work as well as yours. `--rebuild` replaces a room this command built, at the price of
  retyping the whole `--carry` list, which is friction nobody has removed yet.
- **The room holds the environment its verdict is taken under.** It builds its own interpreter,
  installs the project into it and records what it installed, so a verdict is not decided by
  what the machine happened to hold. `--extras` names a different set, for reproducing one
  particular leg, and `--no-environment` builds no interpreter at all — which hands the
  measurement back to the project's own environment and is a fact to report, not a default to
  take. Read the exit code: 1 is a usable room with something about its measurement
  unconfirmed, and that finding belongs in your report; 2 is no room at all, and the directory
  is left exactly as it was found.
- **The room is named `room-<bead-id>`, the name `beadloom waves` prints beside each bead, and
  the name is only half of it.** Two agents once each built a room called `cleanroom` under one
  shared session scratchpad, and one of them measured over its neighbour's untracked files and
  got a result that looked exactly like a correct clean room. A room whose name cannot say
  whose it is is a shared directory with a reassuring name — and a correct name isolates the
  files and not the interpreter, which is why one command owns both.
- **The wave's gate owner measures the combined tree; everyone else reports their own room
  only.** `beadloom waves` names the owner for every wave, including a wave of one. If you are
  not the owner, do not write a sentence that implies you covered the tree; if you are, say
  "green on the tree" as a claim separate from your own room's.
