feat: supercharge muse workspace — envelopes, duration_ms, exit_code, branch_mismatch
- Add duration_ms and exit_code to all six subcommand JSON outputs - Switch list/status from bare arrays to {members, exit_code, duration_ms} envelopes - Add branch_mismatch: bool to _WorkspaceMemberJson (True when actual_branch != tracking branch) - Add _WorkspaceListJson and _WorkspaceStatusJson TypedDicts for the new envelopes - Update run_workspace_sync docstring to document all JSON envelope fields - Update 19 existing hardening tests to match the new schema - Add tests/test_workspace_supercharge.py: 57 tests across 8 classes covering duration_ms (8), exit_code (11), list envelope (6), status envelope (5), branch_mismatch (7), sync exit_code (3), TypedDicts (9), docstrings (5), performance (3)
sha256:658b6bf029fb0dc278aabffed27caef184e1ff4759b7404ba7c4d611495cc206
sha
+88
~41
symbols
sha256:dfb31a5ea0e46e064c1c5a966322a0f0f9122b16a4ad77ee5ef346a215f51a41
snapshot
+88
symbols added
~41
symbols modified
0
dead code introduced
Semantic Changes
129 symbols
+
test_branch_mismatch_false_when_not_present
method
method test_branch_mismatch_false_when_not_present L358–362
+
test_branch_mismatch_false_when_on_tracking_branch
method
method test_branch_mismatch_false_when_on_tracking_branch L348–351
+
test_branch_mismatch_field_in_member_to_json
method
method test_branch_mismatch_field_in_member_to_json L343–346
+
test_branch_mismatch_true_when_on_different_branch
method
method test_branch_mismatch_true_when_on_different_branch L353–356
+
test_sync_docstring_mentions_duration_ms
method
method test_sync_docstring_mentions_duration_ms L469–470
+
test_sync_docstring_mentions_exit_code
method
method test_sync_docstring_mentions_exit_code L466–467
+
test_sync_docstring_mentions_json_fields
method
method test_sync_docstring_mentions_json_fields L462–464
+
test_list_json_members_count_matches_registered
method
method test_list_json_members_count_matches_registered L270–276
+
test_list_10_members_duration_ms_under_2000
method
method test_list_10_members_duration_ms_under_2000 L480–487
+
test_status_10_members_duration_ms_under_2000
method
method test_status_10_members_duration_ms_under_2000 L489–496
+
test_sync_empty_manifest_exit_code_zero
method
method test_sync_empty_manifest_exit_code_zero L400–405
+
test_workspace_add_json_has_duration_ms_annotation
method
method test_workspace_add_json_has_duration_ms_annotation L421–422
+
test_workspace_add_json_has_exit_code_annotation
method
method test_workspace_add_json_has_exit_code_annotation L424–425
+
test_workspace_member_json_has_branch_mismatch_annotation
method
method test_workspace_member_json_has_branch_mismatch_annotation L445–446
+
test_workspace_remove_json_has_duration_ms_annotation
method
method test_workspace_remove_json_has_duration_ms_annotation L433–434
+
test_workspace_remove_json_has_exit_code_annotation
method
method test_workspace_remove_json_has_exit_code_annotation L436–437
+
test_workspace_sync_json_has_duration_ms_annotation
method
method test_workspace_sync_json_has_duration_ms_annotation L439–440
+
test_workspace_sync_json_has_exit_code_annotation
method
method test_workspace_sync_json_has_exit_code_annotation L442–443
+
test_workspace_update_json_has_duration_ms_annotation
method
method test_workspace_update_json_has_duration_ms_annotation L427–428
+
test_workspace_update_json_has_exit_code_annotation
method
method test_workspace_update_json_has_exit_code_annotation L430–431
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:658b6bf029fb0dc278aabffed27caef184e1ff4759b7404ba7c4d611495cc206 --body "your comment"
No comments yet. Be the first to start the discussion.