Process

Ruleset, fixtures, implementation, review.

StructuredMerge separates the declared contract from the engine that executes it. That separation is the point.

1

Declare the merge behavior

The ruleset states the document family, owner selector, match key, read strategy, attachment strategy, and any optional surfaces or policies.

2

Test it against shared fixtures

Fixtures record expected behavior and diagnostic outcomes. They are used to compare engines without treating one engine as the standard.

3

Run the implementation

The engine can use its own parser, data structures, and rendering path as long as the observable behavior matches the declared contract.

4

Preserve reviewable cases

When a merge cannot safely finish, the result can expose unresolved cases with stable review identity and replay compatibility context.