RPC Errors

This document references possible errors that can come from RPC calls. It is generated from the OCaml source code (master branch).

Protocol Alpha

Inconsistent types (typechecking error)

This is the basic type clash error, that appears in several places where the equality of two types have to be proven, it is always accompanied with another error that provides more context.

Id : proto.alpha.InconsistentTypesTypeError
Category : permanent

  { /* Inconsistent types (typechecking error)
       This is the basic type clash error, that appears in several places
       where the equality of two types have to be proven, it is always
       accompanied with another error that provides more context. */
    "kind": "permanent",
    "id": "proto.alpha.InconsistentTypesTypeError",
    "firstType": $micheline.michelson_v1.expression,
    "otherType": $micheline.michelson_v1.expression }
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Transfer in DIP (typechecking error)

A TRANSFER_TOKENS instruction was encountered in a DIP instruction.

Id : proto.alpha.TransferInDipTypeError
Category : permanent

  { /* Transfer in DIP (typechecking error)
       A TRANSFER_TOKENS instruction was encountered in a DIP instruction. */
    "kind": "permanent",
    "id": "proto.alpha.TransferInDipTypeError",
    "location": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Transfer in lambda (typechecking error)

A TRANSFER_TOKENS instruction was encountered in a lambda expression.

Id : proto.alpha.TransferInLambdaTypeError
Category : permanent

  { /* Transfer in lambda (typechecking error)
       A TRANSFER_TOKENS instruction was encountered in a lambda
       expression. */
    "kind": "permanent",
    "id": "proto.alpha.TransferInLambdaTypeError",
    "location": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Contract supplied an invalid parameter

Either no parameter was supplied to a contract, a parameter was passed to an account, or a parameter was supplied of the wrong type

Id : proto.alpha.badContractParameter
Category : permanent

  { /* Contract supplied an invalid parameter
       Either no parameter was supplied to a contract, a parameter was
       passed to an account, or a parameter was supplied of the wrong type */
    "kind": "permanent",
    "id": "proto.alpha.badContractParameter",
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */,
    "expectedType"?: $micheline.michelson_v1.expression,
    "providedArgument"?: $micheline.michelson_v1.expression }
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Bad return (typechecking error)

Unexpected stack at the end of a lambda or script.

Id : proto.alpha.badReturnTypeError
Category : permanent

  { /* Bad return (typechecking error)
       Unexpected stack at the end of a lambda or script. */
    "kind": "permanent",
    "id": "proto.alpha.badReturnTypeError",
    "location": $micheline.location,
    "expectedReturnType": $micheline.michelson_v1.expression,
    "wrongStackType":
      [ [ $micheline.michelson_v1.expression, string || null ] ... ] }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Bad stack item (typechecking error)

The type of a stack item is unexpected (this error is always accompanied by a more precise one).

Id : proto.alpha.badStackItemTypeError
Category : permanent

  { /* Bad stack item (typechecking error)
       The type of a stack item is unexpected (this error is always
       accompanied by a more precise one). */
    "kind": "permanent",
    "id": "proto.alpha.badStackItemTypeError",
    "itemLevel": integer ∈ [-2^15, 2^15-1] }

Bad stack (typechecking error)

The stack has an unexpected length or contents.

Id : proto.alpha.badStackTypeError
Category : permanent

  { /* Bad stack (typechecking error)
       The stack has an unexpected length or contents. */
    "kind": "permanent",
    "id": "proto.alpha.badStackTypeError",
    "location": $micheline.location,
    "primitiveName":
      "BALANCE"
      | "LSL"
      | "LOOP_LEFT"
      | "CREATE_ACCOUNT"
      | "LOOP"
      | "LT"
      | "False"
      | "DUP"
      | "NOW"
      | "ABS"
      | "ADD"
      | "contract"
      | "big_map"
      | "MUL"
      | "ITER"
      | "EDIV"
      | "Unit"
      | "SOME"
      | "Pair"
      | "string"
      | "INT"
      | "MAP"
      | "XOR"
      | "return"
      | "bool"
      | "CONCAT"
      | "UPDATE"
      | "SOURCE"
      | "code"
      | "AMOUNT"
      | "CONS"
      | "CHECK_SIGNATURE"
      | "set"
      | "FAIL"
      | "UNIT"
      | "NEG"
      | "SIZE"
      | "key_hash"
      | "CREATE_CONTRACT"
      | "timestamp"
      | "True"
      | "Right"
      | "H"
      | "OR"
      | "LSR"
      | "CAR"
      | "EMPTY_MAP"
      | "AND"
      | "nat"
      | "HASH_KEY"
      | "RIGHT"
      | "MEM"
      | "NONE"
      | "NIL"
      | "Left"
      | "DEFAULT_ACCOUNT"
      | "GET"
      | "NOT"
      | "list"
      | "NEQ"
      | "key"
      | "EQ"
      | "SWAP"
      | "TRANSFER_TOKENS"
      | "LEFT"
      | "SELF"
      | "COMPARE"
      | "DIP"
      | "MANAGER"
      | "PUSH"
      | "LE"
      | "SUB"
      | "IF_NONE"
      | "Elt"
      | "option"
      | "tez"
      | "STEPS_TO_QUOTA"
      | "unit"
      | "EMPTY_SET"
      | "GE"
      | "PAIR"
      | "pair"
      | "IF"
      | "signature"
      | "or"
      | "Some"
      | "IF_CONS"
      | "parameter"
      | "LAMBDA"
      | "GT"
      | "REDUCE"
      | "int"
      | "None"
      | "map"
      | "EXEC"
      | "DROP"
      | "IF_LEFT"
      | "lambda"
      | "storage"
      | "CDR",
    "relevantStackPortion": integer ∈ [-2^15, 2^15-1],
    "wrongStackType":
      [ [ $micheline.michelson_v1.expression, string || null ] ... ] }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Cannot freeze baking deposit

Impossible to debit the required tokens on the baker's contract

Id : proto.alpha.baking.cannot_freeze_baking_deposit
Category : permanent

  { /* Cannot freeze baking deposit
       Impossible to debit the required tokens on the baker's contract */
    "kind": "permanent",
    "id": "proto.alpha.baking.cannot_freeze_baking_deposit",
    ... }

Cannot freeze endorsement deposit

Impossible to debit the required tokens on the endorser's contract

Id : proto.alpha.baking.cannot_freeze_endorsement_deposit
Category : permanent

  { /* Cannot freeze endorsement deposit
       Impossible to debit the required tokens on the endorser's contract */
    "kind": "permanent",
    "id": "proto.alpha.baking.cannot_freeze_endorsement_deposit",
    ... }

Multiple delegates for a single endorsement

The operation tries to endorse slots with distinct delegates

Id : proto.alpha.baking.inconsisten_endorsement
Category : permanent

  { /* Multiple delegates for a single endorsement
       The operation tries to endorse slots with distinct delegates */
    "kind": "permanent",
    "id": "proto.alpha.baking.inconsisten_endorsement",
    "delegates":
      [ string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */ ... ] }

Insufficient block proof-of-work stamp

The block's proof-of-work stamp is insufficient

Id : proto.alpha.baking.insufficient_proof_of_work
Category : permanent

  { /* Insufficient block proof-of-work stamp
       The block's proof-of-work stamp is insufficient */
    "kind": "permanent",
    "id": "proto.alpha.baking.insufficient_proof_of_work" }

Invalid block signature

A block was not signed with the expected private key.

Id : proto.alpha.baking.invalid_block_signature
Category : permanent

  { /* Invalid block signature
       A block was not signed with the expected private key. */
    "kind": "permanent",
    "id": "proto.alpha.baking.invalid_block_signature",
    "block": string /* A Tezos block ID (Base58Check-encoded) */,
    "expected":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */ }

Invalid fitness gap

The gap of fitness is out of bounds

Id : proto.alpha.baking.invalid_fitness_gap
Category : permanent

  { /* Invalid fitness gap
       The gap of fitness is out of bounds */
    "kind": "permanent",
    "id": "proto.alpha.baking.invalid_fitness_gap",
    "maximum": integer ∈ [-2^31-2, 2^31+2] || string,
    "provided": integer ∈ [-2^31-2, 2^31+2] || string }

Invalid block signature

The block's signature is invalid

Id : proto.alpha.baking.invalid_signature
Category : permanent

  { /* Invalid block signature
       The block's signature is invalid */
    "kind": "permanent",
    "id": "proto.alpha.baking.invalid_signature" }

Invalid slot

The baking slot is out of bounds

Id : proto.alpha.baking.invalid_slot
Category : permanent

  { /* Invalid slot
       The baking slot is out of bounds */
    "kind": "permanent",
    "id": "proto.alpha.baking.invalid_slot",
    "maximum": integer ∈ [-2^15, 2^15-1],
    "provided": integer ∈ [-2^15, 2^15-1] }

Block forged too early

The block timestamp is before the first slot for this baker at this level

Id : proto.alpha.baking.timestamp_too_early
Category : permanent

  { /* Block forged too early
       The block timestamp is before the first slot for this baker at this
       level */
    "kind": "permanent",
    "id": "proto.alpha.baking.timestamp_too_early",
    "minimum":
      /* timestamp */
      $timestamp || integer ∈ [-2^31-2, 2^31+2] || string,
    "provided":
      /* timestamp */
      $timestamp || integer ∈ [-2^31-2, 2^31+2] || string }
  $timestamp:
    /* RFC 3339 formatted timestamp
       A date in human readble form as specified in RFC 3339. */
    string

Inconsistent double baking evidence

A double-baking evidence is inconsistent (two distinct delegates)

Id : proto.alpha.block.inconsistent_double_baking_evidence
Category : permanent

  { /* Inconsistent double baking evidence
       A double-baking evidence is inconsistent  (two distinct delegates) */
    "kind": "permanent",
    "id": "proto.alpha.block.inconsistent_double_baking_evidence",
    "delegate1":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */,
    "delegate2":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */ }

Inconsistent double endorsement evidence

A double-endorsement evidence is inconsistent (two distinct delegates)

Id : proto.alpha.block.inconsistent_double_endorsement_evidence
Category : permanent

  { /* Inconsistent double endorsement evidence
       A double-endorsement evidence is inconsistent  (two distinct
       delegates) */
    "kind": "permanent",
    "id": "proto.alpha.block.inconsistent_double_endorsement_evidence",
    "delegate1":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */,
    "delegate2":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */ }

Invalid commitment in block header

The block header has invalid commitment.

Id : proto.alpha.block.invalid_commitment
Category : permanent

  { /* Invalid commitment in block header
       The block header has invalid commitment. */
    "kind": "permanent",
    "id": "proto.alpha.block.invalid_commitment",
    "expected ": boolean }

Invalid double baking evidence

A double-baking evidence is inconsistent (two distinct level)

Id : proto.alpha.block.invalid_double_baking_evidence
Category : permanent

  { /* Invalid double baking evidence
       A double-baking evidence is inconsistent  (two distinct level) */
    "kind": "permanent",
    "id": "proto.alpha.block.invalid_double_baking_evidence",
    "level1": integer ∈ [-2^31-2, 2^31+2],
    "level2": integer ∈ [-2^31-2, 2^31+2] }

Invalid double endorsement evidence

A double-endorsement evidence is malformed

Id : proto.alpha.block.invalid_double_endorsement_evidence
Category : permanent

  { /* Invalid double endorsement evidence
       A double-endorsement evidence is malformed */
    "kind": "permanent",
    "id": "proto.alpha.block.invalid_double_endorsement_evidence" }

Multiple revelations were included in a manager operation

A manager operation should not contain more than one revelation

Id : proto.alpha.block.multiple_revelation
Category : permanent

  { /* Multiple revelations were included in a manager operation
       A manager operation should not contain more than one revelation */
    "kind": "permanent",
    "id": "proto.alpha.block.multiple_revelation" }

Outdated double baking evidence

A double-baking evidence is outdated.

Id : proto.alpha.block.outdated_double_baking_evidence
Category : permanent

  { /* Outdated double baking evidence
       A double-baking evidence is outdated. */
    "kind": "permanent",
    "id": "proto.alpha.block.outdated_double_baking_evidence",
    "level": integer ∈ [-2^31-2, 2^31+2],
    "last": integer ∈ [-2^31-2, 2^31+2] }

Outdated double endorsement evidence

A double-endorsement evidence is outdated.

Id : proto.alpha.block.outdated_double_endorsement_evidence
Category : permanent

  { /* Outdated double endorsement evidence
       A double-endorsement evidence is outdated. */
    "kind": "permanent",
    "id": "proto.alpha.block.outdated_double_endorsement_evidence",
    "level": integer ∈ [-2^31-2, 2^31+2],
    "last": integer ∈ [-2^31-2, 2^31+2] }

Too early double baking evidence

A double-baking evidence is in the future

Id : proto.alpha.block.too_early_double_baking_evidence
Category : temporary

  { /* Too early double baking evidence
       A double-baking evidence is in the future */
    "kind": "temporary",
    "id": "proto.alpha.block.too_early_double_baking_evidence",
    "level": integer ∈ [-2^31-2, 2^31+2],
    "current": integer ∈ [-2^31-2, 2^31+2] }

Too early double endorsement evidence

A double-endorsement evidence is in the future

Id : proto.alpha.block.too_early_double_endorsement_evidence
Category : temporary

  { /* Too early double endorsement evidence
       A double-endorsement evidence is in the future */
    "kind": "temporary",
    "id": "proto.alpha.block.too_early_double_endorsement_evidence",
    "level": integer ∈ [-2^31-2, 2^31+2],
    "current": integer ∈ [-2^31-2, 2^31+2] }

Unrequired double baking evidence

A double-baking evidence is unrequired

Id : proto.alpha.block.unrequired_double_baking_evidence
Category : branch

  { /* Unrequired double baking evidence
       A double-baking evidence is unrequired */
    "kind": "branch",
    "id": "proto.alpha.block.unrequired_double_baking_evidence" }

Unrequired double endorsement evidence

A double-endorsement evidence is unrequired

Id : proto.alpha.block.unrequired_double_endorsement_evidence
Category : branch

  { /* Unrequired double endorsement evidence
       A double-endorsement evidence is unrequired */
    "kind": "branch",
    "id": "proto.alpha.block.unrequired_double_endorsement_evidence" }

Comparable type expected (typechecking error)

A non comparable type was used in a place where only comparable types are accepted.

Id : proto.alpha.comparableTypeExpectedTypeError
Category : permanent

  { /* Comparable type expected (typechecking error)
       A non comparable type was used in a place where only comparable
       types are accepted. */
    "kind": "permanent",
    "id": "proto.alpha.comparableTypeExpectedTypeError",
    "location": $micheline.location,
    "wrongType": $micheline.michelson_v1.expression }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Failed to decode parameter

Unexpected JSON object.

Id : proto.alpha.context.failed_to_decode_parameter
Category : temporary

  { /* Failed to decode parameter
       Unexpected JSON object. */
    "kind": "temporary",
    "id": "proto.alpha.context.failed_to_decode_parameter",
    "contents": any,
    "error": string }

Failed to parse parameter

The protocol parameters are not valid JSON.

Id : proto.alpha.context.failed_to_parse_parameter
Category : temporary

  { /* Failed to parse parameter
       The protocol parameters are not valid JSON. */
    "kind": "temporary",
    "id": "proto.alpha.context.failed_to_parse_parameter",
    "contents": /^[a-zA-Z0-9]+$/ }

Storage error (fatal internal error)

An error that should never happen unless something has been deleted or corrupted in the database.

Id : proto.alpha.context.storage_error
Category : permanent

  /* Storage error (fatal internal error)
     An error that should never happen unless something has been deleted or
     corrupted in the database. */
  { "kind": "permanent",
    "id": "proto.alpha.context.storage_error",
    "incompatible_protocol_version": string }
  || { "kind": "permanent",
       "id": "proto.alpha.context.storage_error",
       "missing_key": [ string ... ],
       "function": "set" | "copy" | "get" | "del" }
  || { "kind": "permanent",
       "id": "proto.alpha.context.storage_error",
       "existing_key": [ string ... ] }
  || { "kind": "permanent",
       "id": "proto.alpha.context.storage_error",
       "corrupted_data": [ string ... ] }

Balance too low

An operation tried to spend more tokens than the contract has

Id : proto.alpha.contract.balance_too_low
Category : temporary

  { /* Balance too low
       An operation tried to spend more tokens than the contract has */
    "kind": "temporary",
    "id": "proto.alpha.contract.balance_too_low",
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */,
    "balance": /* Amount in mutez */integer ∈ [-2^31-2, 2^31+2] || string,
    "amount": /* Amount in mutez */integer ∈ [-2^31-2, 2^31+2] || string }

Cannot pay storage fee

The storage fee is higher than the contract balance

Id : proto.alpha.contract.cannot_pay_storage_fee
Category : temporary

  { /* Cannot pay storage fee
       The storage fee is higher than the contract balance */
    "kind": "temporary",
    "id": "proto.alpha.contract.cannot_pay_storage_fee" }

Invalid counter (not yet reached) in a manager operation

An operation assumed a contract counter in the future

Id : proto.alpha.contract.counter_in_the_future
Category : temporary

  { /* Invalid counter (not yet reached) in a manager operation
       An operation assumed a contract counter in the future */
    "kind": "temporary",
    "id": "proto.alpha.contract.counter_in_the_future",
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */,
    "expected": integer ∈ [-2^31-2, 2^31+2],
    "found": integer ∈ [-2^31-2, 2^31+2] }

Invalid counter (already used) in a manager operation

An operation assumed a contract counter in the past

Id : proto.alpha.contract.counter_in_the_past
Category : branch

  { /* Invalid counter (already used) in a manager operation
       An operation assumed a contract counter in the past */
    "kind": "branch",
    "id": "proto.alpha.contract.counter_in_the_past",
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */,
    "expected": integer ∈ [-2^31-2, 2^31+2],
    "found": integer ∈ [-2^31-2, 2^31+2] }

Contract storage failure

Unexpected contract storage error

Id : proto.alpha.contract.failure
Category : permanent

  { /* Contract storage failure
       Unexpected contract storage error */
    "kind": "permanent",
    "id": "proto.alpha.contract.failure",
    "message": string }

Invalid contract notation

A malformed contract notation was given to an RPC or in a script.

Id : proto.alpha.contract.invalid_contract_notation
Category : permanent

  { /* Invalid contract notation
       A malformed contract notation was given to an RPC or in a script. */
    "kind": "permanent",
    "id": "proto.alpha.contract.invalid_contract_notation",
    "notation": string }

Inconsistent public key hash

A revealed manager public key is inconsistent with the announced hash

Id : proto.alpha.contract.manager.inconsistent_hash
Category : permanent

  { /* Inconsistent public key hash
       A revealed manager public key is inconsistent with the announced
       hash */
    "kind": "permanent",
    "id": "proto.alpha.contract.manager.inconsistent_hash",
    "public_key":
      string
      /* A Secp256k1 or Ed25519 public key (Base58Check-encoded) */,
    "expected_hash":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */,
    "provided_hash":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */ }

Inconsistent public key

A provided manager public key is different with the public key stored in the contract

Id : proto.alpha.contract.manager.inconsistent_public_key
Category : permanent

  { /* Inconsistent public key
       A provided manager public key is different with the public key
       stored in the contract */
    "kind": "permanent",
    "id": "proto.alpha.contract.manager.inconsistent_public_key",
    "public_key":
      string
      /* A Secp256k1 or Ed25519 public key (Base58Check-encoded) */,
    "expected_public_key":
      string
      /* A Secp256k1 or Ed25519 public key (Base58Check-encoded) */ }

Unregistered delegate

A contract cannot be delegated to an unregistered delegate

Id : proto.alpha.contract.manager.unregistered_delegate
Category : permanent

  { /* Unregistered delegate
       A contract cannot be delegated to an unregistered delegate */
    "kind": "permanent",
    "id": "proto.alpha.contract.manager.unregistered_delegate",
    "hash":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */ }

Non existing contract

A contract handle is not present in the context (either it never was or it has been destroyed)

Id : proto.alpha.contract.non_existing_contract
Category : temporary

  { /* Non existing contract
       A contract handle is not present in the context (either it never was
       or it has been destroyed) */
    "kind": "temporary",
    "id": "proto.alpha.contract.non_existing_contract",
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */ }

Manager operation already revealed

One tried to revealed twice a manager public key

Id : proto.alpha.contract.previously_revealed_key
Category : branch

  { /* Manager operation already revealed
       One tried to revealed twice a manager public key */
    "kind": "branch",
    "id": "proto.alpha.contract.previously_revealed_key",
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */ }

Non delegatable contract

Tried to delegate an implicit contract or a non delegatable originated contract

Id : proto.alpha.contract.undelegatable_contract
Category : permanent

  { /* Non delegatable contract
       Tried to delegate an implicit contract or a non delegatable
       originated contract */
    "kind": "permanent",
    "id": "proto.alpha.contract.undelegatable_contract",
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */ }

Manager operation precedes key revelation

One tried to apply a manager operation without revealing the manager public key

Id : proto.alpha.contract.unrevealed_key
Category : branch

  { /* Manager operation precedes key revelation
       One tried to apply a manager operation without revealing the manager
       public key */
    "kind": "branch",
    "id": "proto.alpha.contract.unrevealed_key",
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */ }

Unspendable contract

An operation tried to spend tokens from an unspendable contract

Id : proto.alpha.contract.unspendable_contract
Category : permanent

  { /* Unspendable contract
       An operation tried to spend tokens from an unspendable contract */
    "kind": "permanent",
    "id": "proto.alpha.contract.unspendable_contract",
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */ }

Delegate already active

Useless delegate reactivation

Id : proto.alpha.delegate.already_active
Category : temporary

  { /* Delegate already active
       Useless delegate reactivation */
    "kind": "temporary",
    "id": "proto.alpha.delegate.already_active" }

Empty delegate account

Cannot register a delegate when its implicit account is empty

Id : proto.alpha.delegate.empty_delegate_account
Category : permanent

  { /* Empty delegate account
       Cannot register a delegate when its implicit account is empty */
    "kind": "permanent",
    "id": "proto.alpha.delegate.empty_delegate_account",
    "delegate":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */ }

Forbidden delegate deletion

Tried to unregister a delegate

Id : proto.alpha.delegate.no_deletion
Category : permanent

  { /* Forbidden delegate deletion
       Tried to unregister a delegate */
    "kind": "permanent",
    "id": "proto.alpha.delegate.no_deletion",
    "delegate":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */ }

Unchanged delegated

Contract already delegated to the given delegate

Id : proto.alpha.delegate.unchanged
Category : temporary

  { /* Unchanged delegated
       Contract already delegated to the given delegate */
    "kind": "temporary",
    "id": "proto.alpha.delegate.unchanged" }

Duplicate map keys

Map literals cannot contain duplicated keys

Id : proto.alpha.duplicateMapKeys
Category : permanent

  { /* Duplicate map keys
       Map literals cannot contain duplicated keys */
    "kind": "permanent",
    "id": "proto.alpha.duplicateMapKeys",
    "location": $micheline.location,
    "item": $micheline.michelson_v1.expression }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Script has a duplicated field (parse error)

When parsing script, a field was found more than once

Id : proto.alpha.duplicateScriptField
Category : permanent

  { /* Script has a duplicated field (parse error)
       When parsing script, a field was found more than once */
    "kind": "permanent",
    "id": "proto.alpha.duplicateScriptField",
    "loc": $micheline.location,
    "prim":
      "BALANCE"
      | "LSL"
      | "LOOP_LEFT"
      | "CREATE_ACCOUNT"
      | "LOOP"
      | "LT"
      | "False"
      | "DUP"
      | "NOW"
      | "ABS"
      | "ADD"
      | "contract"
      | "big_map"
      | "MUL"
      | "ITER"
      | "EDIV"
      | "Unit"
      | "SOME"
      | "Pair"
      | "string"
      | "INT"
      | "MAP"
      | "XOR"
      | "return"
      | "bool"
      | "CONCAT"
      | "UPDATE"
      | "SOURCE"
      | "code"
      | "AMOUNT"
      | "CONS"
      | "CHECK_SIGNATURE"
      | "set"
      | "FAIL"
      | "UNIT"
      | "NEG"
      | "SIZE"
      | "key_hash"
      | "CREATE_CONTRACT"
      | "timestamp"
      | "True"
      | "Right"
      | "H"
      | "OR"
      | "LSR"
      | "CAR"
      | "EMPTY_MAP"
      | "AND"
      | "nat"
      | "HASH_KEY"
      | "RIGHT"
      | "MEM"
      | "NONE"
      | "NIL"
      | "Left"
      | "DEFAULT_ACCOUNT"
      | "GET"
      | "NOT"
      | "list"
      | "NEQ"
      | "key"
      | "EQ"
      | "SWAP"
      | "TRANSFER_TOKENS"
      | "LEFT"
      | "SELF"
      | "COMPARE"
      | "DIP"
      | "MANAGER"
      | "PUSH"
      | "LE"
      | "SUB"
      | "IF_NONE"
      | "Elt"
      | "option"
      | "tez"
      | "STEPS_TO_QUOTA"
      | "unit"
      | "EMPTY_SET"
      | "GE"
      | "PAIR"
      | "pair"
      | "IF"
      | "signature"
      | "or"
      | "Some"
      | "IF_CONS"
      | "parameter"
      | "LAMBDA"
      | "GT"
      | "REDUCE"
      | "int"
      | "None"
      | "map"
      | "EXEC"
      | "DROP"
      | "IF_LEFT"
      | "lambda"
      | "storage"
      | "CDR" }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Sets literals cannot contain duplicate elements

Set literals cannot contain duplicate elements, but a duplicae was found while parsing.

Id : proto.alpha.duplicateSetValuesInLiteral
Category : permanent

  { /* Sets literals cannot contain duplicate elements
       Set literals cannot contain duplicate elements, but a duplicae was
       found while parsing. */
    "kind": "permanent",
    "id": "proto.alpha.duplicateSetValuesInLiteral",
    "location": $micheline.location,
    "value": $micheline.michelson_v1.expression }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

FAIL not in tail position (typechecking error)

There is non trivial garbage code after a FAIL instruction.

Id : proto.alpha.failNotInTailPositionTypeError
Category : permanent

  { /* FAIL not in tail position (typechecking error)
       There is non trivial garbage code after a FAIL instruction. */
    "kind": "permanent",
    "id": "proto.alpha.failNotInTailPositionTypeError",
    "location": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Ill formed type (typechecking error)

The toplevel error thrown when trying to parse a type expression (always followed by more precise errors).

Id : proto.alpha.illFormedTypeTypeError
Category : permanent

  { /* Ill formed type (typechecking error)
       The toplevel error thrown when trying to parse a type expression
       (always followed by more precise errors). */
    "kind": "permanent",
    "id": "proto.alpha.illFormedTypeTypeError",
    "identifier"?: string,
    "illFormedExpression": $micheline.michelson_v1.expression,
    "location": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Ill typed contract (typechecking error)

The toplevel error thrown when trying to typecheck a contract code against given input, output and storage types (always followed by more precise errors).

Id : proto.alpha.illTypedContractTypeError
Category : permanent

  { /* Ill typed contract (typechecking error)
       The toplevel error thrown when trying to typecheck a contract code
       against given input, output and storage types (always followed by
       more precise errors). */
    "kind": "permanent",
    "id": "proto.alpha.illTypedContractTypeError",
    "illTypedCode": $micheline.michelson_v1.expression,
    "typeMap":
      [ { "location": $micheline.location,
          "stackBefore": [ $micheline.michelson_v1.expression ... ],
          "stackAfter": [ $micheline.michelson_v1.expression ... ] } ... ] }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Ill typed data (typechecking error)

The toplevel error thrown when trying to typecheck a data expression against a given type (always followed by more precise errors).

Id : proto.alpha.illTypedDataTypeError
Category : permanent

  { /* Ill typed data (typechecking error)
       The toplevel error thrown when trying to typecheck a data expression
       against a given type (always followed by more precise errors). */
    "kind": "permanent",
    "id": "proto.alpha.illTypedDataTypeError",
    "identifier"?: string,
    "expectedType": $micheline.michelson_v1.expression,
    "illTypedExpression": $micheline.michelson_v1.expression }
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Empty implicit contract

No manager operations are allowed on an empty implicit contract.

Id : proto.alpha.implicit.empty_implicit_contract
Category : branch

  { /* Empty implicit contract
       No manager operations are allowed on an empty implicit contract. */
    "kind": "branch",
    "id": "proto.alpha.implicit.empty_implicit_contract",
    "implicit":
      string
      /* A Secp256k1 or Ed25519 public key hash (Base58Check-encoded) */ }

Annotations inconsistent between branches

The annotations on two types could not be merged

Id : proto.alpha.inconsistentAnnotations
Category : permanent

  { /* Annotations inconsistent between branches
       The annotations on two types could not be merged */
    "kind": "permanent",
    "id": "proto.alpha.inconsistentAnnotations",
    "annot1": string,
    "annot2": string }

Inconsistent stack lengths (typechecking error)

A stack was of an unexpected length (this error is always in the context of a located error).

Id : proto.alpha.inconsistentStackLengthsTypeError
Category : permanent

  { /* Inconsistent stack lengths (typechecking error)
       A stack was of an unexpected length (this error is always in the
       context of a located error). */
    "kind": "permanent",
    "id": "proto.alpha.inconsistentStackLengthsTypeError" }

Types contain inconsistent annotations

The two types contain annotations that do not match

Id : proto.alpha.inconsistentTypeAnnotations
Category : permanent

  { /* Types contain inconsistent annotations
       The two types contain annotations that do not match */
    "kind": "permanent",
    "id": "proto.alpha.inconsistentTypeAnnotations",
    "location": $micheline.location,
    "type1": $micheline.michelson_v1.expression,
    "type2": $micheline.michelson_v1.expression }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Invalid arity (typechecking error)

In a script or data expression, a primitive was applied to an unsupported number of arguments.

Id : proto.alpha.invalidArityTypeError
Category : permanent

  { /* Invalid arity (typechecking error)
       In a script or data expression, a primitive was applied to an
       unsupported number of arguments. */
    "kind": "permanent",
    "id": "proto.alpha.invalidArityTypeError",
    "location": $micheline.location,
    "primitiveName":
      "BALANCE"
      | "LSL"
      | "LOOP_LEFT"
      | "CREATE_ACCOUNT"
      | "LOOP"
      | "LT"
      | "False"
      | "DUP"
      | "NOW"
      | "ABS"
      | "ADD"
      | "contract"
      | "big_map"
      | "MUL"
      | "ITER"
      | "EDIV"
      | "Unit"
      | "SOME"
      | "Pair"
      | "string"
      | "INT"
      | "MAP"
      | "XOR"
      | "return"
      | "bool"
      | "CONCAT"
      | "UPDATE"
      | "SOURCE"
      | "code"
      | "AMOUNT"
      | "CONS"
      | "CHECK_SIGNATURE"
      | "set"
      | "FAIL"
      | "UNIT"
      | "NEG"
      | "SIZE"
      | "key_hash"
      | "CREATE_CONTRACT"
      | "timestamp"
      | "True"
      | "Right"
      | "H"
      | "OR"
      | "LSR"
      | "CAR"
      | "EMPTY_MAP"
      | "AND"
      | "nat"
      | "HASH_KEY"
      | "RIGHT"
      | "MEM"
      | "NONE"
      | "NIL"
      | "Left"
      | "DEFAULT_ACCOUNT"
      | "GET"
      | "NOT"
      | "list"
      | "NEQ"
      | "key"
      | "EQ"
      | "SWAP"
      | "TRANSFER_TOKENS"
      | "LEFT"
      | "SELF"
      | "COMPARE"
      | "DIP"
      | "MANAGER"
      | "PUSH"
      | "LE"
      | "SUB"
      | "IF_NONE"
      | "Elt"
      | "option"
      | "tez"
      | "STEPS_TO_QUOTA"
      | "unit"
      | "EMPTY_SET"
      | "GE"
      | "PAIR"
      | "pair"
      | "IF"
      | "signature"
      | "or"
      | "Some"
      | "IF_CONS"
      | "parameter"
      | "LAMBDA"
      | "GT"
      | "REDUCE"
      | "int"
      | "None"
      | "map"
      | "EXEC"
      | "DROP"
      | "IF_LEFT"
      | "lambda"
      | "storage"
      | "CDR",
    "expectedArity": integer ∈ [-128, 127],
    "wrongArity": integer ∈ [-128, 127] }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Invalid constant (typechecking error)

A data expression was invalid for its expected type.

Id : proto.alpha.invalidConstantTypeError
Category : permanent

  { /* Invalid constant (typechecking error)
       A data expression was invalid for its expected type. */
    "kind": "permanent",
    "id": "proto.alpha.invalidConstantTypeError",
    "location": $micheline.location,
    "expectedType": $micheline.michelson_v1.expression,
    "wrongExpression": $micheline.michelson_v1.expression }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Invalid contract (typechecking error)

A script or data expression references a contract that does not exist or assumes a wrong type for an existing contract.

Id : proto.alpha.invalidContractTypeError
Category : permanent

  { /* Invalid contract (typechecking error)
       A script or data expression references a contract that does not
       exist or assumes a wrong type for an existing contract. */
    "kind": "permanent",
    "id": "proto.alpha.invalidContractTypeError",
    "location": $micheline.location,
    "contract":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */ }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Invalid expression kind (typechecking error)

In a script or data expression, an expression was of the wrong kind (for instance a string where only a primitive applications can appear).

Id : proto.alpha.invalidExpressionKindTypeError
Category : permanent

  { /* Invalid expression kind (typechecking error)
       In a script or data expression, an expression was of the wrong kind
       (for instance a string where only a primitive applications can
       appear). */
    "kind": "permanent",
    "id": "proto.alpha.invalidExpressionKindTypeError",
    "location": $micheline.location,
    "expectedKinds": [ $expressionKind ... ],
    "wrongKind": $expressionKind }
  $expressionKind:
    /* Expression kind
       One of the four possible kinds of expression (integer, string,
       primitive application or sequence). */
    "string" | "integer" | "sequence" | "primitiveApplication"
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

ITER body returned wrong stack type

The body of an ITER instruction must result in the same stack type as before the ITER.

Id : proto.alpha.invalidIterBody
Category : permanent

  { /* ITER body returned wrong stack type
       The body of an ITER instruction must result in the same stack type
       as before the ITER. */
    "kind": "permanent",
    "id": "proto.alpha.invalidIterBody",
    "loc": $micheline.location,
    "befStack":
      [ [ $micheline.michelson_v1.expression, string || null ] ... ],
    "aftStack":
      [ [ $micheline.michelson_v1.expression, string || null ] ... ] }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

FAIL instruction occurred as body of map block

FAIL cannot be the only instruction in the body. The propper type of the return list cannot be inferred.

Id : proto.alpha.invalidMapBlockFail
Category : permanent

  { /* FAIL instruction occurred as body of map block
       FAIL cannot be the only instruction in the body. The propper type of
       the return list cannot be inferred. */
    "kind": "permanent",
    "id": "proto.alpha.invalidMapBlockFail",
    "loc": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Invalid map body

The body of a map block did not match the expected type

Id : proto.alpha.invalidMapBody
Category : permanent

  { /* Invalid map body
       The body of a map block did not match the expected type */
    "kind": "permanent",
    "id": "proto.alpha.invalidMapBody",
    "loc": $micheline.location,
    "bodyType":
      [ [ $micheline.michelson_v1.expression, string || null ] ... ] }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Invalid primitive name case (typechecking error)

In a script or data expression, a primitive name is neither uppercase, lowercase or capitalized.

Id : proto.alpha.invalidPrimitiveNameCaseTypeError
Category : permanent

  { /* Invalid primitive name case (typechecking error)
       In a script or data expression, a primitive name is neither
       uppercase, lowercase or capitalized. */
    "kind": "permanent",
    "id": "proto.alpha.invalidPrimitiveNameCaseTypeError",
    "wrongPrimitiveName": string }

Invalid primitive name (typechecking error)

In a script or data expression, a primitive name is unknown or has a wrong case.

Id : proto.alpha.invalidPrimitiveNameTypeErro
Category : permanent

  { /* Invalid primitive name (typechecking error)
       In a script or data expression, a primitive name is unknown or has a
       wrong case. */
    "kind": "permanent",
    "id": "proto.alpha.invalidPrimitiveNameTypeErro",
    "expression": $micheline.generic.expression,
    "location": $micheline.location }
  $micheline.generic.expression:
    /* Micheline expression (generic variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.generic.expression ... ]
    || { "prim": string,
         "args": [ $micheline.generic.expression ... ],
         "annot"?: string }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Invalid primitive namespace (typechecking error)

In a script or data expression, a primitive was of the wrong namespace.

Id : proto.alpha.invalidPrimitiveNamespaceTypeError
Category : permanent

  { /* Invalid primitive namespace (typechecking error)
       In a script or data expression, a primitive was of the wrong
       namespace. */
    "kind": "permanent",
    "id": "proto.alpha.invalidPrimitiveNamespaceTypeError",
    "location": $micheline.location,
    "primitiveName":
      "BALANCE"
      | "LSL"
      | "LOOP_LEFT"
      | "CREATE_ACCOUNT"
      | "LOOP"
      | "LT"
      | "False"
      | "DUP"
      | "NOW"
      | "ABS"
      | "ADD"
      | "contract"
      | "big_map"
      | "MUL"
      | "ITER"
      | "EDIV"
      | "Unit"
      | "SOME"
      | "Pair"
      | "string"
      | "INT"
      | "MAP"
      | "XOR"
      | "return"
      | "bool"
      | "CONCAT"
      | "UPDATE"
      | "SOURCE"
      | "code"
      | "AMOUNT"
      | "CONS"
      | "CHECK_SIGNATURE"
      | "set"
      | "FAIL"
      | "UNIT"
      | "NEG"
      | "SIZE"
      | "key_hash"
      | "CREATE_CONTRACT"
      | "timestamp"
      | "True"
      | "Right"
      | "H"
      | "OR"
      | "LSR"
      | "CAR"
      | "EMPTY_MAP"
      | "AND"
      | "nat"
      | "HASH_KEY"
      | "RIGHT"
      | "MEM"
      | "NONE"
      | "NIL"
      | "Left"
      | "DEFAULT_ACCOUNT"
      | "GET"
      | "NOT"
      | "list"
      | "NEQ"
      | "key"
      | "EQ"
      | "SWAP"
      | "TRANSFER_TOKENS"
      | "LEFT"
      | "SELF"
      | "COMPARE"
      | "DIP"
      | "MANAGER"
      | "PUSH"
      | "LE"
      | "SUB"
      | "IF_NONE"
      | "Elt"
      | "option"
      | "tez"
      | "STEPS_TO_QUOTA"
      | "unit"
      | "EMPTY_SET"
      | "GE"
      | "PAIR"
      | "pair"
      | "IF"
      | "signature"
      | "or"
      | "Some"
      | "IF_CONS"
      | "parameter"
      | "LAMBDA"
      | "GT"
      | "REDUCE"
      | "int"
      | "None"
      | "map"
      | "EXEC"
      | "DROP"
      | "IF_LEFT"
      | "lambda"
      | "storage"
      | "CDR",
    "expectedNamespace": $primitiveNamespace,
    "wrongNamespace": $primitiveNamespace }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $primitiveNamespace:
    /* Primitive namespace
       One of the three possible namespaces of primitive (data constructor,
       type name or instruction). */
    "constant" | "type" | "instruction"

Invalid primitive (typechecking error)

In a script or data expression, a primitive was unknown.

Id : proto.alpha.invalidPrimitiveTypeError
Category : permanent

  { /* Invalid primitive (typechecking error)
       In a script or data expression, a primitive was unknown. */
    "kind": "permanent",
    "id": "proto.alpha.invalidPrimitiveTypeError",
    "location": $micheline.location,
    "expectedPrimitiveNames"?:
      [ "BALANCE"
        | "LSL"
        | "LOOP_LEFT"
        | "CREATE_ACCOUNT"
        | "LOOP"
        | "LT"
        | "False"
        | "DUP"
        | "NOW"
        | "ABS"
        | "ADD"
        | "contract"
        | "big_map"
        | "MUL"
        | "ITER"
        | "EDIV"
        | "Unit"
        | "SOME"
        | "Pair"
        | "string"
        | "INT"
        | "MAP"
        | "XOR"
        | "return"
        | "bool"
        | "CONCAT"
        | "UPDATE"
        | "SOURCE"
        | "code"
        | "AMOUNT"
        | "CONS"
        | "CHECK_SIGNATURE"
        | "set"
        | "FAIL"
        | "UNIT"
        | "NEG"
        | "SIZE"
        | "key_hash"
        | "CREATE_CONTRACT"
        | "timestamp"
        | "True"
        | "Right"
        | "H"
        | "OR"
        | "LSR"
        | "CAR"
        | "EMPTY_MAP"
        | "AND"
        | "nat"
        | "HASH_KEY"
        | "RIGHT"
        | "MEM"
        | "NONE"
        | "NIL"
        | "Left"
        | "DEFAULT_ACCOUNT"
        | "GET"
        | "NOT"
        | "list"
        | "NEQ"
        | "key"
        | "EQ"
        | "SWAP"
        | "TRANSFER_TOKENS"
        | "LEFT"
        | "SELF"
        | "COMPARE"
        | "DIP"
        | "MANAGER"
        | "PUSH"
        | "LE"
        | "SUB"
        | "IF_NONE"
        | "Elt"
        | "option"
        | "tez"
        | "STEPS_TO_QUOTA"
        | "unit"
        | "EMPTY_SET"
        | "GE"
        | "PAIR"
        | "pair"
        | "IF"
        | "signature"
        | "or"
        | "Some"
        | "IF_CONS"
        | "parameter"
        | "LAMBDA"
        | "GT"
        | "REDUCE"
        | "int"
        | "None"
        | "map"
        | "EXEC"
        | "DROP"
        | "IF_LEFT"
        | "lambda"
        | "storage"
        | "CDR" ... ],
    "wrongPrimitiveName":
      "BALANCE"
      | "LSL"
      | "LOOP_LEFT"
      | "CREATE_ACCOUNT"
      | "LOOP"
      | "LT"
      | "False"
      | "DUP"
      | "NOW"
      | "ABS"
      | "ADD"
      | "contract"
      | "big_map"
      | "MUL"
      | "ITER"
      | "EDIV"
      | "Unit"
      | "SOME"
      | "Pair"
      | "string"
      | "INT"
      | "MAP"
      | "XOR"
      | "return"
      | "bool"
      | "CONCAT"
      | "UPDATE"
      | "SOURCE"
      | "code"
      | "AMOUNT"
      | "CONS"
      | "CHECK_SIGNATURE"
      | "set"
      | "FAIL"
      | "UNIT"
      | "NEG"
      | "SIZE"
      | "key_hash"
      | "CREATE_CONTRACT"
      | "timestamp"
      | "True"
      | "Right"
      | "H"
      | "OR"
      | "LSR"
      | "CAR"
      | "EMPTY_MAP"
      | "AND"
      | "nat"
      | "HASH_KEY"
      | "RIGHT"
      | "MEM"
      | "NONE"
      | "NIL"
      | "Left"
      | "DEFAULT_ACCOUNT"
      | "GET"
      | "NOT"
      | "list"
      | "NEQ"
      | "key"
      | "EQ"
      | "SWAP"
      | "TRANSFER_TOKENS"
      | "LEFT"
      | "SELF"
      | "COMPARE"
      | "DIP"
      | "MANAGER"
      | "PUSH"
      | "LE"
      | "SUB"
      | "IF_NONE"
      | "Elt"
      | "option"
      | "tez"
      | "STEPS_TO_QUOTA"
      | "unit"
      | "EMPTY_SET"
      | "GE"
      | "PAIR"
      | "pair"
      | "IF"
      | "signature"
      | "or"
      | "Some"
      | "IF_CONS"
      | "parameter"
      | "LAMBDA"
      | "GT"
      | "REDUCE"
      | "int"
      | "None"
      | "map"
      | "EXEC"
      | "DROP"
      | "IF_LEFT"
      | "lambda"
      | "storage"
      | "CDR" }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Script is missing a field (parse error)

When parsing script, a field was expected, but not provided

Id : proto.alpha.missingScriptField
Category : permanent

  { /* Script is missing a field (parse error)
       When parsing script, a field was expected, but not provided */
    "kind": "permanent",
    "id": "proto.alpha.missingScriptField",
    "prim":
      "BALANCE"
      | "LSL"
      | "LOOP_LEFT"
      | "CREATE_ACCOUNT"
      | "LOOP"
      | "LT"
      | "False"
      | "DUP"
      | "NOW"
      | "ABS"
      | "ADD"
      | "contract"
      | "big_map"
      | "MUL"
      | "ITER"
      | "EDIV"
      | "Unit"
      | "SOME"
      | "Pair"
      | "string"
      | "INT"
      | "MAP"
      | "XOR"
      | "return"
      | "bool"
      | "CONCAT"
      | "UPDATE"
      | "SOURCE"
      | "code"
      | "AMOUNT"
      | "CONS"
      | "CHECK_SIGNATURE"
      | "set"
      | "FAIL"
      | "UNIT"
      | "NEG"
      | "SIZE"
      | "key_hash"
      | "CREATE_CONTRACT"
      | "timestamp"
      | "True"
      | "Right"
      | "H"
      | "OR"
      | "LSR"
      | "CAR"
      | "EMPTY_MAP"
      | "AND"
      | "nat"
      | "HASH_KEY"
      | "RIGHT"
      | "MEM"
      | "NONE"
      | "NIL"
      | "Left"
      | "DEFAULT_ACCOUNT"
      | "GET"
      | "NOT"
      | "list"
      | "NEQ"
      | "key"
      | "EQ"
      | "SWAP"
      | "TRANSFER_TOKENS"
      | "LEFT"
      | "SELF"
      | "COMPARE"
      | "DIP"
      | "MANAGER"
      | "PUSH"
      | "LE"
      | "SUB"
      | "IF_NONE"
      | "Elt"
      | "option"
      | "tez"
      | "STEPS_TO_QUOTA"
      | "unit"
      | "EMPTY_SET"
      | "GE"
      | "PAIR"
      | "pair"
      | "IF"
      | "signature"
      | "or"
      | "Some"
      | "IF_CONS"
      | "parameter"
      | "LAMBDA"
      | "GT"
      | "REDUCE"
      | "int"
      | "None"
      | "map"
      | "EXEC"
      | "DROP"
      | "IF_LEFT"
      | "lambda"
      | "storage"
      | "CDR" }

Previously revealed nonce

Duplicated revelation for a nonce.

Id : proto.alpha.nonce.previously_revealed
Category : branch

  { /* Previously revealed nonce
       Duplicated revelation for a nonce. */
    "kind": "branch",
    "id": "proto.alpha.nonce.previously_revealed",
    ... }

Too early nonce revelation

Nonce revelation happens before cycle end

Id : proto.alpha.nonce.too_early_revelation
Category : temporary

  { /* Too early nonce revelation
       Nonce revelation happens before cycle end */
    "kind": "temporary",
    "id": "proto.alpha.nonce.too_early_revelation",
    ... }

Too late nonce revelation

Nonce revelation happens too late

Id : proto.alpha.nonce.too_late_revelation
Category : branch

  { /* Too late nonce revelation
       Nonce revelation happens too late */
    "kind": "branch",
    "id": "proto.alpha.nonce.too_late_revelation",
    ... }

Unexpected nonce

The provided nonce is inconsistent with the commit nonce hash.

Id : proto.alpha.nonce.unexpected
Category : branch

  { /* Unexpected nonce
       The provided nonce is inconsistent with the commit nonce hash. */
    "kind": "branch",
    "id": "proto.alpha.nonce.unexpected",
    ... }

Cannot parse operation

The operation is ill-formed or for another protocol version

Id : proto.alpha.operation.cannot_parse
Category : branch

  { /* Cannot parse operation
       The operation is ill-formed or for another protocol version */
    "kind": "branch",
    "id": "proto.alpha.operation.cannot_parse",
    ... }

Duplicate endorsement

Two endorsements received for the same slot

Id : proto.alpha.operation.duplicate_endorsement
Category : branch

  { /* Duplicate endorsement
       Two endorsements received for the same slot */
    "kind": "branch",
    "id": "proto.alpha.operation.duplicate_endorsement",
    "slot": integer ∈ [0, 2^16-1] }

Invalid activation

The given key has already been activated or the given key does not correspond to any preallocated contract

Id : proto.alpha.operation.invalid_activation
Category : permanent

  { /* Invalid activation
       The given key has already been activated or the given key does not
       correspond to any preallocated contract */
    "kind": "permanent",
    "id": "proto.alpha.operation.invalid_activation",
    "pkh": string /* An Ed25519 public key hash (Base58Check-encoded) */ }

Unexpected level in endorsement

The level of an endorsement is inconsistent with the provided block hash.

Id : proto.alpha.operation.invalid_endorsement_level
Category : temporary

  { /* Unexpected level in endorsement
       The level of an endorsement is inconsistent with the  provided block
       hash. */
    "kind": "temporary",
    "id": "proto.alpha.operation.invalid_endorsement_level",
    ... }

Invalid operation signature

The operation signature is ill-formed or has been made with the wrong public key

Id : proto.alpha.operation.invalid_signature
Category : permanent

  { /* Invalid operation signature
       The operation signature is ill-formed or has been made with the
       wrong public key */
    "kind": "permanent",
    "id": "proto.alpha.operation.invalid_signature",
    ... }

Missing operation signature

The operation is of a kind that must be signed, but the signature is missing

Id : proto.alpha.operation.missing_signature
Category : permanent

  { /* Missing operation signature
       The operation is of a kind that must be signed, but the signature is
       missing */
    "kind": "permanent",
    "id": "proto.alpha.operation.missing_signature",
    ... }

Wrong activation secret

The submitted activation key does not match the registered key.

Id : proto.alpha.operation.wrong_activation_secret
Category : permanent

  { /* Wrong activation secret
       The submitted activation key does not match the registered key. */
    "kind": "permanent",
    "id": "proto.alpha.operation.wrong_activation_secret",
    ... }

Wrong endorsement predecessor

Trying to include an endorsement in a block that is not the successor of the endorsed one

Id : proto.alpha.operation.wrong_endorsement_predecessor
Category : temporary

  { /* Wrong endorsement predecessor
       Trying to include an endorsement in a block that is not the
       successor of the endorsed one */
    "kind": "temporary",
    "id": "proto.alpha.operation.wrong_endorsement_predecessor",
    "expected": string /* A Tezos block ID (Base58Check-encoded) */,
    "provided": string /* A Tezos block ID (Base58Check-encoded) */ }

Wrong voting period

Trying to onclude a proposal or ballot meant for another voting period

Id : proto.alpha.operation.wrong_voting_period
Category : temporary

  { /* Wrong voting period
       Trying to onclude a proposal or ballot meant for another voting
       period */
    "kind": "temporary",
    "id": "proto.alpha.operation.wrong_voting_period",
    "current": integer ∈ [-2^31-2, 2^31+2],
    "provided": integer ∈ [-2^31-2, 2^31+2] }

Quota exceeded (runtime script error)

A script or one of its callee took too much time or storage space

Id : proto.alpha.quotaExceededRuntimeError
Category : permanent

  { /* Quota exceeded (runtime script error)
       A script or one of its callee took too much time or storage space */
    "kind": "permanent",
    "id": "proto.alpha.quotaExceededRuntimeError" }

Script failed (overflow error)

A FAIL instruction was reached due to the detection of an overflow

Id : proto.alpha.scriptOverflowRuntimeError
Category : temporary

  { /* Script failed (overflow error)
       A FAIL instruction was reached due to the detection of an overflow */
    "kind": "temporary",
    "id": "proto.alpha.scriptOverflowRuntimeError",
    "location": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Script failed (runtime script error)

A FAIL instruction was reached

Id : proto.alpha.scriptRejectedRuntimeError
Category : temporary

  { /* Script failed (runtime script error)
       A FAIL instruction was reached */
    "kind": "temporary",
    "id": "proto.alpha.scriptRejectedRuntimeError",
    "location": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Script runtime error

Toplevel error for all runtime script errors

Id : proto.alpha.scriptRuntimeError
Category : temporary

  { /* Script runtime error
       Toplevel error for all runtime script errors */
    "kind": "temporary",
    "id": "proto.alpha.scriptRuntimeError",
    "contractHandle":
      string
      /* A contract handle
         A contract notation as given to an RPC or inside scripts. Can be a
         base58 public key hash, representing the implicit contract of this
         identity, or a base58 originated contract hash. */,
    "contractCode": $micheline.michelson_v1.expression }
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Unknown seed

The requested seed is not available

Id : proto.alpha.seed.unknown_seed
Category : permanent

  { /* Unknown seed
       The requested seed is not available */
    "kind": "permanent",
    "id": "proto.alpha.seed.unknown_seed",
    "oldest": integer ∈ [-2^31-2, 2^31+2],
    "requested": integer ∈ [-2^31-2, 2^31+2],
    "latest": integer ∈ [-2^31-2, 2^31+2] }

SELF instruction in lambda (typechecking error)

A SELF instruction was encountered in a lambda expression.

Id : proto.alpha.selfInLambda
Category : permanent

  { /* SELF instruction in lambda (typechecking error)
       A SELF instruction was encountered in a lambda expression. */
    "kind": "permanent",
    "id": "proto.alpha.selfInLambda",
    "location": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Overflowing tez addition

An addition of two tez amounts overflowed

Id : proto.alpha.tez.addition_overflow
Category : temporary

  { /* Overflowing tez addition
       An addition of two tez amounts overflowed */
    "kind": "temporary",
    "id": "proto.alpha.tez.addition_overflow",
    "amounts":
      [ /* Amount in mutez */
        integer ∈ [-2^31-2, 2^31+2] || string,
        /* Amount in mutez */
        integer ∈ [-2^31-2, 2^31+2] || string ] }

Invalid tez divisor

Multiplication of a tez amount by a non positive integer

Id : proto.alpha.tez.invalid_divisor
Category : temporary

  { /* Invalid tez divisor
       Multiplication of a tez amount by a non positive integer */
    "kind": "temporary",
    "id": "proto.alpha.tez.invalid_divisor",
    "amount": /* Amount in mutez */integer ∈ [-2^31-2, 2^31+2] || string,
    "divisor": integer ∈ [-2^31-2, 2^31+2] || string }

Overflowing tez multiplication

A multiplication of a tez amount by an integer overflowed

Id : proto.alpha.tez.multiplication_overflow
Category : temporary

  { /* Overflowing tez multiplication
       A multiplication of a tez amount by an integer overflowed */
    "kind": "temporary",
    "id": "proto.alpha.tez.multiplication_overflow",
    "amount": /* Amount in mutez */integer ∈ [-2^31-2, 2^31+2] || string,
    "multiplicator": integer ∈ [-2^31-2, 2^31+2] || string }

Negative tez multiplicator

Multiplication of a tez amount by a negative integer

Id : proto.alpha.tez.negative_multiplicator
Category : temporary

  { /* Negative tez multiplicator
       Multiplication of a tez amount by a negative integer */
    "kind": "temporary",
    "id": "proto.alpha.tez.negative_multiplicator",
    "amount": /* Amount in mutez */integer ∈ [-2^31-2, 2^31+2] || string,
    "multiplicator": integer ∈ [-2^31-2, 2^31+2] || string }

Underflowing tez subtraction

An subtraction of two tez amounts underflowed

Id : proto.alpha.tez.subtraction_underflow
Category : temporary

  { /* Underflowing tez subtraction
       An subtraction of two tez amounts underflowed */
    "kind": "temporary",
    "id": "proto.alpha.tez.subtraction_underflow",
    "amounts":
      [ /* Amount in mutez */
        integer ∈ [-2^31-2, 2^31+2] || string,
        /* Amount in mutez */
        integer ∈ [-2^31-2, 2^31+2] || string ] }

Stack item type too large

An instruction generated a type larger than the limit.

Id : proto.alpha.typeTooLarge
Category : permanent

  { /* Stack item type too large
       An instruction generated a type larger than the limit. */
    "kind": "permanent",
    "id": "proto.alpha.typeTooLarge",
    "loc": $micheline.location,
    "typeSize": integer ∈ [0, 2^16-1],
    "maximumTypeSize": integer ∈ [0, 2^16-1] }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Undefined binop (typechecking error)

A binary operation is called on operands of types over which it is not defined.

Id : proto.alpha.undefinedBinopTypeError
Category : permanent

  { /* Undefined binop (typechecking error)
       A binary operation is called on operands of types over which it is
       not defined. */
    "kind": "permanent",
    "id": "proto.alpha.undefinedBinopTypeError",
    "location": $micheline.location,
    "operatorName":
      "BALANCE"
      | "LSL"
      | "LOOP_LEFT"
      | "CREATE_ACCOUNT"
      | "LOOP"
      | "LT"
      | "False"
      | "DUP"
      | "NOW"
      | "ABS"
      | "ADD"
      | "contract"
      | "big_map"
      | "MUL"
      | "ITER"
      | "EDIV"
      | "Unit"
      | "SOME"
      | "Pair"
      | "string"
      | "INT"
      | "MAP"
      | "XOR"
      | "return"
      | "bool"
      | "CONCAT"
      | "UPDATE"
      | "SOURCE"
      | "code"
      | "AMOUNT"
      | "CONS"
      | "CHECK_SIGNATURE"
      | "set"
      | "FAIL"
      | "UNIT"
      | "NEG"
      | "SIZE"
      | "key_hash"
      | "CREATE_CONTRACT"
      | "timestamp"
      | "True"
      | "Right"
      | "H"
      | "OR"
      | "LSR"
      | "CAR"
      | "EMPTY_MAP"
      | "AND"
      | "nat"
      | "HASH_KEY"
      | "RIGHT"
      | "MEM"
      | "NONE"
      | "NIL"
      | "Left"
      | "DEFAULT_ACCOUNT"
      | "GET"
      | "NOT"
      | "list"
      | "NEQ"
      | "key"
      | "EQ"
      | "SWAP"
      | "TRANSFER_TOKENS"
      | "LEFT"
      | "SELF"
      | "COMPARE"
      | "DIP"
      | "MANAGER"
      | "PUSH"
      | "LE"
      | "SUB"
      | "IF_NONE"
      | "Elt"
      | "option"
      | "tez"
      | "STEPS_TO_QUOTA"
      | "unit"
      | "EMPTY_SET"
      | "GE"
      | "PAIR"
      | "pair"
      | "IF"
      | "signature"
      | "or"
      | "Some"
      | "IF_CONS"
      | "parameter"
      | "LAMBDA"
      | "GT"
      | "REDUCE"
      | "int"
      | "None"
      | "map"
      | "EXEC"
      | "DROP"
      | "IF_LEFT"
      | "lambda"
      | "storage"
      | "CDR",
    "wrongLeftOperandType": $micheline.michelson_v1.expression,
    "wrongRightOperandType": $micheline.michelson_v1.expression }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Undefined unop (typechecking error)

A unary operation is called on an operand of type over which it is not defined.

Id : proto.alpha.undefinedUnopTypeError
Category : permanent

  { /* Undefined unop (typechecking error)
       A unary operation is called on an operand of type over which it is
       not defined. */
    "kind": "permanent",
    "id": "proto.alpha.undefinedUnopTypeError",
    "location": $micheline.location,
    "operatorName":
      "BALANCE"
      | "LSL"
      | "LOOP_LEFT"
      | "CREATE_ACCOUNT"
      | "LOOP"
      | "LT"
      | "False"
      | "DUP"
      | "NOW"
      | "ABS"
      | "ADD"
      | "contract"
      | "big_map"
      | "MUL"
      | "ITER"
      | "EDIV"
      | "Unit"
      | "SOME"
      | "Pair"
      | "string"
      | "INT"
      | "MAP"
      | "XOR"
      | "return"
      | "bool"
      | "CONCAT"
      | "UPDATE"
      | "SOURCE"
      | "code"
      | "AMOUNT"
      | "CONS"
      | "CHECK_SIGNATURE"
      | "set"
      | "FAIL"
      | "UNIT"
      | "NEG"
      | "SIZE"
      | "key_hash"
      | "CREATE_CONTRACT"
      | "timestamp"
      | "True"
      | "Right"
      | "H"
      | "OR"
      | "LSR"
      | "CAR"
      | "EMPTY_MAP"
      | "AND"
      | "nat"
      | "HASH_KEY"
      | "RIGHT"
      | "MEM"
      | "NONE"
      | "NIL"
      | "Left"
      | "DEFAULT_ACCOUNT"
      | "GET"
      | "NOT"
      | "list"
      | "NEQ"
      | "key"
      | "EQ"
      | "SWAP"
      | "TRANSFER_TOKENS"
      | "LEFT"
      | "SELF"
      | "COMPARE"
      | "DIP"
      | "MANAGER"
      | "PUSH"
      | "LE"
      | "SUB"
      | "IF_NONE"
      | "Elt"
      | "option"
      | "tez"
      | "STEPS_TO_QUOTA"
      | "unit"
      | "EMPTY_SET"
      | "GE"
      | "PAIR"
      | "pair"
      | "IF"
      | "signature"
      | "or"
      | "Some"
      | "IF_CONS"
      | "parameter"
      | "LAMBDA"
      | "GT"
      | "REDUCE"
      | "int"
      | "None"
      | "map"
      | "EXEC"
      | "DROP"
      | "IF_LEFT"
      | "lambda"
      | "storage"
      | "CDR",
    "wrongOperandType": $micheline.michelson_v1.expression }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

An annotation was encountered where no annotation is expected

A node in the syntax tree was impropperly annotated

Id : proto.alpha.unexpectedAnnotation
Category : permanent

  { /* An annotation was encountered where no annotation is expected
       A node in the syntax tree was impropperly annotated */
    "kind": "permanent",
    "id": "proto.alpha.unexpectedAnnotation",
    "location": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Big map in unauthorized position (type error)

When parsing script, a big_map type was found somewhere else than in the left component of the toplevel storage pair.

Id : proto.alpha.unexpectedBigMap
Category : permanent

  { /* Big map in unauthorized position (type error)
       When parsing script, a big_map type was found somewhere else than in
       the left component of the toplevel storage pair. */
    "kind": "permanent",
    "id": "proto.alpha.unexpectedBigMap",
    "loc": $micheline.location }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]

Unknown primitive name (typechecking error)

In a script or data expression, a primitive was unknown.

Id : proto.alpha.unknownPrimitiveNameTypeError
Category : permanent

  { /* Unknown primitive name (typechecking error)
       In a script or data expression, a primitive was unknown. */
    "kind": "permanent",
    "id": "proto.alpha.unknownPrimitiveNameTypeError",
    "wrongPrimitiveName": string }

Unmatched branches (typechecking error)

At the join point at the end of two code branches the stacks have inconsistent lengths or contents.

Id : proto.alpha.unmatchedBranchesTypeError
Category : permanent

  { /* Unmatched branches (typechecking error)
       At the join point at the end of two code branches the stacks have
       inconsistent lengths or contents. */
    "kind": "permanent",
    "id": "proto.alpha.unmatchedBranchesTypeError",
    "location": $micheline.location,
    "firstStackType":
      [ [ $micheline.michelson_v1.expression, string || null ] ... ],
    "otherStackType":
      [ [ $micheline.michelson_v1.expression, string || null ] ... ] }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Invalid map key order

Map keys must be in strictly increasing order

Id : proto.alpha.unorderedMapLiteral
Category : permanent

  { /* Invalid map key order
       Map keys must be in strictly increasing order */
    "kind": "permanent",
    "id": "proto.alpha.unorderedMapLiteral",
    "location": $micheline.location,
    "item": $micheline.michelson_v1.expression }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Invalid set value order

Set values must be in strictly increasing order

Id : proto.alpha.unorderedSetLiteral
Category : permanent

  { /* Invalid set value order
       Set values must be in strictly increasing order */
    "kind": "permanent",
    "id": "proto.alpha.unorderedSetLiteral",
    "location": $micheline.location,
    "value": $micheline.michelson_v1.expression }
  $micheline.location:
    /* Canonical location in a Micheline expression
       The location of a node in a Micheline expression tree in prefix
       order, with zero being the root and adding one for every basic node,
       sequence and primitive application. */
    integer ∈ [-2^30-2, 2^30+2]
  $micheline.michelson_v1.expression:
    /* Micheline expression (michelson_v1 variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.michelson_v1.expression ... ]
    || { "prim":
           "BALANCE"
           | "LSL"
           | "LOOP_LEFT"
           | "CREATE_ACCOUNT"
           | "LOOP"
           | "LT"
           | "False"
           | "DUP"
           | "NOW"
           | "ABS"
           | "ADD"
           | "contract"
           | "big_map"
           | "MUL"
           | "ITER"
           | "EDIV"
           | "Unit"
           | "SOME"
           | "Pair"
           | "string"
           | "INT"
           | "MAP"
           | "XOR"
           | "return"
           | "bool"
           | "CONCAT"
           | "UPDATE"
           | "SOURCE"
           | "code"
           | "AMOUNT"
           | "CONS"
           | "CHECK_SIGNATURE"
           | "set"
           | "FAIL"
           | "UNIT"
           | "NEG"
           | "SIZE"
           | "key_hash"
           | "CREATE_CONTRACT"
           | "timestamp"
           | "True"
           | "Right"
           | "H"
           | "OR"
           | "LSR"
           | "CAR"
           | "EMPTY_MAP"
           | "AND"
           | "nat"
           | "HASH_KEY"
           | "RIGHT"
           | "MEM"
           | "NONE"
           | "NIL"
           | "Left"
           | "DEFAULT_ACCOUNT"
           | "GET"
           | "NOT"
           | "list"
           | "NEQ"
           | "key"
           | "EQ"
           | "SWAP"
           | "TRANSFER_TOKENS"
           | "LEFT"
           | "SELF"
           | "COMPARE"
           | "DIP"
           | "MANAGER"
           | "PUSH"
           | "LE"
           | "SUB"
           | "IF_NONE"
           | "Elt"
           | "option"
           | "tez"
           | "STEPS_TO_QUOTA"
           | "unit"
           | "EMPTY_SET"
           | "GE"
           | "PAIR"
           | "pair"
           | "IF"
           | "signature"
           | "or"
           | "Some"
           | "IF_CONS"
           | "parameter"
           | "LAMBDA"
           | "GT"
           | "REDUCE"
           | "int"
           | "None"
           | "map"
           | "EXEC"
           | "DROP"
           | "IF_LEFT"
           | "lambda"
           | "storage"
           | "CDR",
         "args": [ $micheline.michelson_v1.expression ... ],
         "annot"?: string }

Shell

Canceled fetch of a Block_hash

The fetch of a Block_hash has been canceled

Id : distributed_db.Block_hash.fetch_canceled
Category : permanent

  { /* Canceled fetch of a Block_hash
       The fetch of a Block_hash has been canceled */
    "kind": "permanent",
    "id": "distributed_db.Block_hash.fetch_canceled",
    "key": string /* A Tezos block ID (Base58Check-encoded) */ }

Timed out fetch of a Block_hash

The fetch of a Block_hash has timed out

Id : distributed_db.Block_hash.fetch_timeout
Category : permanent

  { /* Timed out fetch of a Block_hash
       The fetch of a Block_hash has timed out */
    "kind": "permanent",
    "id": "distributed_db.Block_hash.fetch_timeout",
    "key": string /* A Tezos block ID (Base58Check-encoded) */ }

Missing Block_hash

Some Block_hash is missing from the distributed db

Id : distributed_db.Block_hash.missing
Category : permanent

  { /* Missing Block_hash
       Some Block_hash is missing from the distributed db */
    "kind": "permanent",
    "id": "distributed_db.Block_hash.missing",
    "key": string /* A Tezos block ID (Base58Check-encoded) */ }

Canceled fetch of a Operation_hash

The fetch of a Operation_hash has been canceled

Id : distributed_db.Operation_hash.fetch_canceled
Category : permanent

  { /* Canceled fetch of a Operation_hash
       The fetch of a Operation_hash has been canceled */
    "kind": "permanent",
    "id": "distributed_db.Operation_hash.fetch_canceled",
    "key": string /* A Tezos operation ID (Base58Check-encoded) */ }

Timed out fetch of a Operation_hash

The fetch of a Operation_hash has timed out

Id : distributed_db.Operation_hash.fetch_timeout
Category : permanent

  { /* Timed out fetch of a Operation_hash
       The fetch of a Operation_hash has timed out */
    "kind": "permanent",
    "id": "distributed_db.Operation_hash.fetch_timeout",
    "key": string /* A Tezos operation ID (Base58Check-encoded) */ }

Missing Operation_hash

Some Operation_hash is missing from the distributed db

Id : distributed_db.Operation_hash.missing
Category : permanent

  { /* Missing Operation_hash
       Some Operation_hash is missing from the distributed db */
    "kind": "permanent",
    "id": "distributed_db.Operation_hash.missing",
    "key": string /* A Tezos operation ID (Base58Check-encoded) */ }

Canceled fetch of a Protocol_hash

The fetch of a Protocol_hash has been canceled

Id : distributed_db.Protocol_hash.fetch_canceled
Category : permanent

  { /* Canceled fetch of a Protocol_hash
       The fetch of a Protocol_hash has been canceled */
    "kind": "permanent",
    "id": "distributed_db.Protocol_hash.fetch_canceled",
    "key": string /* A Tezos protocol ID (Base58Check-encoded) */ }

Timed out fetch of a Protocol_hash

The fetch of a Protocol_hash has timed out

Id : distributed_db.Protocol_hash.fetch_timeout
Category : permanent

  { /* Timed out fetch of a Protocol_hash
       The fetch of a Protocol_hash has timed out */
    "kind": "permanent",
    "id": "distributed_db.Protocol_hash.fetch_timeout",
    "key": string /* A Tezos protocol ID (Base58Check-encoded) */ }

Missing Protocol_hash

Some Protocol_hash is missing from the distributed db

Id : distributed_db.Protocol_hash.missing
Category : permanent

  { /* Missing Protocol_hash
       Some Protocol_hash is missing from the distributed db */
    "kind": "permanent",
    "id": "distributed_db.Protocol_hash.missing",
    "key": string /* A Tezos protocol ID (Base58Check-encoded) */ }

Canceled fetch of a operation_hashes

The fetch of a operation_hashes has been canceled

Id : distributed_db.operation_hashes.fetch_canceled
Category : permanent

  { /* Canceled fetch of a operation_hashes
       The fetch of a operation_hashes has been canceled */
    "kind": "permanent",
    "id": "distributed_db.operation_hashes.fetch_canceled",
    "key":
      { "block": string /* A Tezos block ID (Base58Check-encoded) */,
        "index": integer ∈ [0, 2^16-1] } }

Timed out fetch of a operation_hashes

The fetch of a operation_hashes has timed out

Id : distributed_db.operation_hashes.fetch_timeout
Category : permanent

  { /* Timed out fetch of a operation_hashes
       The fetch of a operation_hashes has timed out */
    "kind": "permanent",
    "id": "distributed_db.operation_hashes.fetch_timeout",
    "key":
      { "block": string /* A Tezos block ID (Base58Check-encoded) */,
        "index": integer ∈ [0, 2^16-1] } }

Missing operation_hashes

Some operation_hashes is missing from the distributed db

Id : distributed_db.operation_hashes.missing
Category : permanent

  { /* Missing operation_hashes
       Some operation_hashes is missing from the distributed db */
    "kind": "permanent",
    "id": "distributed_db.operation_hashes.missing",
    "key":
      { "block": string /* A Tezos block ID (Base58Check-encoded) */,
        "index": integer ∈ [0, 2^16-1] } }

Canceled fetch of a operations

The fetch of a operations has been canceled

Id : distributed_db.operations.fetch_canceled
Category : permanent

  { /* Canceled fetch of a operations
       The fetch of a operations has been canceled */
    "kind": "permanent",
    "id": "distributed_db.operations.fetch_canceled",
    "key":
      { "block": string /* A Tezos block ID (Base58Check-encoded) */,
        "index": integer ∈ [0, 2^16-1] } }

Timed out fetch of a operations

The fetch of a operations has timed out

Id : distributed_db.operations.fetch_timeout
Category : permanent

  { /* Timed out fetch of a operations
       The fetch of a operations has timed out */
    "kind": "permanent",
    "id": "distributed_db.operations.fetch_timeout",
    "key":
      { "block": string /* A Tezos block ID (Base58Check-encoded) */,
        "index": integer ∈ [0, 2^16-1] } }

Missing operations

Some operations is missing from the distributed db

Id : distributed_db.operations.missing
Category : permanent

  { /* Missing operations
       Some operations is missing from the distributed db */
    "kind": "permanent",
    "id": "distributed_db.operations.missing",
    "key":
      { "block": string /* A Tezos block ID (Base58Check-encoded) */,
        "index": integer ∈ [0, 2^16-1] } }

Invalid block locator

Block locator is invalid.

Id : node.bootstrap_pipeline.invalid_locator
Category : permanent

  { /* Invalid block locator
       Block locator is invalid. */
    "kind": "permanent",
    "id": "node.bootstrap_pipeline.invalid_locator",
    "id": string /* A Cryptobox public key ID (Base58Check-encoded) */,
    "locator":
      { "current_head":
          { "level": integer ∈ [-2^31-2, 2^31+2],
            "proto": integer ∈ [0, 255],
            "predecessor":
              string
              /* A Tezos block ID (Base58Check-encoded) */,
            "timestamp":
              /* timestamp */
              $timestamp || integer ∈ [-2^31-2, 2^31+2] || string,
            "validation_pass": integer ∈ [0, 255],
            "operations_hash":
              string
              /* A list of list of operations (Base58Check-encoded) */,
            "fitness": [ /^[a-zA-Z0-9]+$/ ... ] /* Tezos block fitness */,
            "context": string /* A hash of context (Base58Check-encoded) */,
            "protocol_data": /^[a-zA-Z0-9]+$/ },
        "history":
          [ string
          /* A Tezos block ID (Base58Check-encoded) */ ... ] } }
  $timestamp:
    /* RFC 3339 formatted timestamp
       A date in human readble form as specified in RFC 3339. */
    string

Connection closed

IO error: connection with a peer is closed.

Id : node.p2p_io_scheduler.connection_closed
Category : permanent

  { /* Connection closed
       IO error: connection with a peer is closed. */
    "kind": "permanent",
    "id": "node.p2p_io_scheduler.connection_closed" }

Closed network

Network is closed.

Id : node.p2p_pool.closed_network
Category : permanent

  { /* Closed network
       Network is closed. */
    "kind": "permanent",
    "id": "node.p2p_pool.closed_network" }

Connected

Fail to connect with a peer: a connection is already established.

Id : node.p2p_pool.connected
Category : permanent

  { /* Connected
       Fail to connect with a peer: a connection is already established. */
    "kind": "permanent",
    "id": "node.p2p_pool.connected" }

Connection refused

Connection was refused.

Id : node.p2p_pool.connection_refused
Category : permanent

  { /* Connection refused
       Connection was refused. */
    "kind": "permanent",
    "id": "node.p2p_pool.connection_refused" }

Peer Banned

The peer identity you tried to connect is banned.

Id : node.p2p_pool.peer_banned
Category : permanent

  { /* Peer Banned
       The peer identity you tried to connect is banned. */
    "kind": "permanent",
    "id": "node.p2p_pool.peer_banned",
    "peer": string /* A Cryptobox public key ID (Base58Check-encoded) */ }

Pending connection

Fail to connect with a peer: a connection is already pending.

Id : node.p2p_pool.pending_connection
Category : permanent

  { /* Pending connection
       Fail to connect with a peer: a connection is already pending. */
    "kind": "permanent",
    "id": "node.p2p_pool.pending_connection" }

Point Banned

The addr you tried to connect is banned.

Id : node.p2p_pool.point_banned
Category : permanent

  { /* Point Banned
       The addr you tried to connect is banned. */
    "kind": "permanent",
    "id": "node.p2p_pool.point_banned",
    "point": string }

Rejected peer

Connection to peer was rejected.

Id : node.p2p_pool.rejected
Category : permanent

  { /* Rejected peer
       Connection to peer was rejected. */
    "kind": "permanent",
    "id": "node.p2p_pool.rejected",
    "peer id": string /* A Cryptobox public key ID (Base58Check-encoded) */ }

Too many connections

Too many connections.

Id : node.p2p_pool.too_many_connections
Category : permanent

  { /* Too many connections
       Too many connections. */
    "kind": "permanent",
    "id": "node.p2p_pool.too_many_connections" }

Decipher error

An error occurred while deciphering.

Id : node.p2p_socket.decipher_error
Category : permanent

  { /* Decipher error
       An error occurred while deciphering. */
    "kind": "permanent",
    "id": "node.p2p_socket.decipher_error" }

Decoding error

An error occurred while decoding.

Id : node.p2p_socket.decoding_error
Category : permanent

  { /* Decoding error
       An error occurred while decoding. */
    "kind": "permanent",
    "id": "node.p2p_socket.decoding_error" }

Encoding error

An error occurred while encoding.

Id : node.p2p_socket.encoding_error
Category : permanent

  { /* Encoding error
       An error occurred while encoding. */
    "kind": "permanent",
    "id": "node.p2p_socket.encoding_error" }

Invalid authentication

Rejected peer connection: invalid authentication.

Id : node.p2p_socket.invalid_auth
Category : permanent

  { /* Invalid authentication
       Rejected peer connection: invalid authentication. */
    "kind": "permanent",
    "id": "node.p2p_socket.invalid_auth" }

Invalid chunks size

Size of chunks is not valid.

Id : node.p2p_socket.invalid_chunks_size
Category : permanent

  { /* Invalid chunks size
       Size of chunks is not valid. */
    "kind": "permanent",
    "id": "node.p2p_socket.invalid_chunks_size",
    "value": integer ∈ [-2^30-2, 2^30+2],
    "min": integer ∈ [-2^30-2, 2^30+2],
    "max": integer ∈ [-2^30-2, 2^30+2] }

Invalid message size

The size of the message to be written is invalid.

Id : node.p2p_socket.invalid_message_size
Category : permanent

  { /* Invalid message size
       The size of the message to be written is invalid. */
    "kind": "permanent",
    "id": "node.p2p_socket.invalid_message_size" }

Myself

Remote peer is actually yourself.

Id : node.p2p_socket.myself
Category : permanent

  { /* Myself
       Remote peer is actually yourself. */
    "kind": "permanent",
    "id": "node.p2p_socket.myself",
    "connection id": { "addr": string,
                       "port"?: integer ∈ [0, 2^16-1] } }

Not enough proof of work

Remote peer cannot be authenticated: not enough proof of work.

Id : node.p2p_socket.not_enough_proof_of_work
Category : permanent

  { /* Not enough proof of work
       Remote peer cannot be authenticated: not enough proof of work. */
    "kind": "permanent",
    "id": "node.p2p_socket.not_enough_proof_of_work",
    "peer id": string /* A Cryptobox public key ID (Base58Check-encoded) */ }

Rejected socket connection

Rejected peer connection: rejected socket connection.

Id : node.p2p_socket.rejected_socket_connection
Category : permanent

  { /* Rejected socket connection
       Rejected peer connection: rejected socket connection. */
    "kind": "permanent",
    "id": "node.p2p_socket.rejected_socket_connection" }

Known invalid

Known invalid block found in the peer's chain

Id : node.peer_validator.known_invalid
Category : permanent

  { /* Known invalid
       Known invalid block found in the peer's chain */
    "kind": "permanent",
    "id": "node.peer_validator.known_invalid" }

Unknown ancestor

Unknown ancestor block found in the peer's chain

Id : node.peer_validator.unknown_ancestor
Category : permanent

  { /* Unknown ancestor
       Unknown ancestor block found in the peer's chain */
    "kind": "permanent",
    "id": "node.peer_validator.unknown_ancestor" }

Oversized operation

The operation size is bigger than allowed.

Id : node.prevalidation.oversized_operation
Category : permanent

  { /* Oversized operation
       The operation size is bigger than allowed. */
    "kind": "permanent",
    "id": "node.prevalidation.oversized_operation",
    "size": integer ∈ [-2^30-2, 2^30+2],
    "max_size": integer ∈ [-2^30-2, 2^30+2] }

Parsing error in prevalidation

Raised when an operation has not been parsed correctly during prevalidation.

Id : node.prevalidation.parse_error
Category : permanent

  { /* Parsing error in prevalidation
       Raised when an operation has not been parsed correctly during
       prevalidation. */
    "kind": "permanent",
    "id": "node.prevalidation.parse_error" }

Too many pending operations in prevalidation

The prevalidation context is full.

Id : node.prevalidation.too_many_operations
Category : temporary

  { /* Too many pending operations in prevalidation
       The prevalidation context is full. */
    "kind": "temporary",
    "id": "node.prevalidation.too_many_operations" }

Invalid protocol

Invalid protocol.

Id : node.protocol_validator.invalid_protocol
Category : permanent

  /* Invalid protocol
     Invalid protocol. */
  { "kind": "permanent",
    "id": "node.protocol_validator.invalid_protocol",
    "invalid_protocol":
      string
      /* A Tezos protocol ID (Base58Check-encoded) */,
    "error": "compilation_failed" }
  || { "kind": "permanent",
       "id": "node.protocol_validator.invalid_protocol",
       "invalid_protocol":
         string
         /* A Tezos protocol ID (Base58Check-encoded) */,
       "error": "dynlinking_failed" }

Bad data directory

The data directory could not be read. This could be because it was generated with an old version of the tezos-node program. Deleting and regenerating this directory may fix the problem.

Id : node.state.bad_data_dir
Category : permanent

  { /* Bad data directory
       The data directory could not be read. This could be because it was
       generated with an old version of the tezos-node program. Deleting
       and regenerating this directory may fix the problem. */
    "kind": "permanent",
    "id": "node.state.bad_data_dir" }

Inconsistent commit hash

When commiting the context of a block, the announced context hash was not the one computed at commit time.

Id : node.state.block.inconsistent_context_hash
Category : permanent

  { /* Inconsistent commit hash
       When commiting the context of a block, the announced context hash
       was not the one computed at commit time. */
    "kind": "permanent",
    "id": "node.state.block.inconsistent_context_hash",
    "wrong_context_hash":
      string
      /* A hash of context (Base58Check-encoded) */,
    "expected_context_hash":
      string
      /* A hash of context (Base58Check-encoded) */ }

Block not invalid

The invalid block to be unmarked was not actually invalid.

Id : node.state.block_not_invalid
Category : permanent

  { /* Block not invalid
       The invalid block to be unmarked was not actually invalid. */
    "kind": "permanent",
    "id": "node.state.block_not_invalid",
    "block": string /* A Tezos block ID (Base58Check-encoded) */ }

Unknown chain

The chain identifier could not be found in the chain identifiers table.

Id : node.state.unknown_chain
Category : permanent

  { /* Unknown chain
       The chain identifier could not be found in the chain identifiers
       table. */
    "kind": "permanent",
    "id": "node.state.unknown_chain",
    "chain": string /* Network identifier (Base58Check-encoded) */ }

Inactive chain

Attempted validation of a block from an inactive chain.

Id : node.validator.inactive_chain
Category : branch

  { /* Inactive chain
       Attempted validation of a block from an inactive chain. */
    "kind": "branch",
    "id": "node.validator.inactive_chain",
    "inactive_chain": string /* Network identifier (Base58Check-encoded) */ }

Missing key in store

Missing key in store

Id : raw_store.unknown
Category : permanent

  { /* Missing key in store
       Missing key in store */
    "kind": "permanent",
    "id": "raw_store.unknown",
    "key": [ string ... ] }

Invalid merkle tree

The provided list of operations is inconsistent with the block header.

Id : validator.inconsistent_operations_hash
Category : temporary

  { /* Invalid merkle tree
       The provided list of operations is inconsistent with the block
       header. */
    "kind": "temporary",
    "id": "validator.inconsistent_operations_hash",
    "block": string /* A Tezos block ID (Base58Check-encoded) */,
    "expected":
      string
      /* A list of list of operations (Base58Check-encoded) */,
    "found":
      string
      /* A list of list of operations (Base58Check-encoded) */ }

Invalid block

Invalid block.

Id : validator.invalid_block
Category : permanent

  /* Invalid block
     Invalid block. */
  { "kind": "permanent",
    "id": "validator.invalid_block",
    "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
    "error": "cannot_parse_operation",
    "operation": string /* A Tezos operation ID (Base58Check-encoded) */ }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "invalid_fitness",
       "expected": [ /^[a-zA-Z0-9]+$/ ... ] /* Tezos block fitness */,
       "found": [ /^[a-zA-Z0-9]+$/ ... ] /* Tezos block fitness */ }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "non_increasing_timestamp" }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "non_increasing_fitness" }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "invalid_level",
       "expected": integer ∈ [-2^31-2, 2^31+2],
       "found": integer ∈ [-2^31-2, 2^31+2] }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "invalid_proto_level",
       "expected": integer ∈ [0, 255],
       "found": integer ∈ [0, 255] }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "replayed_operation",
       "operation": string /* A Tezos operation ID (Base58Check-encoded) */ }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "outdated_operation",
       "operation": string /* A Tezos operation ID (Base58Check-encoded) */,
       "originating_block":
         string
         /* A Tezos block ID (Base58Check-encoded) */ }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "unexpected_number_of_passes",
       "found": integer ∈ [0, 255] }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "too_many_operations",
       "validation_pass": integer ∈ [0, 255],
       "found": integer ∈ [0, 2^16-1],
       "max": integer ∈ [0, 2^16-1] }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "oversized_operation",
       "operation": string /* A Tezos operation ID (Base58Check-encoded) */,
       "found": integer ∈ [-2^30-2, 2^30+2],
       "max": integer ∈ [-2^30-2, 2^30+2] }
  || { "kind": "permanent",
       "id": "validator.invalid_block",
       "invalid_block": string /* A Tezos block ID (Base58Check-encoded) */,
       "error": "invalid_pass",
       "operation": string /* A Tezos operation ID (Base58Check-encoded) */,
       "pass": integer ∈ [0, 255],
       "allowed_pass": [ integer ∈ [0, 255] ... ] }

