movement-models/models/silver/core/silver_core.yml
2025-05-30 10:19:02 -06:00

391 lines
10 KiB
YAML

version: 2
models:
- name: silver__blocks
config:
contract:
enforced: true
tests:
- dbt_utils.sequential_values:
column_name: block_number
interval: 1
config:
severity: error
error_if: ">100"
tags: ['test_recency']
columns:
- name: block_number
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- unique:
tags: ['test_quality']
- name: block_hash
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
# - unique:
# tags: ['test_quality']
- name: block_timestamp
data_type: TIMESTAMP_NTZ
tests:
- not_null:
tags: ['test_quality']
- name: tx_count_from_versions
data_type: NUMBER
tests:
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: block_timestamp_num
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- name: first_version
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- name: last_version
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- name: blocks_id
data_type: VARCHAR
- name: inserted_timestamp
data_type: TIMESTAMP_NTZ
- name: modified_timestamp
data_type: TIMESTAMP_NTZ
- name: _invocation_id
data_type: VARCHAR
- name: silver__changes
config:
contract:
enforced: true
columns:
- name: block_number
data_type: NUMBER
- name: block_timestamp
data_type: TIMESTAMP_NTZ
- name: tx_hash
data_type: VARCHAR
- name: version
data_type: NUMBER
- name: success
data_type: BOOLEAN
- name: tx_type
data_type: VARCHAR
- name: payload_function
data_type: VARCHAR
- name: change_index
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: change_data
data_type: VARIANT
tests:
- not_null:
tags: ['test_quality']
- name: change_type
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: address
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: handle
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: inner_change_type
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: change_address
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: change_module
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: change_resource
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: key
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: value
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: state_key_hash
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: changes_id
data_type: VARCHAR
- name: inserted_timestamp
data_type: TIMESTAMP_NTZ
- name: modified_timestamp
data_type: TIMESTAMP_NTZ
- name: _invocation_id
data_type: VARCHAR
- name: silver__events
config:
contract:
enforced: true
columns:
- name: block_number
data_type: NUMBER
- name: block_timestamp
data_type: TIMESTAMP_NTZ
- name: tx_hash
data_type: VARCHAR
- name: version
data_type: NUMBER
- name: success
data_type: BOOLEAN
- name: tx_type
data_type: VARCHAR
- name: payload_function
data_type: VARCHAR
- name: event_index
data_type: NUMBER
- name: event_type
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: event_address
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: event_module
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: event_resource
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: event_data
data_type: VARIANT
tests:
- not_null:
tags: ['test_quality']
- name: account_address
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: creation_number
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: sequence_number
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: events_id
data_type: VARCHAR
- name: inserted_timestamp
data_type: TIMESTAMP_NTZ
- name: modified_timestamp
data_type: TIMESTAMP_NTZ
- name: _invocation_id
data_type: VARCHAR
- name: silver__transactions
config:
contract:
enforced: true
columns:
- name: block_number
data_type: NUMBER
- name: block_timestamp
data_type: TIMESTAMP_NTZ
tests:
- not_null:
tags: ['test_quality']
- name: tx_hash
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- unique:
tags: ['test_quality']
- name: version
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: tx_type
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: success
data_type: BOOLEAN
- name: sender
data_type: VARCHAR
- name: signature
data_type: VARCHAR
- name: payload
data_type: VARIANT
- name: payload_function
data_type: VARCHAR
- name: changes
data_type: VARIANT
- name: events
data_type: VARIANT
- name: gas_unit_price
data_type: NUMBER
tests:
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: gas_used
data_type: NUMBER
tests:
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: max_gas_amount
data_type: NUMBER
tests:
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: expiration_timestamp_secs
data_type: NUMBER
tests:
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: vm_status
data_type: VARCHAR
- name: state_change_hash
data_type: VARCHAR
- name: accumulator_root_hash
data_type: VARCHAR
- name: event_root_hash
data_type: VARCHAR
- name: state_checkpoint_hash
data_type: VARCHAR
- name: failed_proposer_indices
data_type: VARCHAR
- name: failed_proposer_indices
data_type: VARIANT
- name: id
data_type: VARCHAR
- name: previous_block_votes_bitvec
data_type: VARIANT
- name: proposer
data_type: VARCHAR
- name: ROUND
data_type: NUMBER
- name: data
data_type: VARIANT
- name: transactions_id
data_type: VARCHAR
- name: inserted_timestamp
data_type: TIMESTAMP_NTZ
- name: modified_timestamp
data_type: TIMESTAMP_NTZ
- name: _invocation_id
data_type: VARCHAR
- name: silver__transfers
config:
contract:
enforced: true
columns:
- name: block_number
data_type: NUMBER
- name: block_timestamp
data_type: TIMESTAMP_NTZ
- name: tx_hash
data_type: VARCHAR
- name: version
data_type: NUMBER
- name: success
data_type: BOOLEAN
- name: event_index
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- name: creation_number
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- name: transfer_event
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: account_address
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: amount
data_type: NUMBER
tests:
- not_null:
tags: ['test_quality']
- dbt_utils.expression_is_true:
expression: ">= 0"
tags: ['test_quality']
- name: token_address
data_type: VARCHAR
tests:
- not_null:
tags: ['test_quality']
- name: fact_transfers_id
data_type: VARCHAR
- name: inserted_timestamp
data_type: TIMESTAMP_NTZ
- name: modified_timestamp
data_type: TIMESTAMP_NTZ
- name: _invocation_id
data_type: VARCHAR