Spec
The ruleset draft names the merge vocabulary: owners, match behavior, read behavior, attachments, diagnostics, and review state.
Alignment model
StructuredMerge keeps four reference implementations aligned by testing native code against shared fixtures and normalized result shapes.
The ruleset draft names the merge vocabulary: owners, match behavior, read behavior, attachments, diagnostics, and review state.
The fixture corpus turns that vocabulary into cases that can be run by independent implementations.
Go, TypeScript, Rust, and Ruby provide native runtime surfaces while reporting against the same contract.
Implementation track
| Area | Requirement |
|---|---|
| Diagnostics and result contracts | Same category names and report shapes across implementations. |
| Text, JSON, and JSONC | Early alignment target for parsing, matching, and merge-resolution behavior. |
| TOML and YAML | Config-family suites with explicit backend capability reporting. |
| Source-language families | Go, TypeScript, Rust, and Ruby fixture families for code-aware merge cases. |
| Review and replay | Unresolved cases should be reported in a form that can be reviewed and replayed. |
A new language implementation does not need to copy another runtime's internals. It needs to consume the public fixture corpus, expose the relevant family packages, and report unsupported or unresolved behavior explicitly.
That keeps runtime choice separate from merge semantics.