Missing protocol

The protocol required for validating a block is missing.

Id : validator.unavailable_protocol
Category : temporary

  { /* Missing protocol
       The protocol required for validating a block is missing. */
    "kind": "temporary",
    "id": "validator.unavailable_protocol",
    "block": string /* A Tezos block ID (Base58Check-encoded) */,
    "missing_protocol":
      string
      /* A Tezos protocol ID (Base58Check-encoded) */ }

Worker prevalidator closed

An operation on a prevalidator worker could not complete before it was shut down.

Id : worker.prevalidator.closed
Category : permanent

  { /* Worker prevalidator closed
       An operation on a prevalidator worker could not complete before it
       was shut down. */
    "kind": "permanent",
    "id": "worker.prevalidator.closed",
    "worker_id": string /* Network identifier (Base58Check-encoded) */ }

Worker validator.block closed

An operation on a validator.block worker could not complete before it was shut down.

Id : worker.validator.block.closed
Category : permanent

  { /* Worker validator.block closed
       An operation on a validator.block worker could not complete before
       it was shut down. */
    "kind": "permanent",
    "id": "worker.validator.block.closed",
    "worker_id": {  } }

Worker validator.chain closed

An operation on a validator.chain worker could not complete before it was shut down.

Id : worker.validator.chain.closed
Category : permanent

  { /* Worker validator.chain closed
       An operation on a validator.chain worker could not complete before
       it was shut down. */
    "kind": "permanent",
    "id": "worker.validator.chain.closed",
    "worker_id": string /* Network identifier (Base58Check-encoded) */ }

