{
  "artifact": {
    "bytes": 10178,
    "format": "json",
    "mediaType": "application/json",
    "path": "samples/states/gitlab/merge-request-review/state.json",
    "sha256": "02085c5af43c2c1e4d1c3728db51d57b482303215e36133d25e99af9d9c211ca"
  },
  "capabilities": {
    "limitations": [
      "Historical demo fixture contains a duplicate branch id; public derivatives remove only later duplicates."
    ],
    "required": [
      "state.read",
      "state.load",
      "state.reset",
      "rest.projects"
    ],
    "supportedSurface": "Stateful projects, issues, merge requests, notes, labels, branches, and pipelines."
  },
  "category": "workflow",
  "displayName": "GitLab merge request review workflow",
  "entityCounts": {
    "collections": {
      "applications": 0,
      "branches": 3,
      "clusterAgents": 0,
      "clusterAgentTokens": 0,
      "clusterAgentUrlConfigurations": 0,
      "commits": 0,
      "commitStatuses": 0,
      "deployKeys": 0,
      "environments": 0,
      "featureFlags": 0,
      "featureFlagUserLists": 0,
      "groupAccessTokens": 0,
      "issueNotes": 1,
      "issues": 1,
      "jobTokenAllowlistGroups": 0,
      "jobTokenAllowlistProjects": 0,
      "labels": 0,
      "mergeRequestNotes": 0,
      "mergeRequests": 1,
      "milestones": 0,
      "packageFiles": 0,
      "packageProtectionRules": 0,
      "packages": 0,
      "pipelineJobs": 1,
      "pipelines": 1,
      "projectAccessTokens": 0,
      "projectMembers": 0,
      "projects": 1,
      "projectVariables": 0,
      "releases": 0,
      "repoFiles": 0,
      "snippets": 0,
      "tags": 0,
      "webhooks": 0
    },
    "total": 9
  },
  "environmentId": "gitlab",
  "expectedDiff": {
    "changedPathsInclude": [
      "mergeRequestNotes"
    ],
    "exact": false,
    "notes": "Hosted promotion must observe every listed path after the provider-native mutation; dynamic provider ids and timestamps are excluded from exact matching."
  },
  "expectedFirstRead": {
    "body": null,
    "expectedStatus": [
      200
    ],
    "method": "GET",
    "operationId": "getMergeRequest",
    "path": "/api/v4/projects/82857419/merge_requests/3",
    "transport": "provider-rest"
  },
  "id": "gitlab.merge-request-review.v1",
  "provenance": {
    "authoredBy": "archal",
    "kind": "authored",
    "sanitizationNotes": [
      "Replaced 6 credential-shaped or non-example email value(s).",
      "Replacement paths: branches.0.commit.author_email (email-domain), branches.0.commit.committer_email (email-domain), branches.1.commit.author_email (email-domain), branches.1.commit.committer_email (email-domain), branches.2.commit.author_email (email-domain), branches.2.commit.committer_email (email-domain)"
    ],
    "sourcePath": "clones/gitlab/seeds/demo.json",
    "sourceSha256": "81240378a5e291249411706bd47b93aa58b4035202a5251a06fa1b791a94c5eb",
    "transformationNotes": [
      "Constructed by the exact reviewed profile gitlab.merge-request-review.",
      "Selected and amended records from the pinned clones/gitlab/seeds/demo.json fixture without changing that historical source.",
      "Validated against the scenario proof, first-read prerequisites, mutation prerequisites, and declared relationship closure.",
      "Canonicalized object-key ordering for byte-stable public output."
    ]
  },
  "purpose": "Start from an open merge request with retained branches, notes, pipeline, and job, then add and reset one review note.",
  "qualification": {
    "candidate": {
      "basis": "catalog-admission",
      "status": "passed"
    },
    "certification": {
      "evidencePath": null,
      "lastHostedVerificationAt": null,
      "runtimeBundleDigest": null,
      "sourceCommit": null,
      "status": "unknown"
    },
    "isolation": {
      "lastVerifiedAt": null,
      "status": "unknown"
    },
    "reset": {
      "expected": "restores-loaded-sample",
      "lastVerifiedAt": null,
      "status": "unknown"
    },
    "validation": {
      "checks": [
        "artifact-hash",
        "historical-source-lock",
        "state-contract",
        "scenario-semantics",
        "relationship-closure",
        "secret-scan",
        "size-limit"
      ],
      "status": "passed",
      "validator": "archal.environment-samples.v1"
    }
  },
  "representativeMutation": {
    "body": {
      "body": "Review complete: keep the merge request open until the pipeline and connector contract checks are green."
    },
    "expectedStatus": [
      201
    ],
    "method": "POST",
    "operationId": "createMergeRequestNote",
    "path": "/api/v4/projects/82857419/merge_requests/3/notes",
    "transport": "provider-rest"
  },
  "schema": "archal.environment-sample",
  "schemaVersion": 1,
  "slug": "merge-request-review",
  "stateContract": {
    "format": "json",
    "schema": "archal.environment-state.gitlab",
    "version": 1
  }
}
