gabriel / muse public
test task/phase1-merge-engine #16 / 16
AI Agent gabriel · 14 hours ago · Jun 11, 2026 · Diff

test: Phase 1 TDD — MergeEngine class, --strategy, --on-conflict, --history (all RED)

sha256:e7283cd82f2f9cef3de581b97fd8ac849509ccc66861b6c81680144ffcd166c3 sha
+65 symbols
1071 changed · 1071 in snapshot files
sha256:83059036a2bca8b05dbb31841656000cf4ff4cf5e442c8d320917ee6ca3f4e90 snapshot
+65
symbols added
1071
files changed
1071
files in snapshot
0
dead code introduced
Semantic Changes 65 symbols
~ tests/test_phase1_merge_engine.py .py 65 symbols added
+ TestHistoryFlag class class TestHistoryFlag L430–533
+ _clean_merge_repo method method _clean_merge_repo L433–448
+ test_HI_01_history_flag_exists method method test_HI_01_history_flag_exists L450–457
+ test_HI_02_history_merge_accepted method method test_HI_02_history_merge_accepted L459–465
+ test_HI_03_history_squash_accepted method method test_HI_03_history_squash_accepted L467–473
+ test_HI_04_history_rebase_accepted method method test_HI_04_history_rebase_accepted L475–481
+ test_HI_05_history_invalid_rejected method method test_HI_05_history_invalid_rejected L483–489
+ test_HI_06_history_merge_produces_two_parent_commit method method test_HI_06_history_merge_produces_two_parent_commit L491–506
+ test_HI_07_history_squash_produces_single_parent_commit method method test_HI_07_history_squash_produces_single_parent_commit L508–523
+ test_HI_08_json_output_includes_history method method test_HI_08_json_output_includes_history L525–533
+ TestMergeEngineClass class class TestMergeEngineClass L112–192
+ test_ME_01_importable method method test_ME_01_importable L115–117
+ test_ME_02_valid_construction method method test_ME_02_valid_construction L119–124
+ test_ME_03_all_diff_units_accepted method method test_ME_03_all_diff_units_accepted L126–131
+ test_ME_04_all_resolutions_accepted method method test_ME_04_all_resolutions_accepted L133–138
+ test_ME_05_invalid_diff_unit_raises method method test_ME_05_invalid_diff_unit_raises L140–144
+ test_ME_06_invalid_resolution_raises method method test_ME_06_invalid_resolution_raises L146–150
+ test_ME_07_strategy_lookup_table_exists method method test_ME_07_strategy_lookup_table_exists L152–158
+ test_ME_08_recursive_is_three_way_escalate method method test_ME_08_recursive_is_three_way_escalate L160–165
+ test_ME_09_overlay_is_snapshot_prefer_theirs method method test_ME_09_overlay_is_snapshot_prefer_theirs L167–172
+ test_ME_10_snapshot_is_snapshot_escalate method method test_ME_10_snapshot_is_snapshot_escalate L174–179
+ test_ME_11_replay_is_replay_ours_escalate method method test_ME_11_replay_is_replay_ours_escalate L181–186
+ test_ME_12_old_names_not_in_strategy_map method method test_ME_12_old_names_not_in_strategy_map L188–192
+ TestOnConflictFlag class class TestOnConflictFlag L307–423
+ _conflicting_repo method method _conflicting_repo L310–323
+ test_OC_01_on_conflict_flag_exists method method test_OC_01_on_conflict_flag_exists L325–333
+ test_OC_02_on_conflict_escalate_accepted method method test_OC_02_on_conflict_escalate_accepted L335–341
+ test_OC_03_on_conflict_ours_accepted method method test_OC_03_on_conflict_ours_accepted L343–349
+ test_OC_04_on_conflict_theirs_accepted method method test_OC_04_on_conflict_theirs_accepted L351–357
+ test_OC_05_on_conflict_invalid_rejected method method test_OC_05_on_conflict_invalid_rejected L359–365
+ test_OC_06_on_conflict_ours_resolves_conflict method method test_OC_06_on_conflict_ours_resolves_conflict L367–375
+ test_OC_07_on_conflict_theirs_resolves_conflict method method test_OC_07_on_conflict_theirs_resolves_conflict L377–385
+ test_OC_08_escalate_surfaces_conflict method method test_OC_08_escalate_surfaces_conflict L387–397
+ test_OC_09_strategy_ours_alias_equals_on_conflict_ours method method test_OC_09_strategy_ours_alias_equals_on_conflict_ours L399–413
+ test_OC_10_json_output_includes_on_conflict method method test_OC_10_json_output_includes_on_conflict L415–423
+ TestStrategyFlag class class TestStrategyFlag L199–300
+ _two_branch_repo method method _two_branch_repo L202–216
+ test_ST_01_strategy_recursive_accepted method method test_ST_01_strategy_recursive_accepted L218–225
+ test_ST_02_strategy_overlay_accepted method method test_ST_02_strategy_overlay_accepted L227–234
+ test_ST_03_strategy_snapshot_accepted method method test_ST_03_strategy_snapshot_accepted L236–244
+ test_ST_04_strategy_replay_accepted method method test_ST_04_strategy_replay_accepted L246–254
+ test_ST_05_strategy_ours_accepted method method test_ST_05_strategy_ours_accepted L256–263
+ test_ST_06_strategy_theirs_accepted method method test_ST_06_strategy_theirs_accepted L265–272
+ test_ST_07_state_merge_rejected method method test_ST_07_state_merge_rejected L274–281
+ test_ST_08_state_replay_rejected method method test_ST_08_state_replay_rejected L283–290
+ test_ST_09_json_output_includes_strategy method method test_ST_09_json_output_includes_strategy L292–300
+ _checkout function function _checkout L97–105
+ _env function function _env L31–32
+ _init_repo function function _init_repo L35–50
+ _make_commit function function _make_commit L59–94
+ _write_obj function function _write_obj L53–56
+ CliRunner import import CliRunner L19–19
+ annotations import import annotations L12–12
+ blob_id import import blob_id L20–20
+ datetime import import datetime L14–14
+ fake_id import import fake_id L20–20
+ heads_dir import import heads_dir L22–22
+ json import import json L15–15
+ muse_dir import import muse_dir L22–22
+ pathlib import import pathlib L16–16
+ pytest import import pytest L18–18
+ read_object import import read_object L21–21
+ ref_path import import ref_path L22–22
+ write_object import import write_object L21–21
+ runner variable variable runner L24–24
Files Changed
+1071
1071 in snapshot
+ .coverage .coverage
+ .museattributes .museattributes
+ .museignore .museignore
+ CLAUDE.md .md
+ README.md .md
+ dev-setup.sh .sh
+ pyproject.toml .toml

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:e7283cd82f2f9cef3de581b97fd8ac849509ccc66861b6c81680144ffcd166c3 --body "your comment"