Worker validator.peer closed

An operation on a validator.peer worker could not complete before it was shut down.

Id : worker.validator.peer.closed
Category : permanent

  { /* Worker validator.peer closed
       An operation on a validator.peer worker could not complete before it
       was shut down. */
    "kind": "permanent",
    "id": "worker.validator.peer.closed",
    "worker_id":
      [ string
        /* Network identifier (Base58Check-encoded) */,
        string
        /* A Cryptobox public key ID (Base58Check-encoded) */ ] }

Michelson parsing/macros

Micheline parser error: annotation exceeds max length

While parsing a piece of Micheline source, an annotation exceeded the maximum length (255).

Id : micheline.parse_error.annotation_exceeds_max_length
Category : permanent

  { /* Micheline parser error: annotation exceeds max length
       While parsing a piece of Micheline source, an annotation exceeded
       the maximum length (255). */
    "kind": "permanent",
    "id": "micheline.parse_error.annotation_exceeds_max_length",
    "location":
      { "start":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] },
        "stop":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] } } }

Micheline parser error: empty_expression

Tried to interpret an empty piece or Micheline source as a single expression.

Id : micheline.parse_error.empty_expression
Category : permanent

  { /* Micheline parser error: empty_expression
       Tried to interpret an empty piece or Micheline source as a single
       expression. */
    "kind": "permanent",
    "id": "micheline.parse_error.empty_expression" }

