{
  "$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/release-version-manifest.schema.json",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false,
  "description": "Action manifest emitted after a full release-version orchestration run completes. This command manifest is internal Buildish workflow I/O and is not a supported external API.",
  "properties": {
    "action": {
      "const": "release-version",
      "default": "release-version",
      "description": "Stable command action identifier written by one Buildish command manifest.",
      "title": "Action",
      "type": "string"
    },
    "archive_versions": {
      "description": "Older same-line release versions that Buildish resolved for archival pruning.",
      "items": {
        "minLength": 1,
        "type": "string"
      },
      "title": "Archive Versions",
      "type": "array"
    },
    "component": {
      "description": "Component identifier for the Buildish command manifest or emitted action record.",
      "minLength": 1,
      "title": "Component",
      "type": "string"
    },
    "final_tag": {
      "description": "Final immutable Git tag that Buildish intends to publish for the released version.",
      "minLength": 1,
      "title": "Final Tag",
      "type": "string"
    },
    "final_tag_mode": {
      "description": "Configured or recorded policy describing how the final immutable release tag should be created for this component or release run.",
      "minLength": 1,
      "title": "Final Tag Mode",
      "type": "string"
    },
    "moving_tags": {
      "description": "Derived moving tags or aliases that should point at the final released version.",
      "items": {
        "minLength": 1,
        "type": "string"
      },
      "title": "Moving Tags",
      "type": "array"
    },
    "release_line": {
      "description": "Maintenance-line identifier used to group related versions, branches, and moving tags.",
      "minLength": 1,
      "title": "Release Line",
      "type": "string"
    },
    "release_url": {
      "description": "Primary user-facing URL of the related GitHub release or published release artifact.",
      "minLength": 1,
      "title": "Release Url",
      "type": "string"
    },
    "selected_rc_tag": {
      "description": "RC tag that Buildish selected as the winning release candidate for a final release action.",
      "minLength": 1,
      "title": "Selected Rc Tag",
      "type": "string"
    },
    "version": {
      "description": "Release version string without a leading `v` prefix.",
      "minLength": 1,
      "title": "Version",
      "type": "string"
    }
  },
  "required": [
    "component",
    "version",
    "release_line",
    "selected_rc_tag",
    "final_tag",
    "archive_versions",
    "release_url",
    "moving_tags",
    "final_tag_mode"
  ],
  "title": "Buildish Release Tooling ReleaseVersionManifest",
  "type": "object",
  "x-buildish-contract": {
    "category": "emitted",
    "ownership": "tooling-derived",
    "summary": "Internal unstable JSON action manifest emitted by `release-version`."
  }
}
