- Ya
- 22 Agosti 2026, 22:05 UTC
- Mwandishi
- Kamo
- Ahadi ya
- d488ea4
A document had up to two derived rows — CLASSIC for edited bytes, FORM_FILLABLE for fields — and something had to decide which was based on the other, repointing the form row at the classic row's bytes on every save. It is one record now, with a document layer (its bytes) and a form layer (fields over them): two ways of editing one thing. That deletes the whole rebase question rather than answering it. A save in the document layer changes the bytes the fields already sit on, so there is nothing to repoint and nothing to get wrong when a member adds fields first and edits the document later. has_form_layer is stored rather than derived. The honest answer lives in esign_templates, but asking it per row on every list request is exactly the N+1 that hasDesignVersion used to run for all 100 rows of a page.