Micheline parser error: extra token

While parsing a piece of Micheline source, an extra semi colon or parenthesis was encountered.

Id : micheline.parse_error.extra_token
Category : permanent

  { /* Micheline parser error: extra token
       While parsing a piece of Micheline source, an extra semi colon or
       parenthesis was encountered. */
    "kind": "permanent",
    "id": "micheline.parse_error.extra_token",
    "location":
      { "start":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] },
        "stop":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] } },
    "token":
      { "string": string }
      || { "int": string }
      || { "annot": string }
      || { "comment": string,
           "end_of_line"?: boolean }
      || { "punctuation": "(" | ";" | "}" | "{" | ")" } }

Micheline parser error: invalid UTF-8 sequence

While parsing a piece of Micheline source, a sequence of bytes that is not valid UTF-8 was encountered.

Id : micheline.parse_error.invalid_utf8_sequence
Category : permanent

  { /* Micheline parser error: invalid UTF-8 sequence
       While parsing a piece of Micheline source, a sequence of bytes that
       is not valid UTF-8 was encountered. */
    "kind": "permanent",
    "id": "micheline.parse_error.invalid_utf8_sequence",
    "point":
      { "line": integer ∈ [0, 2^16-1],
        "column": integer ∈ [0, 2^16-1],
        "point": integer ∈ [0, 2^16-1],
        "byte": integer ∈ [0, 2^16-1] },
    "sequence": string }

