Skip to content

Infer a missing seed origin and merge equal-length lists (05A) - #67

Merged
callumalpass merged 1 commit into
mainfrom
spec/seed-upgrade-inference
Nov 9, 2026
Merged

callumalpass merged 1 commit into
mainfrom
spec/seed-upgrade-inference

Conversation

@callumalpass

Copy link
Copy Markdown
Collaborator

Connect's engine (mdbase-connect #1123, #1228) upgrades an edited seed type
whose lock records no origin, as collections set up by the legacy installer
have, instead of leaving it stuck. Make that the rule: such a seed merges
against the nearest listed baseline that merges cleanly into a type still
implementing the desired contracts; one that already implements them is kept
without a reason. Type documents compare by frontmatter values and body, not
bytes, and equal-length arrays merge item by item.

The reference model follows, and a conformance case covers the inferred merge.

Connect's engine (mdbase-connect #1123, #1228) upgrades an edited seed type
whose lock records no origin, as collections set up by the legacy installer
have, instead of leaving it stuck. Make that the rule: such a seed merges
against the nearest listed baseline that merges cleanly into a type still
implementing the desired contracts; one that already implements them is kept
without a reason. Type documents compare by frontmatter values and body, not
bytes, and equal-length arrays merge item by item.

The reference model follows, and a conformance case covers the inferred merge.
@callumalpass
callumalpass merged commit 8ed8cf2 into main Nov 9, 2026
20 checks passed
@callumalpass
callumalpass deleted the spec/seed-upgrade-inference branch November 9, 2026 13:43
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.

1 participant