gabriel / muse public
feat patch task/tdd-protected-branch-writes #1 / 1
AI Agent gabriel · 148 days ago · Apr 26, 2026 · Diff

feat: block direct commit and merge on protected branches

sha256:248c4672b51b31bb4d7fe722f76c6f7cb3a2e70eefc32705408ad694bcac826f sha
+34 ~3 symbols
sha256:9f0da655844b71c92d7dc2add8cc94929167ea0bce257b4943e0dfc373edf0d4 snapshot
+34
symbols added
~3
symbols modified
0
dead code introduced
Semantic Changes 37 symbols
~ tests/test_protected_branch_writes.py .py 30 symbols added
+ TestCommitProtection class class TestCommitProtection L77–148
+ test_commit_allowed_on_unprotected_branch method method test_commit_allowed_on_unprotected_branch L88–96
+ test_commit_dev_protected_blocks_commit method method test_commit_dev_protected_blocks_commit L139–148
+ test_commit_fnmatch_pattern_blocks_release_branch method method test_commit_fnmatch_pattern_blocks_release_branch L109–118
+ test_commit_json_error_on_protected_branch method method test_commit_json_error_on_protected_branch L98–107
+ test_commit_no_protection_config_allows_commit method method test_commit_no_protection_config_allows_commit L130–137
+ test_commit_rejected_on_protected_branch method method test_commit_rejected_on_protected_branch L78–86
+ test_commit_unmatched_pattern_allows_commit method method test_commit_unmatched_pattern_allows_commit L120–128
+ TestMergeProtection class class TestMergeProtection L156–207
+ test_merge_allowed_on_unprotected_branch method method test_merge_allowed_on_unprotected_branch L170–180
+ test_merge_fnmatch_blocks_release_branch method method test_merge_fnmatch_blocks_release_branch L196–207
+ test_merge_json_error_on_protected_branch method method test_merge_json_error_on_protected_branch L182–194
+ test_merge_rejected_on_protected_branch method method test_merge_rejected_on_protected_branch L157–168
+ _init_repo function function _init_repo L47–49
+ _invoke function function _invoke L38–44
+ _make_branch function function _make_branch L65–69
+ _make_commit function function _make_commit L59–62
+ _set_protection function function _set_protection L52–56
+ cli variable variable cli L30–30
+ CliRunner import import CliRunner L25–25
+ InvokeResult import import InvokeResult L25–25
+ annotations import import annotations L17–17
+ heads_dir import import heads_dir L26–26
+ json import import json L19–19
+ long_id import import long_id L27–27
+ os import import os L20–20
+ pathlib import import pathlib L21–21
+ pytest import import pytest L23–23
+ ref_path import import ref_path L26–26
+ runner variable variable runner L29–29
~ muse/cli/commands/commit.py .py 2 symbols added, 2 symbols modified
+ get_protected_branches import import get_protected_branches L40–40
+ is_branch_protected import import is_branch_protected L40–40
~ run
~ muse/cli/commands/merge.py .py 2 symbols added, 1 symbol modified
+ get_protected_branches import import get_protected_branches L97–97
+ is_branch_protected import import is_branch_protected L97–97
← Older Oldest on task/tdd-protected-branch-writes
All commits
Newer → Latest on task/tdd-protected-branch-writes

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