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

feat: supercharge muse cherry-pick for agent use

- Add elapsed_seconds and exit_code to all 4 JSON output paths: picked (exit_code=0), applied/no-commit (exit_code=0), dry_run (exit_code=0), conflict (exit_code=1 mirrors process exit) - Fix text output to show bare hex short IDs instead of sha256: prefix in both normal and --dry-run text modes - Update module and run() docstrings with complete JSON contract - Fix pre-existing test bug: _write_object returned bare hex but manifests require sha256: prefix — caused ValueError in apply_manifest - Fix pre-existing test assertions: ID length is 71 (sha256: + 64 hex), not 64; now checks prefix and length correctly - Add 18 new tests: TestElapsed (4), TestExitCode (4), TestJsonSchemaComplete (4), TestTextOutputHex (2) plus 4 pre-existing fixes

sha256:a8f8a6459c839ac2fa50bdfb81cad021e92d44bf8289f678eb35cf37a5991c62 sha
+19 ~8 symbols
sha256:f645bb9b6434c71afb2499cad01b35bcb13eae937891e49e3d4e293f69e0c66b snapshot
+19
symbols added
~8
symbols modified
0
dead code introduced
Semantic Changes 27 symbols
~ muse/cli/commands/cherry_pick.py .py 1 symbol added, 1 symbol modified
+ time import import time L55–55
~ run
~ tests/test_cmd_cherry_pick.py .py 1 symbol modified
~ tests/test_cmd_cherry_pick_hardening.py .py 18 symbols added, 6 symbols modified
+ TestElapsed class class TestElapsed L943–1008
+ test_applied_json_has_elapsed method method test_applied_json_has_elapsed L955–965
+ test_conflict_json_has_elapsed method method test_conflict_json_has_elapsed L979–1008
+ test_dry_run_json_has_elapsed method method test_dry_run_json_has_elapsed L967–977
+ test_picked_json_has_elapsed method method test_picked_json_has_elapsed L946–953
+ TestExitCode class class TestExitCode L1011–1071
+ test_applied_json_exit_code_0 method method test_applied_json_exit_code_0 L1022–1031
+ test_conflict_json_exit_code_1 method method test_conflict_json_exit_code_1 L1044–1071
+ test_dry_run_json_exit_code_0 method method test_dry_run_json_exit_code_0 L1033–1042
+ test_picked_json_exit_code_0 method method test_picked_json_exit_code_0 L1014–1020
+ TestJsonSchemaComplete class class TestJsonSchemaComplete L1074–1138
+ test_all_schemas_identical method method test_all_schemas_identical L1117–1138
+ test_applied_has_complete_schema method method test_applied_has_complete_schema L1093–1103
+ test_dry_run_has_complete_schema method method test_dry_run_has_complete_schema L1105–1115
+ test_picked_has_complete_schema method method test_picked_has_complete_schema L1084–1091
+ TestTextOutputHex class class TestTextOutputHex L1141–1175
+ test_dry_run_text_shows_bare_hex method method test_dry_run_text_shows_bare_hex L1157–1175
+ test_picked_text_shows_bare_hex method method test_picked_text_shows_bare_hex L1144–1155
← Older Oldest on task/supercharge-cherry-pick
All commits
Newer → Latest on task/supercharge-cherry-pick

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