fn apply_sink_envelope<G>(
    sink: &ComputeSinkDesc<CollectionMetadata>,
    sink_render: &Box<dyn SinkRender<G>>,
    collection: Collection<G, Row, Diff>
) -> Collection<G, (Option<Row>, Option<Row>), Diff> where
    G: Scope<Timestamp = Timestamp>,