nimbus-eth2/beacon_chain/rpc/rest_constants.nim

272 lines
10 KiB
Nim
Raw Normal View History

# beacon_chain
# Copyright (c) 2021-2024 Status Research & Development GmbH
# Licensed and distributed under either of
# * MIT license (license terms in the root directory or at https://opensource.org/licenses/MIT).
# * Apache v2 license (license terms in the root directory or at https://www.apache.org/licenses/LICENSE-2.0).
# at your option. This file may not be copied, modified, or distributed except according to those terms.
{.push raises: [].}
import
../spec/beacon_time
export beacon_time
2021-11-30 01:20:21 +00:00
const
MaxEpoch* = epoch(FAR_FUTURE_SLOT)
2021-11-30 01:20:21 +00:00
BlockValidationError* =
"The block failed validation, but was successfully broadcast anyway. It " &
"was not integrated into the beacon node's database."
BlockValidationSuccess* =
"The block was validated successfully and has been broadcast"
BeaconNodeInSyncError* =
"Beacon node is currently syncing and not serving request on that endpoint"
BlockNotFoundError* =
"Block header/data has not been found"
BlockParentUnknownError* =
"Block parent unknown"
BlockOlderThanParentError* =
"Block older than parent block"
BlockInvalidError* =
"Invalid block"
2021-11-30 01:20:21 +00:00
EmptyRequestBodyError* =
"Empty request body"
InvalidRequestBodyError* =
"Invalid request body"
2021-11-30 01:20:21 +00:00
InvalidBlockObjectError* =
"Unable to decode block object(s)"
InvalidAttestationObjectError* =
"Unable to decode attestation object(s)"
AttestationValidationError* =
"Some errors happened while validating attestation(s)"
AttestationValidationSuccess* =
"Attestation object(s) was broadcast"
2021-11-30 01:20:21 +00:00
InvalidAttesterSlashingObjectError* =
"Unable to decode attester slashing object(s)"
AttesterSlashingValidationError* =
"Invalid attester slashing, it will never pass validation so it's rejected"
AttesterSlashingValidationSuccess* =
"Attester slashing object was broadcast"
2021-11-30 01:20:21 +00:00
InvalidProposerSlashingObjectError* =
"Unable to decode proposer slashing object(s)"
ProposerSlashingValidationError* =
"Invalid proposer slashing, it will never pass validation so it's rejected"
ProposerSlashingValidationSuccess* =
"Proposer slashing object was broadcast"
2021-11-30 01:20:21 +00:00
InvalidVoluntaryExitObjectError* =
"Unable to decode voluntary exit object(s)"
InvalidFeeRecipientRequestError* =
"Bad request. Request was malformed and could not be processed"
InvalidGasLimitRequestError* =
"Bad request. Request was malformed and could not be processed"
InvalidGraffitiRequestError* =
"Bad request. Request was malformed and could not be processed"
2021-11-30 01:20:21 +00:00
VoluntaryExitValidationError* =
"Invalid voluntary exit, it will never pass validation so it's rejected"
VoluntaryExitValidationSuccess* =
"Voluntary exit object(s) was broadcast"
2021-11-30 01:20:21 +00:00
InvalidAggregateAndProofObjectError* =
"Unable to decode aggregate and proof object(s)"
AggregateAndProofValidationError* =
"Invalid aggregate and proof, it will never pass validation so it's " &
"rejected"
AggregateAndProofValidationSuccess* =
"Aggregate and proof object(s) was broadcast"
2021-11-30 01:20:21 +00:00
BeaconCommitteeSubscriptionSuccess* =
"Beacon node processed committee subscription request(s)"
SyncCommitteeSubscriptionSuccess* =
"Beacon node processed sync committee subscription request(s)"
InvalidParentRootValueError* =
"Invalid parent root value"
MissingSlotValueError* =
"Missing `slot` value"
InvalidSlotValueError* =
"Invalid slot value"
MissingCommitteeIndexValueError* =
"Missing `committee_index` value"
InvalidCommitteeIndexValueError* =
"Invalid committee index value"
MissingAttestationDataRootValueError* =
"Missing `attestation_data_root` value"
InvalidAttestationDataRootValueError* =
"Invalid attestation data root value"
UnableToGetAggregatedAttestationError* =
"Unable to retrieve an aggregated attestation"
MissingRandaoRevealValue* =
"Missing `randao_reveal` value"
InvalidRandaoRevealValue* =
"Invalid randao reveal value"
InvalidSkipRandaoVerificationValue* =
"Invalid skip_randao_verification value"
InvalidGraffitiBytesValue* =
2021-11-30 01:20:21 +00:00
"Invalid graffiti bytes value"
InvalidEpochValueError* =
"Invalid epoch value"
EpochFromFutureError* =
"Epoch value is far from the future"
InvalidStateIdValueError* =
"Invalid state identifier value"
InvalidBlockIdValueError* =
"Invalid block identifier value"
InvalidValidatorIdValueError* =
"Invalid validator identifier value(s)"
NonUniqueValidatorIdError* =
"Non-unique validator identifier value(s)"
2021-11-30 01:20:21 +00:00
MaximumNumberOfValidatorIdsError* =
"Maximum number of validator identifier values exceeded"
InvalidValidatorStatusValueError* =
"Invalid validator's status value error"
InvalidValidatorIndexValueError* =
"Invalid validator's index value(s)"
EmptyValidatorIndexArrayError* =
"Empty validator's index array"
DuplicateValidatorIndexArrayError* =
"Duplicate validator index found in array"
2021-11-30 01:20:21 +00:00
InvalidSubscriptionRequestValueError* =
"Invalid subscription request object(s)"
ValidatorNotFoundError* =
"Could not find validator"
ValidatorIndexMissingError* =
"Validator missing index value"
2021-11-30 01:20:21 +00:00
ValidatorStatusNotFoundError* =
"Could not obtain validator's status"
TooHighValidatorIndexValueError* =
"Validator index exceeds maximum number of validators allowed"
UnsupportedValidatorIndexValueError* =
"Validator index exceeds maximum supported number of validators"
StateNotFoundError* =
"Could not get requested state"
SlotNotInNextWallSlotEpochError* =
"Requested slot not in next wall-slot epoch"
SlotFromThePastError* =
"Requested slot from the past"
SlotFromTheIncorrectForkError* =
"Requested slot is from incorrect fork"
EpochFromTheIncorrectForkError* =
"Requested epoch is from incorrect fork"
ProposerNotFoundError* =
"Could not find proposer for the head and slot"
EpochOverflowValueError* =
"Requesting epoch for which slot would overflow"
InvalidPeerStateValueError* =
"Invalid peer's state value(s) error"
InvalidPeerDirectionValueError* =
"Invalid peer's direction value(s) error"
InvalidPeerIdValueError* =
"Invalid peer's id value(s) error"
PeerNotFoundError* =
"Peer not found"
InvalidLogLevelValueError* =
"Invalid log level value error"
ContentNotAcceptableError* =
"Accepted media type not supported"
2021-11-30 01:20:21 +00:00
InvalidAcceptError* =
"Incorrect accept response type"
MissingSubCommitteeIndexValueError* =
"Missing `subcommittee_index` value"
InvalidSubCommitteeIndexValueError* =
"Invalid `subcommittee_index` value"
MissingBeaconBlockRootValueError* =
"Missing `beacon_block_root` value"
InvalidBeaconBlockRootValueError* =
"Invalid `beacon_block_root` value"
InvalidSyncCommitteeSignatureMessageError* =
"Unable to decode sync committee message(s)"
InvalidSyncCommitteeSubscriptionRequestError* =
"Unable to decode sync committee subscription request(s)"
InvalidContributionAndProofMessageError* =
"Unable to decode contribute and proof message(s)"
InvalidPrepareBeaconProposerError* =
"Unable to decode prepare beacon proposer request"
2021-11-30 01:20:21 +00:00
SyncCommitteeMessageValidationError* =
"Some errors happened while validating sync committee message(s)"
SyncCommitteeMessageValidationSuccess* =
"Sync committee message(s) was broadcast"
2021-11-30 01:20:21 +00:00
ContributionAndProofValidationError* =
"Some errors happened while validating contribution and proof(s)"
ContributionAndProofValidationSuccess* =
"Contribution and proof(s) was broadcast"
2021-11-30 01:20:21 +00:00
ProduceContributionError* =
"Unable to produce contribution using the passed parameters"
InternalServerError* =
"Internal server error"
NoFinalizedSnapshotAvailableError* =
"No Finalized Snapshot Available"
2021-11-30 01:20:21 +00:00
NoImplementationError* =
"Not implemented yet"
InvalidKeystoreObjects* =
"Invalid keystore objects found"
InvalidValidatorPublicKey* =
"Invalid validator's public key(s) found"
InvalidAuthorizationError* =
"Invalid Authorization Header"
PrunedStateError* =
"Trying to access a pruned historical state"
InvalidBlockRootValueError* =
"Invalid block root value"
InvalidSyncPeriodError* =
"Invalid sync committee period requested"
InvalidCountError* =
"Invalid count requested"
MissingStartPeriodValueError* =
"Missing `start_period` value"
MissingCountValueError* =
"Missing `count` value"
LCBootstrapUnavailable* =
"LC bootstrap unavailable"
LCFinUpdateUnavailable* =
"LC finality update unavailable"
LCOptUpdateUnavailable* =
"LC optimistic update unavailable"
DeprecatedRemovalBeaconBlocksDebugStateV1* =
"v1/beacon/blocks/{block_id} and v1/debug/beacon/states/{state_id} " &
"endpoints were deprecated and replaced by v2: " &
"https://github.com/ethereum/beacon-APIs/pull/218"
DeprecatedRemovalValidatorBlocksV1* =
"v1/validator/blocks/{slot} endpoint was deprecated and replaced by v2: " &
"https://github.com/ethereum/beacon-APIs/pull/220"
DeprecatedRemovalGetDebugChainHeadsV1* =
"v1/debug/beacon/heads endpoint was deprecated and replaced by v2: " &
"https://github.com/ethereum/beacon-APIs/pull/319"
BlockIncorrectFork* =
"Block has incorrect fork"
ValidatorNotActive* =
"Validator inactive"
BlobsOutOfRange* =
"Requested slot is outside of blobs window"
InvalidBlsToExecutionChangeObjectError* =
"Unable to decode BLS to execution change object(s)"
BlsToExecutionChangeValidationError* =
"Invalid BLS to execution change; it won't validate, so it's rejected"
BlsToExecutionChangeValidationSuccess* =
"BLS to execution change was broadcast"
AggregationSelectionNotImplemented* =
"Attestation and sync committee aggreggation selection are not implemented"
MissingMerkleProofError* =
2023-08-07 10:06:47 +00:00
"Required Merkle proof is missing"
InvalidMerkleProofError* =
2023-08-07 10:06:47 +00:00
"The given Merkle proof is invalid"
InvalidMerkleProofIndexError* =
2023-08-07 10:06:47 +00:00
"The given Merkle proof index is invalid"
add EIP-7044 support to keymanager API (#5959) * add EIP-7044 support to keymanager API When trying to sign `VoluntaryExit` via keymanager API, the logic is not yet aware of EIP-7044 (part of Deneb). This patch adds missing EIP-7044 support to the keymanager API as well. As part of this, the VC needs to become aware about: - `CAPELLA_FORK_VERSION`: To correctly form the EIP-7044 signing domain. The fork schedule does not indicate which of the results, if any, corresponds to Capella. - `CAPELLA_FORK_EPOCH`: To detect whether Capella was scheduled. If a BN does not have it in its config while other BNs have it, this leads to a log if Capella has not activated yet, or marks the BN as incompatible if Capella already activated. - `DENEB_FORK_EPOCH`: To check whether EIP-7044 logic should be used. Related PRs: - #5120 added support for processing EIP-7044 `VoluntaryExit` messages as part of the state transition functions (tested by EF spec tests). - #5953 synced the support from #5120 to gossip validation. - #5954 added support to the `nimbus_beacon_node deposits exit` command. - #5956 contains an alternative generic version of `VCForkConfig`. * address reviewer feedback: letter case, module location, double lookup --------- Co-authored-by: cheatfate <eugene.kabanov@status.im> * Update beacon_chain/rpc/rest_constants.nim * move `VCRuntimeConfig` back to `rest_types` --------- Co-authored-by: cheatfate <eugene.kabanov@status.im> * fix `getForkVersion` helper --------- Co-authored-by: cheatfate <eugene.kabanov@status.im>
2024-02-26 08:48:07 +00:00
FailedToObtainForkVersionError* =
"Failed to obtain fork version"
FailedToObtainConsensusForkError* =
"Failed to obtain consensus fork information"
FailedToObtainForkError* =
"Failed to obtain fork information"
InvalidTimestampValue* =
"Invalid or missing timestamp value"
InvalidSidecarIndexValueError* =
"Invalid blob index"
InvalidBroadcastValidationType* =
"Invalid broadcast_validation type value"
PathNotFoundError* =
"Path not found"
FileReadError* =
"Error reading file"
ParentBlockMissingStateError* =
"Unable to load state for parent block, database corrupt?"
RewardOverflowError* =
"Reward value overflow"