Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 1 addition & 5 deletions contracts/sysio.msgch/include/sysio.msgch/sysio.msgch.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -161,9 +161,6 @@ namespace sysio {
uint64_t outpost_id;
uint32_t epoch_index;
checksum256 envelope_hash;
checksum256 merkle_root;
checksum256 start_message_id;
checksum256 end_message_id;
opp::types::EnvelopeStatus status;
std::vector<char> raw_envelope;

Expand All @@ -173,8 +170,7 @@ namespace sysio {
}

SYSLIB_SERIALIZE(outbound_envelope,
(id)(outpost_id)(epoch_index)(envelope_hash)(merkle_root)
(start_message_id)(end_message_id)(status)(raw_envelope))
(id)(outpost_id)(epoch_index)(envelope_hash)(status)(raw_envelope))
};

using outenvelopes_t = sysio::kv::table<"outenvelopes"_n, id_key, outbound_envelope,
Expand Down
12 changes: 0 additions & 12 deletions contracts/sysio.msgch/sysio.msgch.abi
Original file line number Diff line number Diff line change
Expand Up @@ -270,18 +270,6 @@
"name": "envelope_hash",
"type": "checksum256"
},
{
"name": "merkle_root",
"type": "checksum256"
},
{
"name": "start_message_id",
"type": "checksum256"
},
{
"name": "end_message_id",
"type": "checksum256"
},
{
"name": "status",
"type": "EnvelopeStatus"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -203,20 +203,19 @@ DataStream& operator>>(DataStream& ds, Message& t) {
return ds >> t.header >> t.payload;
}

// Envelope: all fields (signatures field removed per protocol spec)
// Envelope: current inline-consensus fields. Legacy merkle/range metadata is
// decode-compatible at the protobuf layer but ignored by CDT table storage.
template <typename DataStream>
DataStream& operator<<(DataStream& ds, const Envelope& t) {
return ds << t.envelope_hash << t.endpoints << t.epoch_timestamp
<< t.epoch_index << t.epoch_envelope_index << t.merkle
<< t.previous_envelope_hash << t.start_message_id
<< t.end_message_id;
<< t.epoch_index << t.epoch_envelope_index
<< t.previous_envelope_hash << t.messages;
}
template <typename DataStream>
DataStream& operator>>(DataStream& ds, Envelope& t) {
return ds >> t.envelope_hash >> t.endpoints >> t.epoch_timestamp
>> t.epoch_index >> t.epoch_envelope_index >> t.merkle
>> t.previous_envelope_hash >> t.start_message_id
>> t.end_message_id;
>> t.epoch_index >> t.epoch_envelope_index
>> t.previous_envelope_hash >> t.messages;
}

} // namespace sysio::opp
Expand Down
7 changes: 6 additions & 1 deletion libraries/opp/proto/sysio/opp/opp.proto
Original file line number Diff line number Diff line change
Expand Up @@ -62,18 +62,23 @@ message Message {
// Epoch envelope
// ---------------------------------------------------------------------------

// Envelope that spans a range of messages within an epoch.
// Envelope for an epoch. `messages` are carried inline and are consensus-covered
// by the accepted serialized envelope digest.
message Envelope {
bytes envelope_hash = 1; // 32 bytes
Endpoints endpoints = 2;
uint64 epoch_timestamp = 5;
uint32 epoch_index = 6;
uint32 epoch_envelope_index = 7;

// Deprecated legacy paged-delivery metadata. Inline envelope receivers must
// ignore this for consensus acceptance.
bytes merkle = 15; // 32 bytes

bytes previous_envelope_hash = 20; // 32 bytes

// Deprecated legacy range metadata. Receivers can inspect `messages`
// directly and must not require these fields for acceptance.
bytes start_message_id = 30; // 32 bytes
bytes end_message_id = 31; // 32 bytes

Expand Down