{
  "step": "preview",
  "tool": "design_preview",
  "input": {
    "compositionId": "cmp-c013f1ee92f9",
    "version": 1
  },
  "isError": false,
  "error": null,
  "output": {
    "status": "ok",
    "action": "render",
    "compositionId": "cmp-c013f1ee92f9",
    "version": 1,
    "parentVersion": null,
    "operation": "compose",
    "head": "af36064f0f930eec023a3e02e0f1280cf8dbe8f7",
    "schemaHash": "sha256:1b8472f61bf90259ad97727c0bf1c165d13ca58121659973c5e321d111a71375",
    "object": "Warehouse",
    "context": "detail",
    "previewUrl": "http://127.0.0.1:57947/preview/cmp-c013f1ee92f9/1?framework=react&brand=Harbor&theme=light",
    "previews": [
      {
        "framework": "react",
        "url": "http://127.0.0.1:57947/preview/cmp-c013f1ee92f9/1?framework=react&brand=Harbor&theme=light",
        "appUrl": "http://127.0.0.1:57947/preview/cmp-c013f1ee92f9/1/app?framework=react&brand=Harbor&theme=light",
        "moduleUrl": "http://127.0.0.1:57947/preview/cmp-c013f1ee92f9/1/module.js?framework=react&brand=Harbor&theme=light",
        "artifactContentHash": "sha256:2fc24e4ddcd1204110c81e9ce149286ef1a835ab43f619fa64827d81b0bc6730",
        "compiled": {
          "bytes": 55612,
          "sha256": "sha256:6b6e0f5266544ea58489042fb4ca8546b1cb296833223b47ca298fe5a10c04f2"
        },
        "generatedFor": {
          "brand": "Harbor",
          "theme": "light",
          "chartScoped": false
        }
      },
      {
        "framework": "vue",
        "url": "http://127.0.0.1:57947/preview/cmp-c013f1ee92f9/1?framework=vue&brand=Harbor&theme=light",
        "appUrl": "http://127.0.0.1:57947/preview/cmp-c013f1ee92f9/1/app?framework=vue&brand=Harbor&theme=light",
        "moduleUrl": "http://127.0.0.1:57947/preview/cmp-c013f1ee92f9/1/module.js?framework=vue&brand=Harbor&theme=light",
        "artifactContentHash": "sha256:ac0cfd23e92875e08e831d5eceec2f8c4ccb04ec266974c671c3d3ccd7e286b2",
        "compiled": {
          "bytes": 73416,
          "sha256": "sha256:d32dca2c34cc08f41cbab2900f9e2b244c3ec834c3b9ab33b99c63efb48a0a51"
        },
        "generatedFor": {
          "brand": "Harbor",
          "theme": "light",
          "chartScoped": false
        }
      }
    ],
    "host": {
      "url": "http://127.0.0.1:57947",
      "port": 57947,
      "compositionsDir": "~/.oods-foundry/compositions"
    },
    "brand": "Harbor",
    "theme": "light",
    "recordPath": "~/.oods-foundry/compositions/cmp-c013f1ee92f9/versions/1.json",
    "componentContracts": [
      {
        "framework": "react",
        "mappingId": "harbor-team-button",
        "component": "Button",
        "source": {
          "export": "TeamButton",
          "package": "@harbor/example-components/react",
          "version": "1.0.0",
          "packageContentHash": "sha256:f82c9589adb1794361006cadb7c25b7a1108d5f9aefe3726f6790e7f348a3fac"
        },
        "schemaVersion": "1",
        "contractVersion": "1.1.0",
        "scenarioId": "button-activate",
        "obligations": [
          {
            "id": "prop:content",
            "requirement": "content",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "prop:intent",
            "requirement": "intent",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "prop:size",
            "requirement": "size",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "prop:disabled",
            "requirement": "disabled",
            "status": "met",
            "reason": "The rendered native control must expose disabled semantics."
          },
          {
            "id": "prop:type",
            "requirement": "type",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "slot:default",
            "requirement": "default",
            "status": "met",
            "reason": "The shared default slot must name Save changes."
          },
          {
            "id": "event:activate",
            "requirement": "activate",
            "status": "met",
            "reason": "Real pointer click; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]. Real keyboard Enter; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]."
          },
          {
            "id": "state:default",
            "requirement": "default",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "state:hover",
            "requirement": "hover",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "state:focus",
            "requirement": "focus",
            "status": "met",
            "reason": "Real keyboard Tab; expected {\"kind\":\"focus\"}; events []."
          },
          {
            "id": "state:pressed",
            "requirement": "pressed",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "state:disabled",
            "requirement": "disabled",
            "status": "met",
            "reason": "Disabled variant is mounted and its native disabled state is inspected."
          },
          {
            "id": "token:button.background",
            "requirement": "button.background",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "token:button.border",
            "requirement": "button.border",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "token:button.text",
            "requirement": "button.text",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "token:button.focus",
            "requirement": "button.focus",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "accessibility:Native button semantics",
            "requirement": "Native button semantics",
            "status": "met",
            "reason": "The mounted shared scenario must contain one native button."
          },
          {
            "id": "accessibility:Defaults to type=button",
            "requirement": "Defaults to type=button",
            "status": "met",
            "reason": "The default type attribute is read from the real DOM."
          },
          {
            "id": "role",
            "requirement": "button",
            "status": "met",
            "reason": "Observed 1 elements with role button."
          },
          {
            "id": "name",
            "requirement": "label on button",
            "status": "met",
            "reason": "Observed accessible label text: \"Save changes\"."
          },
          {
            "id": "keyboard:Tab",
            "requirement": "Move focus to the named native control",
            "status": "met",
            "reason": "Real keyboard Tab; expected {\"kind\":\"focus\"}; events []."
          },
          {
            "id": "keyboard:Enter",
            "requirement": "Activate the control",
            "status": "met",
            "reason": "Real keyboard Enter; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]."
          },
          {
            "id": "compatibility",
            "requirement": "React asChild remains an extension and is not a Vue parity requirement.",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "scenario:props",
            "requirement": "Shared scenario props and slots mount without an exception",
            "status": "met",
            "reason": "Shared scenario props and slots mounted through the generated adapter without browser errors."
          },
          {
            "id": "scenario:render",
            "requirement": "activation handler called once",
            "status": "met",
            "reason": "The named button activates exactly once for each shared pointer/keyboard trigger."
          },
          {
            "id": "scenario:assertion:0",
            "requirement": "native type defaults to button",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "scenario:assertion:1",
            "requirement": "focus is visible",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "scenario:event:0",
            "requirement": "{\"trigger\":\"keyboard\",\"target\":\"button\",\"key\":\"Tab\",\"effect\":{\"kind\":\"focus\"}}",
            "status": "met",
            "reason": "Real keyboard Tab; expected {\"kind\":\"focus\"}; events []."
          },
          {
            "id": "scenario:event:1",
            "requirement": "{\"trigger\":\"pointer\",\"target\":\"button\",\"effect\":{\"kind\":\"event\"},\"action\":\"click\"}",
            "status": "met",
            "reason": "Real pointer click; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]."
          },
          {
            "id": "scenario:event:2",
            "requirement": "{\"trigger\":\"keyboard\",\"target\":\"button\",\"effect\":{\"kind\":\"event\"},\"key\":\"Enter\"}",
            "status": "met",
            "reason": "Real keyboard Enter; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]."
          }
        ],
        "summary": {
          "met": 16,
          "unmet": 0,
          "not-checked": 14
        },
        "adapterContentHash": "sha256:29fb9dba70356a7cdc1d9271a1b967c79b596183c06da371698c28777ce73d35",
        "contractContentHash": "sha256:f69f2d8aeadbdea813e1d7030f0856146a0822f45d086f9c9ee5d3a8d03fb02a",
        "checkedAt": "2026-10-08T15:03:17.779Z",
        "browser": "Chromium 153.0.8010.12"
      },
      {
        "framework": "vue",
        "mappingId": "harbor-team-button",
        "component": "Button",
        "source": {
          "export": "TeamButton",
          "package": "@harbor/example-components/vue",
          "version": "1.0.0",
          "packageContentHash": "sha256:f82c9589adb1794361006cadb7c25b7a1108d5f9aefe3726f6790e7f348a3fac"
        },
        "schemaVersion": "1",
        "contractVersion": "1.1.0",
        "scenarioId": "button-activate",
        "obligations": [
          {
            "id": "prop:content",
            "requirement": "content",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "prop:intent",
            "requirement": "intent",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "prop:size",
            "requirement": "size",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "prop:disabled",
            "requirement": "disabled",
            "status": "met",
            "reason": "The rendered native control must expose disabled semantics."
          },
          {
            "id": "prop:type",
            "requirement": "type",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "slot:default",
            "requirement": "default",
            "status": "met",
            "reason": "The shared default slot must name Save changes."
          },
          {
            "id": "event:activate",
            "requirement": "activate",
            "status": "met",
            "reason": "Real pointer click; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]. Real keyboard Enter; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]."
          },
          {
            "id": "state:default",
            "requirement": "default",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "state:hover",
            "requirement": "hover",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "state:focus",
            "requirement": "focus",
            "status": "met",
            "reason": "Real keyboard Tab; expected {\"kind\":\"focus\"}; events []."
          },
          {
            "id": "state:pressed",
            "requirement": "pressed",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "state:disabled",
            "requirement": "disabled",
            "status": "met",
            "reason": "Disabled variant is mounted and its native disabled state is inspected."
          },
          {
            "id": "token:button.background",
            "requirement": "button.background",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "token:button.border",
            "requirement": "button.border",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "token:button.text",
            "requirement": "button.text",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "token:button.focus",
            "requirement": "button.focus",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "accessibility:Native button semantics",
            "requirement": "Native button semantics",
            "status": "met",
            "reason": "The mounted shared scenario must contain one native button."
          },
          {
            "id": "accessibility:Defaults to type=button",
            "requirement": "Defaults to type=button",
            "status": "met",
            "reason": "The default type attribute is read from the real DOM."
          },
          {
            "id": "role",
            "requirement": "button",
            "status": "met",
            "reason": "Observed 1 elements with role button."
          },
          {
            "id": "name",
            "requirement": "label on button",
            "status": "met",
            "reason": "Observed accessible label text: \"Save changes\"."
          },
          {
            "id": "keyboard:Tab",
            "requirement": "Move focus to the named native control",
            "status": "met",
            "reason": "Real keyboard Tab; expected {\"kind\":\"focus\"}; events []."
          },
          {
            "id": "keyboard:Enter",
            "requirement": "Activate the control",
            "status": "met",
            "reason": "Real keyboard Enter; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]."
          },
          {
            "id": "compatibility",
            "requirement": "React asChild remains an extension and is not a Vue parity requirement.",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "scenario:props",
            "requirement": "Shared scenario props and slots mount without an exception",
            "status": "met",
            "reason": "Shared scenario props and slots mounted through the generated adapter without browser errors."
          },
          {
            "id": "scenario:render",
            "requirement": "activation handler called once",
            "status": "met",
            "reason": "The named button activates exactly once for each shared pointer/keyboard trigger."
          },
          {
            "id": "scenario:assertion:0",
            "requirement": "native type defaults to button",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "scenario:assertion:1",
            "requirement": "focus is visible",
            "status": "not-checked",
            "reason": "No executable probe for this declared obligation; it is not inferred from mounting."
          },
          {
            "id": "scenario:event:0",
            "requirement": "{\"trigger\":\"keyboard\",\"target\":\"button\",\"key\":\"Tab\",\"effect\":{\"kind\":\"focus\"}}",
            "status": "met",
            "reason": "Real keyboard Tab; expected {\"kind\":\"focus\"}; events []."
          },
          {
            "id": "scenario:event:1",
            "requirement": "{\"trigger\":\"pointer\",\"target\":\"button\",\"effect\":{\"kind\":\"event\"},\"action\":\"click\"}",
            "status": "met",
            "reason": "Real pointer click; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]."
          },
          {
            "id": "scenario:event:2",
            "requirement": "{\"trigger\":\"keyboard\",\"target\":\"button\",\"effect\":{\"kind\":\"event\"},\"key\":\"Enter\"}",
            "status": "met",
            "reason": "Real keyboard Enter; expected {\"kind\":\"event\"}; events [{\"event\":\"activate\",\"value\":\"\"}]."
          }
        ],
        "summary": {
          "met": 16,
          "unmet": 0,
          "not-checked": 14
        },
        "adapterContentHash": "sha256:5c7b3eb2cd4fecd47bdcf75c068d01a35ee82bc54a527b31dce14859251ec236",
        "contractContentHash": "sha256:f69f2d8aeadbdea813e1d7030f0856146a0822f45d086f9c9ee5d3a8d03fb02a",
        "checkedAt": "2026-10-08T15:03:22.089Z",
        "browser": "Chromium 153.0.8010.12"
      }
    ],
    "warnings": [],
    "measured": {
      "validation": [
        "react",
        "vue"
      ],
      "charts": {
        "placed": 0,
        "conformant": 0,
        "notConformant": 0,
        "uncertified": 0,
        "scopes": []
      },
      "axe": [],
      "notMeasured": [
        "axe:react:A/light",
        "axe:react:A/dark",
        "axe:react:A/hc",
        "axe:react:B/light",
        "axe:react:B/dark",
        "axe:react:B/hc",
        "axe:react:Harbor/light",
        "axe:react:Harbor/dark",
        "axe:react:Harbor/hc",
        "axe:vue:A/light",
        "axe:vue:A/dark",
        "axe:vue:A/hc",
        "axe:vue:B/light",
        "axe:vue:B/dark",
        "axe:vue:B/hc",
        "axe:vue:Harbor/light",
        "axe:vue:Harbor/dark",
        "axe:vue:Harbor/hc"
      ]
    },
    "editable": {
      "regions": [
        {
          "id": "detail-header-1",
          "component": "Stack"
        },
        {
          "id": "detail-body-10",
          "component": "Card"
        }
      ],
      "slots": [
        {
          "slotName": "header",
          "selectedComponent": "DetailHeader",
          "candidates": [
            "DetailHeader",
            "StatusTimeline"
          ]
        }
      ],
      "fields": {
        "detail-header-1": [
          "status"
        ],
        "detail-body-10": [
          "code",
          "city",
          "manager_email",
          "currency",
          "organization_id",
          "units_on_hand",
          "capacity_units",
          "created_at",
          "updated_at",
          "last_event",
          "last_event_at"
        ]
      },
      "seed": null
    },
    "durationMs": 10330.783125
  }
}
