Svelixir. Manifest. FileEntry
(svelixir v0.61.1)
Copy Markdown
One file a component owns or contributes to (SDD 7.3).
mode and key are exclusive. :contributes names one block inside a file
the component shares with others, and :manual names a hunk that cannot be
appended safely and is applied as conflict markers instead. Both are
positional inside a file someone else owns, so both REQUIRE a key.
:sole_owner and :seed take the whole file and must carry none. A nil key
is omitted from the encoded entry rather than written as key: nil, so the
bytes match SDD 8.2 exactly.
:manual extends SDD 7.3's three modes. It is not a phantom class like
:overwritable: apply acts on it by writing markers and mix svelixir.check
acts on it by failing while one remains.
There is no :overwritable mode. It is SDD 4.1 defect 5/6 — a mode nothing
downstream can act on — and it appears here only as a value the last clause
of validate!/1 rejects, so it can never become a phantom class.