Skip to content

A joiner serves the history it adopted as a fragment - #165

Merged
lannbot merged 1 commit into
mainfrom
m4d/adopt-fragment
Sep 7, 2026
Merged

A joiner serves the history it adopted as a fragment#165
lannbot merged 1 commit into
mainfrom
m4d/adopt-fragment

Conversation

@lannbot

@lannbot lannbot commented Sep 7, 2026

Copy link
Copy Markdown
Collaborator

After adopt_us the joiner builds one us fragment over the adopted history (single head, empty boundary; install_fragment shared with compact), so it can serve that history to a peer or the store as sedimentree intends. Tests: joiner holds one fragment and a fresh engine rebuilds members from its bundle alone; A→B→C with C never meeting A; the joiner publishes the fragment to Drive. e2e 17/17 ×2. Automerge armed.

adopt_us installs the adder's group document as an automerge snapshot
with an empty sedimentree tree, so the joiner held history it could not
serve as items — to a device that syncs only with it, or to the store.
A member holding applied history serves it the way compaction does: it
builds a fragment. After adoption the joiner gives the document a single
head (a signed merge anchor if needed) and builds one plaintext fragment
over the whole adopted history, boundary empty, through the same
install path compact uses. A third device enrolled by the joiner learns
the first era from that fragment without ever meeting the founder.
@lannbot
lannbot enabled auto-merge September 7, 2026 18:47
@lannbot
lannbot merged commit 4eed4e6 into main Sep 7, 2026
2 checks passed
@lannbot
lannbot deleted the m4d/adopt-fragment branch September 7, 2026 18:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants