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

feat: supercharge commit-tree — full JSON schema, elapsed_seconds, exit_code

- Expand JSON output from thin {commit_id} stub to full commit record: snapshot_id, branch, message, committed_at, author, agent_id, model_id, toolchain_id, parent_commit_id, parent2_commit_id, elapsed_seconds, exit_code - Add import time + t0 = time.monotonic() for wall-clock timing - Fix 3 pre-existing test failures (len==64 -> startswith sha256: and len==71) - 49 new tests: TestJsonSchemaComplete(14), TestElapsed(3), TestExitCode(2), TestDataIntegrity(4), TestSecurityAnsi(3), TestPerformance(2) - Update module and run() docstrings with complete output contract

sha256:0474e5efc515844eec4560866632d04429a8277a6cf1f1f852f40ec84d7c183e sha
+36 ~6 symbols
sha256:ecc33b4d0f495b49b7e089d27303d1ff656de1b3efd3001d0065d9319268ac32 snapshot
+36
symbols added
~6
symbols modified
0
dead code introduced
Semantic Changes 42 symbols
~ muse/cli/commands/commit_tree.py .py 1 symbol added, 1 symbol modified
+ time import import time L73–73
~ run
~ tests/test_cmd_commit_tree.py .py 35 symbols added, 5 symbols modified
+ TestDataIntegrity class class TestDataIntegrity L506–548
+ test_commit_id_roundtrips_via_store method method test_commit_id_roundtrips_via_store L507–516
+ test_parent_id_matches_store method method test_parent_id_matches_store L526–533
+ test_provenance_matches_store method method test_provenance_matches_store L535–548
+ test_snapshot_id_matches_store method method test_snapshot_id_matches_store L518–524
+ TestElapsed class class TestElapsed L462–479
+ test_elapsed_is_float method method test_elapsed_is_float L469–473
+ test_elapsed_non_negative method method test_elapsed_non_negative L475–479
+ test_elapsed_present method method test_elapsed_present L463–467
+ TestExitCode class class TestExitCode L487–498
+ test_exit_code_zero_on_success method method test_exit_code_zero_on_success L488–492
+ test_process_exit_zero_on_success method method test_process_exit_zero_on_success L494–498
+ TestJsonSchemaComplete class class TestJsonSchemaComplete L361–454
+ test_agent_id_echoed method method test_agent_id_echoed L396–400
+ test_all_keys_present_on_success method method test_all_keys_present_on_success L364–370
+ test_author_echoed method method test_author_echoed L390–394
+ test_branch_echoed method method test_branch_echoed L378–382
+ test_committed_at_is_iso_string method method test_committed_at_is_iso_string L441–448
+ test_exit_code_zero method method test_exit_code_zero L450–454
+ test_message_echoed method method test_message_echoed L384–388
+ test_model_id_echoed method method test_model_id_echoed L402–406
+ test_parent2_commit_id_null_when_no_second_parent method method test_parent2_commit_id_null_when_no_second_parent L427–431
+ test_parent2_commit_id_present_for_merge method method test_parent2_commit_id_present_for_merge L433–439
+ test_parent_commit_id_null_when_no_parent method method test_parent_commit_id_null_when_no_parent L414–418
+ test_parent_commit_id_present method method test_parent_commit_id_present L420–425
+ test_snapshot_id_echoed method method test_snapshot_id_echoed L372–376
+ test_toolchain_id_echoed method method test_toolchain_id_echoed L408–412
+ TestPerformance class class TestPerformance L590–607
+ test_elapsed_seconds_reasonable method method test_elapsed_seconds_reasonable L601–607
+ test_single_commit_under_500ms method method test_single_commit_under_500ms L591–599
+ TestSecurityAnsi class class TestSecurityAnsi L556–582
+ test_ansi_in_author_does_not_corrupt_json method method test_ansi_in_author_does_not_corrupt_json L566–573
+ test_ansi_in_message_does_not_corrupt_json method method test_ansi_in_message_does_not_corrupt_json L557–564
+ test_long_message_handled method method test_long_message_handled L575–582
+ _FULL_KEYS variable variable _FULL_KEYS L344–358
← Older Oldest on task/supercharge-commit-tree
All commits
Newer → Latest on task/supercharge-commit-tree

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