102 lines
12 KiB
Plaintext
102 lines
12 KiB
Plaintext
# Epiphany decode conformance vectors — format version 1
|
|
#
|
|
# Generated. Regenerate with:
|
|
# cargo run -q -p epiphany-testkit --example generate_vectors
|
|
# `epiphany_testkit::vectors::the_committed_corpus_matches_the_generator` fails
|
|
# on drift, so a wire-format change must land here deliberately.
|
|
#
|
|
# One vector per line, space-separated:
|
|
#
|
|
# <surface> <verdict> <class> <name> <hex>
|
|
#
|
|
# NORMATIVE: Binary Format companion, `req:binfmt:decode-vectors`
|
|
# (section: The Decode Vector Corpus). A conforming decoder MUST accept every `accept`
|
|
# vector for a surface it implements and MUST reject every `reject` vector, and
|
|
# a value decoded from an `accept` vector MUST re-encode to exactly its bytes.
|
|
#
|
|
# Accepting a `reject` vector and then normalizing it IS accepting it, and does
|
|
# not satisfy the requirement. Canonical decode is injective: distinct byte
|
|
# strings denote distinct values, which is what content-addressing rests on.
|
|
#
|
|
# `verdict` and the bytes are the only normative columns.
|
|
#
|
|
# `class` names why a `reject` vector is rejected. It is informative only —
|
|
# implementations need not agree on error taxonomy. `-` where not applicable.
|
|
#
|
|
# `<hex>` is lowercase, no separators; `-` denotes the empty byte string.
|
|
|
|
# ops.materialized_state
|
|
ops.materialized_state accept - empty_state 0000000000000000000000000000000000000000000000000000000000000000
|
|
ops.materialized_state accept - two_objects 00000000000000000000000002000000000000000000000000010000000000000001000000000000000000000100000000000000020000000000000000000000000000000000
|
|
ops.materialized_state reject non-canonical-map-order objects_out_of_order 00000000000000000000000002000000000000000000000000010000000000000002000000000000000000000100000000000000010000000000000000000000000000000000
|
|
ops.materialized_state accept - two_anomalies 00000000000000000200000021000000ffffffffffffffff68eefa3a8f8dfa49010000000000000001000000000000000121000000ffffffffffffffffbf0e1228971141c501000000000000000100000000000000020000000000000000000000000000000000000000
|
|
ops.materialized_state reject non-canonical-vec-order anomalies_out_of_order 00000000000000000200000021000000ffffffffffffffffbf0e1228971141c5010000000000000001000000000000000221000000ffffffffffffffff68eefa3a8f8dfa4901000000000000000100000000000000010000000000000000000000000000000000000000
|
|
ops.materialized_state accept - two_pending 0000000000000000000000000000000000000000000000000000000002000000000000000000000100000000000000010000000000000000010000000000000001000000000000000100000000000000020000000000000000010000000000000001
|
|
ops.materialized_state reject non-canonical-vec-order pending_out_of_order 0000000000000000000000000000000000000000000000000000000002000000000000000000000100000000000000020000000000000000010000000000000001000000000000000100000000000000010000000000000000010000000000000001
|
|
ops.materialized_state reject trailing-bytes empty_state_trailing 000000000000000000000000000000000000000000000000000000000000000000
|
|
ops.materialized_state reject truncated empty_state_truncated 00000000000000000000000000000000000000000000000000000000000000
|
|
ops.materialized_state reject count-exceeds-remaining effects_count_u32_max ffffffff00000000000000000000000000000000000000000000000000000000
|
|
|
|
# ops.operation_kind_tag
|
|
ops.operation_kind_tag accept - tag_00 00
|
|
ops.operation_kind_tag accept - tag_01 01
|
|
ops.operation_kind_tag accept - tag_02 02
|
|
ops.operation_kind_tag accept - tag_03 03
|
|
ops.operation_kind_tag accept - tag_04 04
|
|
ops.operation_kind_tag accept - tag_05 05
|
|
ops.operation_kind_tag accept - tag_06 06
|
|
ops.operation_kind_tag accept - tag_07 07
|
|
ops.operation_kind_tag accept - tag_08 08
|
|
ops.operation_kind_tag accept - tag_09 09
|
|
ops.operation_kind_tag accept - tag_10 0a
|
|
ops.operation_kind_tag accept - tag_11 0b
|
|
ops.operation_kind_tag accept - tag_12 0c
|
|
ops.operation_kind_tag accept - tag_13 0d
|
|
ops.operation_kind_tag accept - tag_14 0e
|
|
ops.operation_kind_tag accept - tag_15 0f
|
|
ops.operation_kind_tag accept - tag_17 11
|
|
ops.operation_kind_tag accept - tag_18 12
|
|
ops.operation_kind_tag accept - tag_19 13
|
|
ops.operation_kind_tag accept - tag_20 14
|
|
ops.operation_kind_tag accept - tag_21 15
|
|
ops.operation_kind_tag accept - tag_22 16
|
|
ops.operation_kind_tag accept - tag_23 17
|
|
ops.operation_kind_tag accept - tag_24 18
|
|
ops.operation_kind_tag accept - tag_25 19
|
|
ops.operation_kind_tag accept - tag_26 1a
|
|
ops.operation_kind_tag accept - tag_27 1b
|
|
ops.operation_kind_tag accept - tag_28 1c
|
|
ops.operation_kind_tag accept - tag_29 1d
|
|
ops.operation_kind_tag accept - tag_30 1e
|
|
ops.operation_kind_tag accept - registered 1000000000000000000123456789abcdef
|
|
ops.operation_kind_tag reject unknown-discriminant tag_31_one_past_the_vocabulary 1f
|
|
ops.operation_kind_tag reject unknown-discriminant tag_200 c8
|
|
ops.operation_kind_tag reject truncated tag_empty -
|
|
ops.operation_kind_tag reject trailing-bytes insert_event_trailing 0000
|
|
ops.operation_kind_tag reject truncated registered_one_byte_short 10000000000000000000000000000000
|
|
|
|
# bundle.manifest
|
|
bundle.manifest accept - empty_manifest 6f9e7d11689ab113c4a1f05faf60fe60050505050505050505050505050505050000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000001000000000000000000000400000000010000000001000000000000
|
|
bundle.manifest accept - one_operation_root ae38d9cd408df9b59917c43a82c9d1880505050505050505050505050505050500000000000000000001000000111111111111111111111111111111111111111111111111111111111111111100000001004002000000000000400000000000000040000000000000000000111111111111111111111111111111111111111111111111111111111111111100000000000000000000000000000100000000000000000000000000000000000000000000000000000001000000000000000000000400000000010000000001000000000000
|
|
bundle.manifest reject manifest-id-mismatch one_root_body_edited ae38d9cd408df9b59917c43a82c9d18805050505050505050505050505050505000000000000000000010000001111111111111111111111111111111111111111111111111111111111111111000000010040020000000000004000000000000000400000000000000000001111111111111111111111111111111111111111111111111111111111111111000000000000000000000000000001000000000000000000000000000000000000000000000000000000010000000000000000000004000000000100000000010000000000ff
|
|
bundle.manifest accept - two_operation_roots 423da9a59202adc10cdd0985146bb1d805050505050505050505050505050505000000000000000000020000001111111111111111111111111111111111111111111111111111111111111111000000010040020000000000004000000000000000400000000000000000001111111111111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222200000001000004000000000000400000000000000040000000000000000000222222222222222222222222222222222222222222222222222222222222222200000000000000000000000000000100000000000000000000000000000000000000000000000000000001000000000000000000000400000000010000000001000000000000
|
|
bundle.manifest reject non-canonical-vec-order two_roots_out_of_order_valid_id c643c490d7705661b435a5e3efe0c5fa05050505050505050505050505050505000000000000000000020000002222222222222222222222222222222222222222222222222222222222222222000000010000040000000000004000000000000000400000000000000000002222222222222222222222222222222222222222222222222222222222222222111111111111111111111111111111111111111111111111111111111111111100000001004002000000000000400000000000000040000000000000000000111111111111111111111111111111111111111111111111111111111111111100000000000000000000000000000100000000000000000000000000000000000000000000000000000001000000000000000000000400000000010000000001000000000000
|
|
bundle.manifest reject trailing-bytes one_root_trailing ae38d9cd408df9b59917c43a82c9d188050505050505050505050505050505050000000000000000000100000011111111111111111111111111111111111111111111111111111111111111110000000100400200000000000040000000000000004000000000000000000011111111111111111111111111111111111111111111111111111111111111110000000000000000000000000000010000000000000000000000000000000000000000000000000000000100000000000000000000040000000001000000000100000000000000
|
|
|
|
# bundle.operation_index
|
|
bundle.operation_index accept - empty_index 0000000000000000
|
|
bundle.operation_index accept - one_block_one_entry 01000000111111111111111111111111111111111111111111111111111111111111111100000001004002000000000000400000000000000040000000000000000000111111111111111111111111111111111111111111111111111111111111111101000000020202020202020202020202020202020000000008000000
|
|
bundle.operation_index accept - two_blocks 020000001111111111111111111111111111111111111111111111111111111111111111000000010040020000000000004000000000000000400000000000000000001111111111111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222200000001000004000000000000400000000000000040000000000000000000222222222222222222222222222222222222222222222222222222222222222203000000010101010101010101010101010101010000000008000000020202020202020202020202020202020100000008000000030303030303030303030303030303030000000028000000
|
|
bundle.operation_index reject lenient-sub-codec compression_none_non_zero_parameter 010000001111111111111111111111111111111111111111111111111111111111111111000000010040020000000000004000000000000000400000000000000000ff111111111111111111111111111111111111111111111111111111111111111101000000020202020202020202020202020202020000000008000000
|
|
bundle.operation_index reject non-canonical-vec-order blocks_out_of_order 020000002222222222222222222222222222222222222222222222222222222222222222000000010000040000000000004000000000000000400000000000000000002222222222222222222222222222222222222222222222222222222222222222111111111111111111111111111111111111111111111111111111111111111100000001004002000000000000400000000000000040000000000000000000111111111111111111111111111111111111111111111111111111111111111103000000010101010101010101010101010101010000000008000000020202020202020202020202020202020100000008000000030303030303030303030303030303030000000028000000
|
|
bundle.operation_index reject non-canonical-vec-order entries_out_of_order 020000001111111111111111111111111111111111111111111111111111111111111111000000010040020000000000004000000000000000400000000000000000001111111111111111111111111111111111111111111111111111111111111111222222222222222222222222222222222222222222222222222222222222222200000001000004000000000000400000000000000040000000000000000000222222222222222222222222222222222222222222222222222222222222222203000000020202020202020202020202020202020100000008000000010101010101010101010101010101010000000008000000030303030303030303030303030303030000000028000000
|
|
bundle.operation_index reject block-ordinal-out-of-range entry_names_missing_block 01000000111111111111111111111111111111111111111111111111111111111111111100000001004002000000000000400000000000000040000000000000000000111111111111111111111111111111111111111111111111111111111111111101000000020202020202020202020202020202020700000008000000
|
|
bundle.operation_index reject wrong-chunk-kind block_is_not_an_envelope_block 01000000111111111111111111111111111111111111111111111111111111111111111102000001004002000000000000400000000000000040000000000000000000111111111111111111111111111111111111111111111111111111111111111101000000020202020202020202020202020202020000000008000000
|
|
bundle.operation_index reject trailing-bytes empty_index_trailing 000000000000000000
|
|
|
|
# bundle.block
|
|
bundle.block accept - two_envelopes 0200000008000000aaaaaaaaaaaaaaaa0d000000bbbbbbbbbbbbbbbbbbbbbbbbbb
|
|
bundle.block reject trailing-bytes two_envelopes_trailing 0200000008000000aaaaaaaaaaaaaaaa0d000000bbbbbbbbbbbbbbbbbbbbbbbbbb00
|
|
bundle.block reject truncated two_envelopes_truncated 0200000008000000aaaaaaaaaaaaaaaa0d000000bbbbbbbbbbbbbbbbbbbbbbbb
|
|
bundle.block reject count-exceeds-remaining envelope_count_u32_max ffffffff08000000aaaaaaaaaaaaaaaa0d000000bbbbbbbbbbbbbbbbbbbbbbbbbb
|