{
  "version": 2,
  "route": [
    { "id": "coffee", "room": "S2a", "title": "Break Area A-112", "objective": "Follow the fluorescent hallway and pour one coffee.", "completionInteraction": "coffee-station", "checkpoint": true },
    { "id": "cer_signal", "room": "S3", "title": "Central Equipment Room", "objective": "Start the BCN / ST 2110 redundant-path lesson.", "completionInteraction": "signal-panel", "checkpoint": true },
    { "id": "mcr_route", "room": "S8", "title": "Master Control Room", "objective": "Route feeds to Media Partners in the MCR.", "completionInteraction": "mcr-route", "checkpoint": true },
    { "id": "complete", "room": "END", "title": "Replay Tour", "objective": "Replay the clean IBC route from the welcome state.", "completionInteraction": "replay", "checkpoint": false }
  ],
  "optional": [
    { "id": "terminal", "room": "S4", "title": "Optional terminal", "command": "conf t", "gatesRoute": false }
  ],
  "deploymentCandidate": {
    "authorizedToDeploy": true,
    "candidateHealth": ["index.html 200 text/html", "main.js 200 text/javascript", "world.json 200 application/json", "no external requests"],
    "rollbackContract": "Preserve the previous release pointer, switch only after local health passes, and restore the previous pointer if health fails."
  }
}
