I’m pretty sure that Lucene is exactly the same, the segments it creates are immutable and Elastic is what handles a “mutable” view of the data. Which makes sense because Tantivy is like Lucene, not ES.
https://lucene.apache.org/core/7_7_0/core/org/apache/lucene/...