Nordhavn / specs / convene / mix / CellContent

convene / mixdata

CellContent

Purpose

What a cell carries inside its seal — one chunk of a Payload, and just enough to put it back in place. A payload from the layer above is split into fixed-size chunks so every cell is the same size; each chunk travels as the sealed content of one cell. The reassembly id groups the chunks of one payload, and the index and count say where this chunk sits and how many there are — all of it inside the seal, so an observer sees only same-size opaque cells and cannot tell which belong together, while the recipient, once a cell is unsealed, can gather a payload's chunks and reassemble them in order.

Attributes

Invariants

Operations

seal

Renders this content into a cell's sealed payload under a given SealKey — by handing this content to that key's own sealing, the codec's one home; an opaque text carrying no readable trace of the chunk, its grouping, or its place, recoverable only through the same key. Result: the sealed payload as Text

Scenarios

A chunk knows its place in the payload

Given: reassembly id "ra-01", chunk index 0, chunk count 3, and a chunk When: a CellContent is created Then: it is accepted as the first of three chunks of payload "ra-01"

A chunk index outside the count is rejected

Given: reassembly id "ra-01", chunk index 3, chunk count 3, and a chunk When: a CellContent is created Then: the creation is rejected because the chunk index is not below the chunk count

spoken of by