gabriel / musehub public
feat patch proposals task/proposal-models-v2 #16 / 19
AI Agent gabriel · 40 days ago · May 8, 2026 · Diff

feat(proposals): phase 3 — merge strategy engine

Five merge strategies: STATE_OVERLAY (from_wins), STATE_WEAVE (three-way file-level), STATE_REBASE (from-delta onto to), DOMAIN_SELECTIVE (subset by domain), PHASED (dependency-order execution).

- proposal_merge_strategies.py: pure strategy engine with classify_domain, _manifest_delta, _apply_delta, MergeResult, ConflictEntry, and all five strategy functions plus execute_merge_strategy router - musehub_proposals.py: _resolve_ancestor_manifest walks branch history to find merge-base; merge_proposal gates on dependencies, loads ancestor, and dispatches through execute_merge_strategy - test_proposal_reimagination_phase3.py: 56 unit + integration tests; uses muse.core.types.fake_id and blob_id(os.urandom()) for all IDs — no UUIDs

sha256:61f8a55666c7d5ed05011a10b04c8e52d03f431344662b3412153fc72c435098 sha
sha256:106f6b4b4bb81ea34d29330a2f6ccbcb62c59e82caa48cbf78734773a5f78352 snapshot

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:61f8a55666c7d5ed05011a10b04c8e52d03f431344662b3412153fc72c435098 --body "your comment"