commit_wizard/engine/constants/defaults/
policy.rs1use crate::engine::models::policy::enforcement::{
8 AiProvider, BumpLevel, ChangelogFormat, CommitEnforcementScope, ScopeMode, TicketSource,
9};
10
11pub const CONFIG_VERSION: u32 = 1;
12
13pub const DEFAULT_COMMIT_BUMP: BumpLevel = BumpLevel::Patch;
14pub const COMMIT_SUBJECT_MAX_LENGTH: u32 = 72;
21pub const COMMIT_USE_EMOJIS: bool = false;
22
23pub const COMMIT_SCOPE_MODE: ScopeMode = ScopeMode::Optional;
24pub const COMMIT_SCOPE_RESTRICT_TO_DEFINED: bool = false;
25
26pub const COMMIT_BREAKING_REQUIRE_HEADER: bool = false;
27pub const COMMIT_BREAKING_REQUIRE_FOOTER: bool = false;
28pub const COMMIT_BREAKING_FOOTER_KEY: &str = "BREAKING CHANGE";
29
30pub const COMMIT_TICKET_ENABLED: bool = false;
31pub const COMMIT_TICKET_REQUIRED: bool = false;
32pub const COMMIT_TICKET_SOURCE: TicketSource = TicketSource::Disabled;
33
34pub const COMMIT_PROTECTED_ALLOW: bool = true;
35pub const COMMIT_PROTECTED_FORCE: bool = false;
36pub const COMMIT_PROTECTED_WARN: bool = true;
37
38pub const BRANCH_REMOTE: &str = "origin";
45pub const BRANCH_NAMING_PATTERN: &str = "feature/{issue}";
46pub const BRANCH_NAMING_ENFORCE: bool = false;
47
48pub const PR_ENABLED: bool = true;
55
56pub const CHECK_REQUIRE_CONVENTIONAL: bool = true;
63pub const CHECK_COMMITS_ENABLED: bool = true;
64pub const CHECK_COMMITS_ENFORCE_ON: CommitEnforcementScope =
65 CommitEnforcementScope::ProtectedBranches;
66
67pub const PUSH_ALLOW_PROTECTED: bool = false;
74pub const PUSH_ALLOW_FORCE: bool = false;
75
76pub const PUSH_CHECK_COMMITS: bool = true;
77pub const PUSH_CHECK_BRANCH_POLICY: bool = true;
78
79pub const VERSIONING_TAG_PREFIX: &str = "v";
86
87pub const CHANGELOG_OUTPUT: &str = "CHANGELOG.md";
94pub const CHANGELOG_FORMAT: ChangelogFormat = ChangelogFormat::Markdown;
95pub const CHANGELOG_SHOW_SCOPE: bool = true;
96pub const CHANGELOG_SHOW_EMPTY_SECTIONS: bool = false;
97pub const CHANGELOG_SHOW_EMPTY_SCOPES: bool = false;
98pub const CHANGELOG_MISC_SECTION: &str = "Miscellaneous";
99
100pub const RELEASE_ENABLED: bool = false;
107pub const RELEASE_SOURCE_BRANCH: &str = "main";
108pub const RELEASE_TARGET_BRANCH: &str = "main";
109pub const RELEASE_BRANCH_FORMAT: &str = "release/{version}";
110pub const RELEASE_HOTFIX_PATTERN: &str = "hotfix/*";
111
112pub const RELEASE_REQUIRE_CLEAN_WORKTREE: bool = true;
113pub const RELEASE_FAIL_IF_TAG_EXISTS: bool = true;
114pub const RELEASE_FAIL_IF_RELEASE_BRANCH_EXISTS: bool = true;
115
116pub const RELEASE_FINISH_TAG: bool = true;
117pub const RELEASE_FINISH_PUSH: bool = true;
118pub const RELEASE_FINISH_BACKMERGE_BRANCH: &str = "main";
119
120pub const HOOKS_PRE_COMMIT: bool = false;
127pub const HOOKS_COMMIT_MSG: bool = false;
128pub const HOOKS_PRE_PUSH: bool = false;
129
130pub const AI_ENABLED: bool = false;
137pub const AI_PROVIDER: AiProvider = AiProvider::Copilot;
138
139pub const AI_COMMAND_COMMIT: bool = false;
140pub const AI_COMMAND_CHANGELOG: bool = false;
141pub const AI_COMMAND_RELEASE_PREPARE: bool = false;
142
143pub const REGISTRY_DEFAULT_REF: &str = "main";