dev.knotless.revertPull

Reverts a merged pull as `knotless revert` does, as the account logged in to this appview's web pages, with the session the appview keeps for it: one commit undoing what its merge brought in, on a new branch revert/<the pull's record key> cut from its target branch as it is now, and a pull of that branch into the target branch, which this answers. Nothing merges: the revert is a pull like any other. Refused on a pull that is not merged, when undoing it conflicts with what the branch took since, and to anyone but the repository's owner and collaborators. Requires the session cookie the pages' login sets.

Details · procedure
Kindprocedure
Authorityknotless.dev
Indexed

Showing version bafyreibbatrh257kywpk7pk42ttqg5x3vzudcb5avjh5es6oxewr2xmi54. Show the latest

cid bafyreibbatrh257kywpk7pk42ttqg5x3vzudcb5avjh5es6oxewr2xmi54

Checks

Valid
  • unlimited-string defs.main.output.schema.properties.branchNo maxLength, maxGraphemes or format limits this string.
  • unlimited-string defs.main.output.schema.properties.commitNo maxLength, maxGraphemes or format limits this string.
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Reverts a merged pull as `knotless revert` does, as the account logged in to this appview's web pages, with the session the appview keeps for it: one commit undoing what its merge brought in, on a new branch revert/<the pull's record key> cut from its target branch as it is now, and a pull of that branch into the target branch, which this answers. Nothing merges: the revert is a pull like any other. Refused on a pull that is not merged, when undoing it conflicts with what the branch took since, and to anyone but the repository's owner and collaborators. Requires the session cookie the pages' login sets.",
      "errors": [
        {
          "description": "No such repository.",
          "name": "NotFound"
        },
        {
          "description": "No account is logged in to the pages, or its session has ended.",
          "name": "AuthenticationRequired"
        },
        {
          "description": "It did not revert, as the reason says: the pull is not merged, undoing it conflicts, or the account may not revert it.",
          "name": "UpstreamFailure"
        }
      ],
      "input": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "pull": {
              "description": "The merged dev.knotless.pull record.",
              "format": "at-uri",
              "type": "string"
            },
            "reason": {
              "description": "Why, said in the revert's body.",
              "maxGraphemes": 1000,
              "maxLength": 10000,
              "type": "string"
            },
            "repo": {
              "description": "The repository's dev.knotless.repo record, as dev.knotless.getRepo takes it.",
              "format": "at-uri",
              "type": "string"
            }
          },
          "required": [
            "repo",
            "pull"
          ],
          "type": "object"
        }
      },
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "branch": {
              "description": "The branch holding the revert, without refs/heads/.",
              "type": "string"
            },
            "commit": {
              "description": "The revert's commit, in hex.",
              "type": "string"
            },
            "uri": {
              "description": "The new dev.knotless.pull record, which brings the revert in.",
              "format": "at-uri",
              "type": "string"
            }
          },
          "required": [
            "uri",
            "branch",
            "commit"
          ],
          "type": "object"
        }
      },
      "type": "procedure"
    }
  },
  "description": "Reverts a merged pull as the account logged in to this appview's pages.",
  "id": "dev.knotless.revertPull",
  "lexicon": 1
}