Skip to content

Demo Scenario Narratives

Each multi-actor demo scenario has a narrative page that describes one case's progress through the Coordinated Vulnerability Disclosure (CVD) process in domain terms: who acts, what they do, and why each step can only happen after the one before it. The narratives name no container, endpoint, or helper function. A narrative is the same case the demo runs, told from the participants' point of view. The tutorials tell you how to run that case, and the protocol reference tells you which messages it produces.

Scenarios

The table below is rendered at build time from the scenario registry. Each scenario declares itself in its own demo module (ADR-0098, DEMOCI-11-009), so no copy of the table is committed here and it cannot drift.

These pages carry no status or maturity claim, because a page cannot know whether its scenario currently passes (DEMOCI-11-012). The live answer is the Demo Integration workflow, which runs every registered scenario on each push to main and files an issue when one fails.

Short name Participants Notable protocol feature
RCCV-extension Reporter + C1 + C2 + Vendor Second coordinator suggests vendor
RCCV-handoff Reporter + C1 → C2 + Vendor Ownership transfer between two coordinators
RCV Reporter + Coordinator + Vendor Coordinator-mediated report and vendor onboarding
RCV embargo Reporter + Coordinator + Vendor Embargo revision after submission and deliberate termination
RCV-reject Reporter + Coordinator + Vendor (Vendor rejects) Invite rejection path
RCVCV Reporter + C1 + V1 + C2 + V2 Actor-suggestion flow (ADR-0026)
RCVV embargo Reporter + Coordinator + Vendor1 + Vendor2 Embargo revision cycle, late second vendor, and accidental collapse
rv Reporter + Vendor Baseline two-actor CVD
RVCV-extension Reporter + Vendor1 + Coordinator + Vendor2 Coordinator-suggested second vendor
RVCV-handoff Reporter + Vendor1 → Coordinator + Vendor2 Case-ownership transfer to coordinator
RVV Reporter + Vendor1 + Vendor2 Direct invitation of a second vendor

How to use these pages

The narratives are a conformance oracle

Each narrative's front matter declares the causal edges the protocol must produce: for every declared pair, the antecedent's ledger entry must appear before the consequent's. Because the narratives are written independently of the code, they can contradict the implementation, which is what makes them useful for catching regressions (ADR-0058, ADR-0079). The demo integration workflow's invariant harness checks every declared edge against the case ledger each scenario run produces (DEMOMA-22-005). A step the ledger does not record, such as the initial report submission, is declared as unobservable and excluded from that check.