Micheline parser error: misaligned node

While parsing a piece of Micheline source, an expression was not aligned with its siblings of the same mother application or sequence.

Id : micheline.parse_error.misaligned_node
Category : permanent

  { /* Micheline parser error: misaligned node
       While parsing a piece of Micheline source, an expression was not
       aligned with its siblings of the same mother application or
       sequence. */
    "kind": "permanent",
    "id": "micheline.parse_error.misaligned_node",
    "expression":
      { "expression": $micheline.generic.expression,
        "locations":
          [ { "start":
                { "line": integer ∈ [0, 2^16-1],
                  "column": integer ∈ [0, 2^16-1],
                  "point": integer ∈ [0, 2^16-1],
                  "byte": integer ∈ [0, 2^16-1] },
              "stop":
                { "line": integer ∈ [0, 2^16-1],
                  "column": integer ∈ [0, 2^16-1],
                  "point": integer ∈ [0, 2^16-1],
                  "byte": integer ∈ [0, 2^16-1] } } ... ] } }
  $micheline.generic.expression:
    /* Micheline expression (generic variant) */
    { "int": string }
    || { "string": string }
    || [ $micheline.generic.expression ... ]
    || { "prim": string,
         "args": [ $micheline.generic.expression ... ],
         "annot"?: string }

