{
  "portaShape": {
    "formatVersion": "0.1",
    "kind": "mvp-example",
    "id": "example.pixel-spacing-to-rem-spacing",
    "name": "Pixel spacing to rem spacing",
    "mvpStatus": "complete",
    "summary": "MVP playground fixture for transforming css.pixel_spacing into css.rem_spacing.",
    "sourceShape": {
      "id": "css.pixel_spacing",
      "sampleId": "css.pixel_spacing.sample",
      "variables": [
        {
          "id": "base_size_px",
          "label": "Base Size Px",
          "value": "sample base size px",
          "authority": "source-snapshot"
        },
        {
          "id": "spacing_px",
          "label": "Spacing Px",
          "value": "sample spacing px",
          "authority": "source-snapshot"
        }
      ]
    },
    "destinationShape": {
      "id": "css.rem_spacing",
      "sampleId": "css.rem_spacing.template",
      "variables": [
        {
          "id": "spacing_rem",
          "label": "Spacing Rem",
          "proposedValue": "proposed spacing rem",
          "authority": "proposed-output"
        },
        {
          "id": "rounding_note",
          "label": "Rounding Note",
          "proposedValue": "proposed rounding note",
          "authority": "proposed-output"
        }
      ]
    },
    "controls": [
      {
        "id": "control-pixel-spacing-to-rem-spacing-primary",
        "label": "Review primary mapping",
        "type": "mapping-inspector",
        "edits": [
          "mapping.sources",
          "mapping.operation",
          "destination.proposedValue"
        ]
      },
      {
        "id": "control-pixel-spacing-to-rem-spacing-save",
        "label": "Save as new shape",
        "type": "action",
        "writes": "artifact-library"
      }
    ],
    "mappings": [
      {
        "id": "map-pixel-spacing-to-rem-spacing-spacing-rem",
        "sources": [
          "base_size_px"
        ],
        "destination": "spacing_rem",
        "operation": "convert",
        "editable": true,
        "confidence": 0.86
      },
      {
        "id": "map-pixel-spacing-to-rem-spacing-rounding-note",
        "sources": [
          "spacing_px"
        ],
        "destination": "rounding_note",
        "operation": "convert",
        "editable": false,
        "confidence": 0.78
      }
    ],
    "preview": {
      "source": {
        "base_size_px": "sample base_size_px",
        "spacing_px": "sample spacing_px"
      },
      "proposed": {
        "spacing_rem": "proposed spacing_rem",
        "rounding_note": "proposed rounding_note"
      },
      "destination": "css.rem_spacing"
    },
    "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": "css.pixel_spacing",
      "destinationShape": "css.rem_spacing"
    },
    "runEvidence": {
      "status": "sample-passed",
      "assertions": [
        "all-required-destination-values-populated",
        "mapping-confidence-recorded",
        "export-contains-workflow-policy-snapshot-and-evidence"
      ]
    }
  }
}
