gabriel / muse public
feat BREAKING task/commit-sign-config #1 / 1
AI Agent gabriel · 112 days ago · May 20, 2026 · Diff

feat: add commit.sign config setting for default signing

- New [commit] section in config.toml with sign = true/false - get_config_value("commit.sign") reads boolean from TOML as string - set_config_value("commit.sign", "true"|"false") validates and writes - muse commit auto-signs when commit.sign = true, without --sign flag - --sign flag always overrides config (wins even when config = false) - signer_public_key included in muse commit --json output - TDD test suite covering all cases

sha256:37f8ecde5896a80df68aa39b87455933a0bc0905ccf87a0424450a806dbdb084 sha
+37 ~8 symbols
sha256:b17e229ea568fc984fb9e361b267346c20093dd813abbe7c3c4cb3ce1144566b snapshot
+37
symbols added
~8
symbols modified
0
dead code introduced
Semantic Changes 45 symbols
~ tests/test_commit_sign_config.py .py 36 symbols added
+ TestAutoSignFromConfig class class TestAutoSignFromConfig L160–206
+ test_commit_not_signed_when_config_absent method method test_commit_not_signed_when_config_absent L186–193
+ test_commit_not_signed_when_config_false method method test_commit_not_signed_when_config_false L174–184
+ test_commit_signed_when_config_true method method test_commit_signed_when_config_true L161–172
+ test_explicit_flag_overrides_config_false method method test_explicit_flag_overrides_config_false L195–206
+ TestCliCommitSign class class TestCliCommitSign L134–154
+ test_cli_set_and_get_true method method test_cli_set_and_get_true L135–141
+ test_cli_set_false method method test_cli_set_false L143–149
+ test_cli_set_invalid_exits_nonzero method method test_cli_set_invalid_exits_nonzero L151–154
+ TestGetCommitSign class class TestGetCommitSign L81–99
+ test_returns_false_string_when_set_false method method test_returns_false_string_when_set_false L94–99
+ test_returns_none_when_section_absent method method test_returns_none_when_section_absent L82–85
+ test_returns_true_string_when_set method method test_returns_true_string_when_set L87–92
+ TestSetCommitSign class class TestSetCommitSign L105–128
+ test_set_false_writes_toml method method test_set_false_writes_toml L112–116
+ test_set_invalid_value_raises method method test_set_invalid_value_raises L118–122
+ test_set_true_writes_toml method method test_set_true_writes_toml L106–110
+ test_set_unknown_commit_subkey_raises method method test_set_unknown_commit_subkey_raises L124–128
+ _TEST_MNEMONIC variable variable _TEST_MNEMONIC L27–30
+ _init_repo function function _init_repo L57–60
+ _inject_signing_key function function _inject_signing_key L33–42
+ _invoke function function _invoke L48–54
+ _make_file function function _make_file L63–67
+ _write_hub_section function function _write_hub_section L70–75
+ CliRunner import import CliRunner L23–23
+ annotations import import annotations L12–12
+ config_toml_path import import config_toml_path L20–20
+ fake_id import import fake_id L21–21
+ get_head_commit_id import import get_head_commit_id L22–22
+ json import import json L14–14
+ muse_dir import import muse_dir L20–20
+ os import import os L15–15
+ pathlib import import pathlib L16–16
+ pytest import import pytest L18–18
+ read_commit import import read_commit L22–22
+ runner variable variable runner L25–25
~ muse/cli/commands/commit.py .py 2 symbols modified
~ muse/cli/config.py .py 1 symbol added, 6 symbols modified
← Older Oldest on task/commit-sign-config
All commits
Newer → Latest on task/commit-sign-config

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