Micheline parser error: missing break after number

While parsing a piece of Micheline source, a number was not visually separated from its follower token, leading to misreadability.

Id : micheline.parse_error.missing_break_after_number
Category : permanent

  { /* Micheline parser error: missing break after number
       While parsing a piece of Micheline source, a number was not visually
       separated from its follower token, leading to misreadability. */
    "kind": "permanent",
    "id": "micheline.parse_error.missing_break_after_number",
    "point":
      { "line": integer ∈ [0, 2^16-1],
        "column": integer ∈ [0, 2^16-1],
        "point": integer ∈ [0, 2^16-1],
        "byte": integer ∈ [0, 2^16-1] } }

Micheline parser error: unclosed token

While parsing a piece of Micheline source, a parenthesis or a brace was unclosed.

Id : micheline.parse_error.unclosed_token
Category : permanent

  { /* Micheline parser error: unclosed token
       While parsing a piece of Micheline source, a parenthesis or a brace
       was unclosed. */
    "kind": "permanent",
    "id": "micheline.parse_error.unclosed_token",
    "location":
      { "start":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] },
        "stop":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] } },
    "token":
      { "string": string }
      || { "int": string }
      || { "annot": string }
      || { "comment": string,
           "end_of_line"?: boolean }
      || { "punctuation": "(" | ";" | "}" | "{" | ")" } }

