# live-conformance/coperformance — co-performance in rooms The corpus of [`extensions/co-performance.md`](../../extensions/co-performance.md) §11: rooms in which people and an AI participant perform together and an audience joins in. Each room is a room (its `WRD1` descriptor, `WRG1` grants, key-log head or none, and each principal's `WEV1` chain, in which the extension's statements ride as `meta` payloads), its `WPP1` co-performance policies, the media objects the relay forwarded, and the symbolic payloads of some of them; and what a verifier states of it. **Co-performance equivalence.** For each room, a conforming co-performance verifier given its `descriptor`, `grants`, `key_log`, `chains`, `policies`, `objects` (each its `principal`, `track`, `group`, `object`, `digest`, `arrival` and `due`) and `payloads` (§9.1) reaches the outcome the room states (§9.3): - `refuse`: the `reason` and where, `at`: `["room", …]` with the room verifier's own place (live-rooms §9.1), `["policy", i]`, `["grant", i]`, `["record", c, i]` for record `i` of chain `c`, or `["object", i]`; - `accept` or `gap` (with the `gaps`, each `principal`, `first` and `last`): the `room` id; the `policy_digests`; the `intents`, each its `digest`, `principal`, `form`, `at`, `outcome` (`kept`, `diverged` or `missed`) and what `played` (an object's `track`, `group` and `object`, an `event` by digest, or `null`); each participant's `fidelity` (`announced`, `kept`, `diverged`, `missed`); the `schedules`, each its `digest`, `mode`, `from` and `turns` (each `segment`, `index`, `start`, `end`, scheduled `holder` and `role`); the `handovers`, each its `digest`, `at`, `to`, and the `schedule`, `segment` and `turn` it passes; the `floor` of each object, in the order given: `open`, `in_turn` or `out_of_turn`, the governing `mode`, whether it was `late`, its `lateness` in µs and the flags of the `marks` naming it; and the `windows`, each its `digest`, `rule`, `close`, `eligible` inputs, `commit`, `picks` and `credits` (each `step`, `party`, `ref`, `count`), with the plurality's `tally` and the reactions' `scores`. A verifier that reaches another outcome, reason, place, outcome of an intent, turn, floor, pick or credit does not conform. **Provenance.** Generated here: `wai_co_performance_vectors gen` writes `vectors.json` from rooms authored in code as scripts of steps, from fixed seeds. Each principal's key is SHA-256 of a fixed label and the principal's index; every time is a constant (the rooms' `t0` is 2026-10-21T00:00:00Z); every text is written for the corpus in English; each object's content, the AI participant's model and the draw's seed are SHA-256 of fixed labels, and the symbolic payloads are notes and a camera move written here; every origin is an `.example` name (RFC 2606); and Ed25519 signing is deterministic (RFC 8032), so the file is the same bytes on every machine. A refused room is the script of a good one with one step, one policy, one attribute or one object changed. The generator asserts that each room reaches the outcome it was written to have, and that the corpus gives every reason of §10, before it writes. No recorded data. ## Layout - `vectors.json`: `principals` (the keys, by name, informative), `model` (the AI participant's model digest, informative) and `vectors`. The rooms: - `jam`: a director with the direct power, a performer and an AI participant whose grants carry latency budgets. A schedule from 4 s trades four-bar phrases (two bars of four beats at 120 beats a minute, so 4 s a turn) between the performer and the AI participant as call-and-response pairs, and marks; a second, from 20 s, gives three-second turns and refuses. The AI participant announces an object, notes, a text line, a camera move, a second object it then plays differently, and a text line it never says: four kept, one diverged, one missed; the performer one object, kept. The AI participant's late object and its object in the performer's turn are marked by the clock; the director hands the end of the performer's second call to the AI participant, whose object then is in turn; the clock's fidelity statement states both participants' counts. - `audience`: a host with the direct and moderate powers, and four members whose grants carry `audience_input` 2. A plurality vote over three options, one member changing its vote and one voting after the close; a window selected by reactions over prompts and a sketch, one prompt denied by the host and left out, one reaction retracted, one prompt sent after the close; and a seeded draw over movement samples and a sketch. Each window committed, selected and credited. - `audience_gap`: the audience room with one member's prompt not delivered: the gap, and what the verifier states from what it holds. - One refused room for each reason of §10, each a control of one defect, among them `fidelity_counts_a_divergence_kept` (an intent that played something else counted kept), `turn_violated` (an object out of turn under refuse, forwarded), `selection_counts_a_late_input` (an input sent after its window closed, selected), `selection_does_not_recompute` (picks the committed inputs do not give), `selected_input_uncredited` (a pick with no credit) and `late_unflagged` (a late object with no mark); policies that do not read, whose signature fails, or of another room; and an input by a principal the room never admitted, which the room verifier refuses.