Invariants / CN-OPCERT-01
CN-OPCERT-01
CN derived enforcedThe opcert envelope parser accepts a real cardano-cli node.opcert text envelope (closed type check NodeOperationalCertificate + CBOR array(2) shape locked by N-R-A A1 OQ4 fixtures against cardano-cli 11.0.0.0 / cardano-node 11.0.1). Element 0 is an array(4) of [hot_vkey(bytes(32)), sequence_number(uint), kes_period(uint), sigma(bytes(64))] mapping to the canonical OperationalCert. Element 1 is bytes(32) cold_vk. Any shape mismatch (wrong type field, malformed cborHex, wrong outer/inner arity, wrong field types or lengths) fail-closes with a structured OpCertParseError variant. No String payloads in load-bearing error variants.
- Source
docs/planning/phase4-n-r-invariants.md §1 (I6); §2 (N6); §3 (D4); N-R-A A1 OQ4 fixtures
- Cluster
- PHASE4-N-R-C
- Introduced in
- PHASE4-N-R-C
Enforcement trace
Tests 5
- accepted_envelope_decodes_to_expected_opcert
- malformed_type_envelope_emits_wrong_envelope_type
- malformed_cbor_hex_envelope_emits_malformed_cbor_hex
- wrong_arity_envelope_emits_malformed_cbor
- parser_is_byte_identical_across_two_runs