Micheline parser error: undefined escape sequence

While parsing a piece of Micheline source, an unexpected escape sequence was encountered in a string.

Id : micheline.parse_error.undefined_escape_sequence
Category : permanent

  { /* Micheline parser error: undefined escape sequence
       While parsing a piece of Micheline source, an unexpected escape
       sequence was encountered in a string. */
    "kind": "permanent",
    "id": "micheline.parse_error.undefined_escape_sequence",
    "point":
      { "line": integer ∈ [0, 2^16-1],
        "column": integer ∈ [0, 2^16-1],
        "point": integer ∈ [0, 2^16-1],
        "byte": integer ∈ [0, 2^16-1] },
    "sequence": string }

Micheline parser error: unexpected character

While parsing a piece of Micheline source, an unexpected character was encountered.

Id : micheline.parse_error.unexpected_character
Category : permanent

  { /* Micheline parser error: unexpected character
       While parsing a piece of Micheline source, an unexpected character
       was encountered. */
    "kind": "permanent",
    "id": "micheline.parse_error.unexpected_character",
    "point":
      { "line": integer ∈ [0, 2^16-1],
        "column": integer ∈ [0, 2^16-1],
        "point": integer ∈ [0, 2^16-1],
        "byte": integer ∈ [0, 2^16-1] },
    "character": string }

