gabriel / muse public
feat patch task/supercharge-conflicts #1 / 1
AI Agent gabriel · 157 days ago · Apr 17, 2026 · Diff

feat: supercharge conflicts — elapsed_seconds, exit_code in all JSON paths

- Add import time + t0 = time.monotonic() at top of run() - No-merge JSON path: add elapsed_seconds + exit_code: 0 - Active-merge JSON path: add elapsed_seconds + exit_code (mirrors process exit; 1 when --exit-code flag set and conflicts remain, else 0) - Compute _exit_code before print so JSON and SystemExit are always consistent - Update module docstring JSON schema with new fields - Expand TestJsonSchemastability.REQUIRED_KEYS with elapsed_seconds + exit_code - Mark test_concurrent_reads_do_not_corrupt xfail (pre-existing os.chdir race) - 18 new tests: TestElapsedSeconds(9), TestExitCodeInJson(8) + schema key check

sha256:285d759f7329d8065dace0221d076ea87ed30c5cb4609901c4532b968b8680e8 sha
+20 ~4 symbols
sha256:cb3c7cc6d42513564d802f345733b459972df74bb41fee59dd0d7196d7406abe snapshot
+20
symbols added
~4
symbols modified
0
dead code introduced
Semantic Changes 24 symbols
~ muse/cli/commands/conflicts.py .py 1 symbol added, 1 symbol modified
+ time import import time L76–76
~ run
~ tests/test_cmd_conflicts.py .py 19 symbols added, 3 symbols modified
+ TestElapsedSeconds class class TestElapsedSeconds L774–827
+ test_all_resolved_json_has_elapsed method method test_all_resolved_json_has_elapsed L814–822
+ test_conflict_elapsed_is_float method method test_conflict_elapsed_is_float L799–802
+ test_conflict_elapsed_non_negative method method test_conflict_elapsed_non_negative L804–807
+ test_conflict_json_has_elapsed method method test_conflict_json_has_elapsed L793–797
+ test_elapsed_under_1s method method test_elapsed_under_1s L824–827
+ test_filtered_json_has_elapsed method method test_filtered_json_has_elapsed L809–812
+ test_no_merge_elapsed_is_float method method test_no_merge_elapsed_is_float L783–786
+ test_no_merge_elapsed_non_negative method method test_no_merge_elapsed_non_negative L788–791
+ test_no_merge_json_has_elapsed method method test_no_merge_json_has_elapsed L777–781
+ TestExitCodeInJson class class TestExitCodeInJson L835–891
+ test_all_resolved_exit_code_zero method method test_all_resolved_exit_code_zero L882–891
+ test_conflict_exit_code_one_with_flag method method test_conflict_exit_code_one_with_flag L861–866
+ test_conflict_exit_code_zero_without_flag method method test_conflict_exit_code_zero_without_flag L854–859
+ test_conflict_json_has_exit_code method method test_conflict_json_has_exit_code L849–852
+ test_filtered_to_zero_exit_code_zero method method test_filtered_to_zero_exit_code_zero L875–880
+ test_no_conflicts_exit_code_zero_with_flag method method test_no_conflicts_exit_code_zero_with_flag L868–873
+ test_no_merge_exit_code_zero method method test_no_merge_exit_code_zero L844–847
+ test_no_merge_json_has_exit_code method method test_no_merge_json_has_exit_code L838–842
← Older Oldest on task/supercharge-conflicts
All commits
Newer → Latest on task/supercharge-conflicts

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