{
  "$comment": "Generated from the Buildish Release Tooling Pydantic models. Do not edit by hand; regenerate with `make schemas`.",
  "$id": "https://buildish.org/components/release-tooling/schemas/create-rc-materialization-tag-manifest.schema.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false,
  "description": "Action manifest emitted after tagging one detached RC materialization commit. This command manifest is internal Buildish workflow I/O and is not a supported external API.",
  "properties": {
    "action": {
      "const": "create-rc-materialization-tag",
      "default": "create-rc-materialization-tag",
      "description": "Stable command action identifier written by one Buildish command manifest.",
      "title": "Action",
      "type": "string"
    },
    "cleanup_materialized_ref_mode": {
      "description": "Policy that Buildish used when deciding whether to delete the temporary materialization ref after tagging.",
      "minLength": 1,
      "title": "Cleanup Materialized Ref Mode",
      "type": "string"
    },
    "cleanup_materialized_ref_name": {
      "description": "Temporary materialization ref that Buildish considered for cleanup after tagging the RC.",
      "title": "Cleanup Materialized Ref Name",
      "type": "string"
    },
    "component": {
      "description": "Component identifier for the Buildish command manifest or emitted action record.",
      "minLength": 1,
      "title": "Component",
      "type": "string"
    },
    "created_ref": {
      "description": "Git ref name that Buildish created or reused while performing the related tag or ref action.",
      "title": "Created Ref",
      "type": "string"
    },
    "rc_tag": {
      "description": "Exact RC Git tag, including the leading `v` prefix and `-rcN` suffix.",
      "minLength": 1,
      "title": "Rc Tag",
      "type": "string"
    },
    "resolved_source_ref": {
      "description": "Resolved source Git commit SHA that Buildish selected for release production or verification.",
      "minLength": 1,
      "title": "Resolved Source Ref",
      "type": "string"
    },
    "tag_creation_mode": {
      "description": "Mode that Buildish used when creating or reusing the related annotated Git tag.",
      "minLength": 1,
      "title": "Tag Creation Mode",
      "type": "string"
    },
    "tag_target_origin": {
      "description": "Origin that Buildish used for the target commit when tagging the RC materialization result.",
      "enum": [
        "materialized-commit",
        "source-commit"
      ],
      "title": "Tag Target Origin",
      "type": "string"
    },
    "target_commit": {
      "description": "Git commit SHA that the related tag or alias operation targeted.",
      "minLength": 1,
      "title": "Target Commit",
      "type": "string"
    },
    "version": {
      "description": "Release version string without a leading `v` prefix.",
      "minLength": 1,
      "title": "Version",
      "type": "string"
    }
  },
  "required": [
    "component",
    "version",
    "resolved_source_ref",
    "rc_tag",
    "target_commit",
    "tag_target_origin",
    "cleanup_materialized_ref_name",
    "cleanup_materialized_ref_mode",
    "tag_creation_mode",
    "created_ref"
  ],
  "title": "Buildish Release Tooling CreateRcMaterializationTagManifest",
  "type": "object",
  "x-buildish-contract": {
    "category": "emitted",
    "ownership": "tooling-derived",
    "summary": "Internal unstable JSON action manifest emitted by `create-rc-materialization-tag`."
  }
}
