{
  "portaShape": {
    "formatVersion": "0.1",
    "kind": "mvp-example",
    "id": "example.font-scale-to-css-classes",
    "name": "Font scale to CSS classes",
    "mvpStatus": "complete",
    "summary": "MVP playground fixture for transforming design.type_scale into css.utility_classes.",
    "sourceShape": {
      "id": "design.type_scale",
      "sampleId": "design.type_scale.sample",
      "variables": [
        {
          "id": "sizes",
          "label": "Sizes",
          "value": "sample sizes",
          "authority": "source-snapshot"
        },
        {
          "id": "line_heights",
          "label": "Line Heights",
          "value": "sample line heights",
          "authority": "source-snapshot"
        },
        {
          "id": "weights",
          "label": "Weights",
          "value": "sample weights",
          "authority": "source-snapshot"
        },
        {
          "id": "names",
          "label": "Names",
          "value": "sample names",
          "authority": "source-snapshot"
        }
      ]
    },
    "destinationShape": {
      "id": "css.utility_classes",
      "sampleId": "css.utility_classes.template",
      "variables": [
        {
          "id": "classes",
          "label": "Classes",
          "proposedValue": "proposed classes",
          "authority": "proposed-output"
        },
        {
          "id": "font_size_rules",
          "label": "Font Size Rules",
          "proposedValue": "proposed font size rules",
          "authority": "proposed-output"
        },
        {
          "id": "line_height_rules",
          "label": "Line Height Rules",
          "proposedValue": "proposed line height rules",
          "authority": "proposed-output"
        }
      ]
    },
    "controls": [
      {
        "id": "control-font-scale-to-css-classes-primary",
        "label": "Review primary mapping",
        "type": "mapping-inspector",
        "edits": [
          "mapping.sources",
          "mapping.operation",
          "destination.proposedValue"
        ]
      },
      {
        "id": "control-font-scale-to-css-classes-save",
        "label": "Save as new shape",
        "type": "action",
        "writes": "artifact-library"
      }
    ],
    "mappings": [
      {
        "id": "map-font-scale-to-css-classes-classes",
        "sources": [
          "sizes"
        ],
        "destination": "classes",
        "operation": "generate",
        "editable": true,
        "confidence": 0.86
      },
      {
        "id": "map-font-scale-to-css-classes-font-size-rules",
        "sources": [
          "line_heights"
        ],
        "destination": "font_size_rules",
        "operation": "generate",
        "editable": false,
        "confidence": 0.78
      },
      {
        "id": "map-font-scale-to-css-classes-line-height-rules",
        "sources": [
          "weights"
        ],
        "destination": "line_height_rules",
        "operation": "generate",
        "editable": false,
        "confidence": 0.78
      }
    ],
    "preview": {
      "source": {
        "sizes": "sample sizes",
        "line_heights": "sample line_heights",
        "weights": "sample weights",
        "names": "sample names"
      },
      "proposed": {
        "classes": "proposed classes",
        "font_size_rules": "proposed font_size_rules",
        "line_height_rules": "proposed line_height_rules"
      },
      "destination": "css.utility_classes"
    },
    "workflow": {
      "steps": [
        "import-source-shape",
        "inspect-variables",
        "map-values",
        "preview-transform",
        "validate-result",
        "save-as-new-shape",
        "export-posh-artifact"
      ]
    },
    "policy": {
      "requiresApproval": false,
      "checks": [
        "schema-valid",
        "authority-declared",
        "loss-reviewed",
        "provenance-recorded"
      ]
    },
    "snapshot": {
      "capturedAt": "2026-07-20T00:00:00Z",
      "sourceShape": "design.type_scale",
      "destinationShape": "css.utility_classes"
    },
    "runEvidence": {
      "status": "sample-passed",
      "assertions": [
        "all-required-destination-values-populated",
        "mapping-confidence-recorded",
        "export-contains-workflow-policy-snapshot-and-evidence"
      ]
    }
  }
}