Micheline parser error: unexpected token

While parsing a piece of Micheline source, an unexpected token was encountered.

Id : micheline.parse_error.unexpected_token
Category : permanent

  { /* Micheline parser error: unexpected token
       While parsing a piece of Micheline source, an unexpected token was
       encountered. */
    "kind": "permanent",
    "id": "micheline.parse_error.unexpected_token",
    "location":
      { "start":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] },
        "stop":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] } },
    "token":
      { "string": string }
      || { "int": string }
      || { "annot": string }
      || { "comment": string,
           "end_of_line"?: boolean }
      || { "punctuation": "(" | ";" | "}" | "{" | ")" } }

Micheline parser error: unterminated comment

While parsing a piece of Micheline source, a commentX was not terminated.

Id : micheline.parse_error.unterminated_comment
Category : permanent

  { /* Micheline parser error: unterminated comment
       While parsing a piece of Micheline source, a commentX was not
       terminated. */
    "kind": "permanent",
    "id": "micheline.parse_error.unterminated_comment",
    "location":
      { "start":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] },
        "stop":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] } } }

Micheline parser error: unterminated integer

While parsing a piece of Micheline source, an integer was not terminated.

Id : micheline.parse_error.unterminated_integer
Category : permanent

  { /* Micheline parser error: unterminated integer
       While parsing a piece of Micheline source, an integer was not
       terminated. */
    "kind": "permanent",
    "id": "micheline.parse_error.unterminated_integer",
    "location":
      { "start":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] },
        "stop":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] } } }

Micheline parser error: unterminated string

While parsing a piece of Micheline source, a string was not terminated.

Id : micheline.parse_error.unterminated_string
Category : permanent

  { /* Micheline parser error: unterminated string
       While parsing a piece of Micheline source, a string was not
       terminated. */
    "kind": "permanent",
    "id": "micheline.parse_error.unterminated_string",
    "location":
      { "start":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] },
        "stop":
          { "line": integer ∈ [0, 2^16-1],
            "column": integer ∈ [0, 2^16-1],
            "point": integer ∈ [0, 2^16-1],
            "byte": integer ∈ [0, 2^16-1] } } }

Wrong number of arguments to macro

A wrong number of arguments was provided to a macro

Id : michelson.macros.bas_arity
Category : permanent

  { /* Wrong number of arguments to macro
       A wrong number of arguments was provided to a macro */
    "kind": "permanent",
    "id": "michelson.macros.bas_arity",
    "macro_name": string,
    "given_number_of_arguments": integer ∈ [0, 2^16-1],
    "expected_number_of_arguments": integer ∈ [0, 2^16-1] }

Macro expects a sequence

An macro expects a sequence, but a sequence was not provided

Id : michelson.macros.sequence_expected
Category : permanent

  { /* Macro expects a sequence
       An macro expects a sequence, but a sequence was not provided */
    "kind": "permanent",
    "id": "michelson.macros.sequence_expected",
    "macro_name": string }

Unexpected annotation

A macro had an annotation, but no annotation was permitted on this macro.

Id : michelson.macros.unexpected_annotation
Category : permanent

  { /* Unexpected annotation
       A macro had an annotation, but no annotation was permitted on this
       macro. */
    "kind": "permanent",
    "id": "michelson.macros.unexpected_annotation",
    "macro_name": string }

Client

<Untitled>

Id : rpc_client.request_failed
Category : permanent

  { /*
        */
    "kind": "permanent",
    "id": "rpc_client.request_failed",
    "meth": string,
    "uri": string,
    "error":
      { "kind": "empty_answer" }
      || { "kind": "connection_failed",
           "message": string }
      || { "kind": "bad_request",
           "message": string }
      || { "kind": "method_not_allowed",
           "allowed": [ string ... ] }
      || { "kind": "unsupported_media_type",
           "content_type"?: string }
      || { "kind": "not_acceptable",
           "proposed": string,
           "acceptable": string }
      || { "kind": "unexpected_status_code",
           "code": integer ∈ [0, 2^16-1],
           "content": string,
           "media_type"?: string }
      || { "kind": "unexpected_content_type",
           "received": string,
           "acceptable": [ string ... ],
           "body": string }
      || { "kind": "unexpected_content",
           "content": string,
           "media_type": string,
           "error": string }
      || { "kind": "ocaml_exception",
           "content": string } }

Miscellaneous

Bad -endorsement-delay arg

invalid priority in -endorsement-delay

Id : badEndorsementDelayArg
Category : permanent

  { /* Bad -endorsement-delay arg
       invalid priority in -endorsement-delay */
    "kind": "permanent",
    "id": "badEndorsementDelayArg",
    "parameter": string }

Bad -max-priority arg

invalid priority in -max-priority

Id : badMaxPriorityArg
Category : permanent

  { /* Bad -max-priority arg
       invalid priority in -max-priority */
    "kind": "permanent",
    "id": "badMaxPriorityArg",
    "parameter": string }

Bad Tez Arg

Invalid ꜩ notation in parameter.

Id : badTezArg
Category : permanent

  { /* Bad Tez Arg
       Invalid ꜩ notation in parameter. */
    "kind": "permanent",
    "id": "badTezArg",
    "parameter": string,
    "literal": string }

Unregistered key scheme

A key has been provided with an unregistered scheme (no corresponding plugin)

Id : cli.unregistered_key_scheme
Category : permanent

  { /* Unregistered key scheme
       A key has been provided with an unregistered scheme (no
       corresponding plugin) */
    "kind": "permanent",
    "id": "cli.unregistered_key_scheme",
    "value": string }

Generic error

Unclassified error

Id : failure
Category : temporary

  { /* Generic error
       Unclassified error */
    "kind": "temporary",
    "id": "failure",
    "msg": string }

Unix error

An unhandled unix exception

Id : unix_error
Category : temporary

  { /* Unix error
       An unhandled unix exception */
    "kind": "temporary",
    "id": "unix_error",
    "msg": string }

Timeout

Timeout

Id : utils.Timeout
Category : temporary

  { /* Timeout
       Timeout */
    "kind": "temporary",
    "id": "utils.Timeout",
    ... }