@elsikora/commitizen-plugin-commitlint-ai 2.1.1 → 2.2.0-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/application/use-case/edit-commit.use-case.d.ts +78 -0
- package/dist/cjs/application/use-case/edit-commit.use-case.js +273 -0
- package/dist/cjs/application/use-case/edit-commit.use-case.js.map +1 -0
- package/dist/cjs/application/use-case/index.d.ts +1 -0
- package/dist/cjs/domain/entity/commit-message.entity.d.ts +6 -0
- package/dist/cjs/domain/entity/commit-message.entity.js +15 -2
- package/dist/cjs/domain/entity/commit-message.entity.js.map +1 -1
- package/dist/cjs/domain/value-object/commit-body.value-object.d.ts +9 -3
- package/dist/cjs/domain/value-object/commit-body.value-object.js +17 -8
- package/dist/cjs/domain/value-object/commit-body.value-object.js.map +1 -1
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/infrastructure/di/container.d.ts +1 -0
- package/dist/cjs/infrastructure/di/container.js +7 -2
- package/dist/cjs/infrastructure/di/container.js.map +1 -1
- package/dist/cjs/infrastructure/llm/mock-llm.service.d.ts +35 -0
- package/dist/cjs/infrastructure/llm/mock-llm.service.js +203 -0
- package/dist/cjs/infrastructure/llm/mock-llm.service.js.map +1 -0
- package/dist/cjs/presentation/commitizen.adapter.d.ts +7 -0
- package/dist/cjs/presentation/commitizen.adapter.js +26 -8
- package/dist/cjs/presentation/commitizen.adapter.js.map +1 -1
- package/dist/esm/application/use-case/edit-commit.use-case.d.ts +78 -0
- package/dist/esm/application/use-case/edit-commit.use-case.js +271 -0
- package/dist/esm/application/use-case/edit-commit.use-case.js.map +1 -0
- package/dist/esm/application/use-case/index.d.ts +1 -0
- package/dist/esm/domain/entity/commit-message.entity.d.ts +6 -0
- package/dist/esm/domain/entity/commit-message.entity.js +15 -2
- package/dist/esm/domain/entity/commit-message.entity.js.map +1 -1
- package/dist/esm/domain/value-object/commit-body.value-object.d.ts +9 -3
- package/dist/esm/domain/value-object/commit-body.value-object.js +17 -8
- package/dist/esm/domain/value-object/commit-body.value-object.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/infrastructure/di/container.d.ts +1 -0
- package/dist/esm/infrastructure/di/container.js +7 -3
- package/dist/esm/infrastructure/di/container.js.map +1 -1
- package/dist/esm/infrastructure/llm/mock-llm.service.d.ts +35 -0
- package/dist/esm/infrastructure/llm/mock-llm.service.js +201 -0
- package/dist/esm/infrastructure/llm/mock-llm.service.js.map +1 -0
- package/dist/esm/presentation/commitizen.adapter.d.ts +7 -0
- package/dist/esm/presentation/commitizen.adapter.js +27 -9
- package/dist/esm/presentation/commitizen.adapter.js.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { ILlmPromptContext, ILlmService } from '../../application/interface/llm-service.interface';
|
|
2
|
+
import type { LLMConfiguration } from '../../domain/entity/llm-configuration.entity';
|
|
3
|
+
import { CommitMessage } from '../../domain/entity/commit-message.entity';
|
|
4
|
+
/**
|
|
5
|
+
* Mock LLM service for testing without real API calls
|
|
6
|
+
* Activated when MOCK_LLM environment variable is set to "true"
|
|
7
|
+
*/
|
|
8
|
+
export declare class MockLlmService implements ILlmService {
|
|
9
|
+
/**
|
|
10
|
+
* Generate a mock commit message based on context analysis
|
|
11
|
+
* @param {ILlmPromptContext} context - The context for generating the commit message
|
|
12
|
+
* @param {LLMConfiguration} _configuration - The LLM configuration (unused in mock)
|
|
13
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the generated commit message
|
|
14
|
+
*/
|
|
15
|
+
generateCommitMessage(context: ILlmPromptContext, _configuration: LLMConfiguration): Promise<CommitMessage>;
|
|
16
|
+
/**
|
|
17
|
+
* Check if the service supports the given configuration
|
|
18
|
+
* Mock service supports all providers when MOCK_LLM is enabled
|
|
19
|
+
* @param {LLMConfiguration} _configuration - The LLM configuration (unused)
|
|
20
|
+
* @returns {boolean} True if mock mode is enabled
|
|
21
|
+
*/
|
|
22
|
+
supports(_configuration: LLMConfiguration): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Extract a numeric value from commitlint rules
|
|
25
|
+
* @param {unknown} rules - The commitlint rules
|
|
26
|
+
* @param {string} ruleName - The name of the rule to extract
|
|
27
|
+
* @returns {number | undefined} The numeric value or undefined
|
|
28
|
+
*/
|
|
29
|
+
private extractRuleValue;
|
|
30
|
+
/**
|
|
31
|
+
* Check if mock mode is enabled via environment variable
|
|
32
|
+
* @returns {boolean} True if MOCK_LLM environment variable is set to "true" or "1"
|
|
33
|
+
*/
|
|
34
|
+
private isMockEnabled;
|
|
35
|
+
}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var commitMessage_entity = require('../../domain/entity/commit-message.entity.js');
|
|
4
|
+
var commitBody_valueObject = require('../../domain/value-object/commit-body.value-object.js');
|
|
5
|
+
var commitHeader_valueObject = require('../../domain/value-object/commit-header.value-object.js');
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Mock LLM service for testing without real API calls
|
|
9
|
+
* Activated when MOCK_LLM environment variable is set to "true"
|
|
10
|
+
*/
|
|
11
|
+
class MockLlmService {
|
|
12
|
+
/**
|
|
13
|
+
* Generate a mock commit message based on context analysis
|
|
14
|
+
* @param {ILlmPromptContext} context - The context for generating the commit message
|
|
15
|
+
* @param {LLMConfiguration} _configuration - The LLM configuration (unused in mock)
|
|
16
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the generated commit message
|
|
17
|
+
*/
|
|
18
|
+
async generateCommitMessage(context, _configuration) {
|
|
19
|
+
process.stdout.write("🎭 Using MOCK LLM provider (no real API calls)\n");
|
|
20
|
+
// Simulate API delay
|
|
21
|
+
await new Promise((resolve) => setTimeout(resolve, 500));
|
|
22
|
+
const filesChanged = context.files ? context.files.split("\n").filter(Boolean) : [];
|
|
23
|
+
const diffContent = context.diff ?? "";
|
|
24
|
+
// Analyze changes to determine type
|
|
25
|
+
const hasNewFile = diffContent.includes("new file mode");
|
|
26
|
+
const hasDeletedFile = diffContent.includes("deleted file mode");
|
|
27
|
+
const hasTest = filesChanged.some((f) => f.includes("test") || f.includes("spec"));
|
|
28
|
+
const hasDocument = filesChanged.some((f) => f.includes("README") || f.includes(".md") || f.includes("doc"));
|
|
29
|
+
const hasSource = filesChanged.some((f) => f.includes("src/") || f.includes("lib/"));
|
|
30
|
+
const hasConfig = filesChanged.some((f) => f.includes("config") || f.includes(".json") || f.includes(".yml"));
|
|
31
|
+
// Determine type based on changes
|
|
32
|
+
let type = "chore";
|
|
33
|
+
if (hasNewFile && hasSource) {
|
|
34
|
+
type = "feat";
|
|
35
|
+
}
|
|
36
|
+
else if (hasDocument) {
|
|
37
|
+
type = "docs";
|
|
38
|
+
}
|
|
39
|
+
else if (hasTest) {
|
|
40
|
+
type = "test";
|
|
41
|
+
}
|
|
42
|
+
else if (hasSource && !hasNewFile) {
|
|
43
|
+
type = "fix";
|
|
44
|
+
}
|
|
45
|
+
else if (hasConfig) {
|
|
46
|
+
// eslint-disable-next-line @elsikora/sonar/no-redundant-assignments
|
|
47
|
+
type = "chore";
|
|
48
|
+
}
|
|
49
|
+
// Ensure type is in allowed enum
|
|
50
|
+
if (context.typeEnum && !context.typeEnum.includes(type)) {
|
|
51
|
+
type = context.typeEnum[0] ?? "feat";
|
|
52
|
+
}
|
|
53
|
+
// Determine scope from files - ALWAYS provide scope (scope-empty: never)
|
|
54
|
+
let scope = "core"; // Default scope if nothing else works
|
|
55
|
+
if (filesChanged.length > 0) {
|
|
56
|
+
const firstFile = filesChanged[0] ?? "";
|
|
57
|
+
const parts = firstFile.split("/");
|
|
58
|
+
if (parts.length > 1) {
|
|
59
|
+
// Take first directory as scope
|
|
60
|
+
const rawScope = parts[0]?.replace(/^\.+/, "").replaceAll(/[^\w-]/g, "-");
|
|
61
|
+
if (rawScope && rawScope.length > 0) {
|
|
62
|
+
scope = rawScope;
|
|
63
|
+
}
|
|
64
|
+
else if (parts.length > 1) {
|
|
65
|
+
// Try second part
|
|
66
|
+
const secondScope = parts[1]?.replaceAll(/[^\w-]/g, "-");
|
|
67
|
+
if (secondScope && secondScope.length > 0) {
|
|
68
|
+
scope = secondScope;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
else if (parts[0]) {
|
|
73
|
+
// Single file without directory - use filename without extension
|
|
74
|
+
const filename = parts[0].split(".")[0] ?? "core";
|
|
75
|
+
const cleanFilename = filename.replaceAll(/[^\w-]/g, "-");
|
|
76
|
+
if (cleanFilename && cleanFilename.length > 0) {
|
|
77
|
+
scope = cleanFilename;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// Apply scope transformations
|
|
81
|
+
// Always lowercase (scope-case: lower-case)
|
|
82
|
+
scope = scope.toLowerCase();
|
|
83
|
+
// Apply scope max length (default 30)
|
|
84
|
+
const scopeMaxLength = this.extractRuleValue(context.rules, "scope-max-length") || 30;
|
|
85
|
+
if (scope.length > scopeMaxLength) {
|
|
86
|
+
scope = scope.slice(0, scopeMaxLength);
|
|
87
|
+
}
|
|
88
|
+
// Remove trailing/leading dashes
|
|
89
|
+
scope = scope.replaceAll(/^-+|-+$/g, "");
|
|
90
|
+
// If scope is empty after cleaning, use default
|
|
91
|
+
if (!scope || scope.length === 0) {
|
|
92
|
+
scope = "core";
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
// Generate subject - ALWAYS lowercase (subject-case: lower-case)
|
|
96
|
+
let subject = "";
|
|
97
|
+
if (hasNewFile) {
|
|
98
|
+
const lastFile = filesChanged.at(-1);
|
|
99
|
+
const fileName = lastFile ? lastFile.split("/").pop() : "files";
|
|
100
|
+
subject = filesChanged.length > 1 ? `add ${filesChanged.length} new files` : `add ${fileName}`;
|
|
101
|
+
}
|
|
102
|
+
else if (hasDeletedFile) {
|
|
103
|
+
subject = "remove obsolete files";
|
|
104
|
+
}
|
|
105
|
+
else if (hasDocument) {
|
|
106
|
+
subject = "update documentation";
|
|
107
|
+
}
|
|
108
|
+
else if (hasTest) {
|
|
109
|
+
subject = "update tests";
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
subject = "update implementation";
|
|
113
|
+
}
|
|
114
|
+
// ALWAYS apply lowercase (subject-case: lower-case)
|
|
115
|
+
subject = subject.toLowerCase();
|
|
116
|
+
// Apply subject length rules (subject-max-length: 80, subject-min-length: 3)
|
|
117
|
+
const subjectMaxLength = context.subject.maxLength || 80;
|
|
118
|
+
const subjectMinLength = context.subject.minLength || 3;
|
|
119
|
+
// Ensure minimum length first
|
|
120
|
+
if (subject.length < subjectMinLength) {
|
|
121
|
+
subject = subject + " with changes";
|
|
122
|
+
}
|
|
123
|
+
// Then apply max length (header-max-length includes type + scope, so be conservative)
|
|
124
|
+
if (subject.length > subjectMaxLength) {
|
|
125
|
+
subject = subject.slice(0, subjectMaxLength);
|
|
126
|
+
}
|
|
127
|
+
// Remove any trailing periods (subject-full-stop: never)
|
|
128
|
+
subject = subject.replace(/\.+$/, "");
|
|
129
|
+
// Ensure the complete header doesn't exceed limits (header-max-length: 100)
|
|
130
|
+
// Format: type(scope): subject
|
|
131
|
+
const headerLength = type.length + scope.length + subject.length + 4; // 4 for "(", ")", ":", " "
|
|
132
|
+
if (headerLength > 100) {
|
|
133
|
+
// Reduce subject length to fit
|
|
134
|
+
const availableForSubject = 100 - type.length - scope.length - 4;
|
|
135
|
+
subject = subject.slice(0, Math.max(availableForSubject, subjectMinLength));
|
|
136
|
+
}
|
|
137
|
+
// Final check for header minimum length (header-min-length: 10)
|
|
138
|
+
if (headerLength < 10) {
|
|
139
|
+
subject = subject + " changes";
|
|
140
|
+
}
|
|
141
|
+
// Generate body (optional, but with strict formatting rules)
|
|
142
|
+
// body-full-stop: always "."
|
|
143
|
+
// body-max-line-length: 100
|
|
144
|
+
// body-leading-blank: always (handled by CommitMessage.toString())
|
|
145
|
+
let body;
|
|
146
|
+
if (filesChanged.length > 0 && filesChanged.length <= 10) {
|
|
147
|
+
// Only add body for reasonable number of files
|
|
148
|
+
const filesList = filesChanged
|
|
149
|
+
.slice(0, 5)
|
|
150
|
+
.map((f) => `- ${f}`)
|
|
151
|
+
.join("\n");
|
|
152
|
+
body = `modified files:\n${filesList}`;
|
|
153
|
+
if (filesChanged.length > 5) {
|
|
154
|
+
body += `\n- and ${filesChanged.length - 5} more files`;
|
|
155
|
+
}
|
|
156
|
+
// Add trailing period (body-full-stop: always)
|
|
157
|
+
if (!body.endsWith(".")) {
|
|
158
|
+
body += ".";
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
// Create commit message
|
|
162
|
+
const header = new commitHeader_valueObject.CommitHeader(type, subject, scope);
|
|
163
|
+
const commitBody = new commitBody_valueObject.CommitBody(body);
|
|
164
|
+
const commitMessage = new commitMessage_entity.CommitMessage(header, commitBody);
|
|
165
|
+
process.stdout.write(`🎭 Mock generated commit message:\n${commitMessage.toString()}\n\n`);
|
|
166
|
+
return commitMessage;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Check if the service supports the given configuration
|
|
170
|
+
* Mock service supports all providers when MOCK_LLM is enabled
|
|
171
|
+
* @param {LLMConfiguration} _configuration - The LLM configuration (unused)
|
|
172
|
+
* @returns {boolean} True if mock mode is enabled
|
|
173
|
+
*/
|
|
174
|
+
supports(_configuration) {
|
|
175
|
+
return this.isMockEnabled();
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Extract a numeric value from commitlint rules
|
|
179
|
+
* @param {unknown} rules - The commitlint rules
|
|
180
|
+
* @param {string} ruleName - The name of the rule to extract
|
|
181
|
+
* @returns {number | undefined} The numeric value or undefined
|
|
182
|
+
*/
|
|
183
|
+
extractRuleValue(rules, ruleName) {
|
|
184
|
+
if (!Array.isArray(rules)) {
|
|
185
|
+
return undefined;
|
|
186
|
+
}
|
|
187
|
+
const rule = rules.find((r) => Array.isArray(r) && r[0] === ruleName);
|
|
188
|
+
if (rule && Array.isArray(rule) && rule.length > 2 && typeof rule[2] === "number") {
|
|
189
|
+
return rule[2];
|
|
190
|
+
}
|
|
191
|
+
return undefined;
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Check if mock mode is enabled via environment variable
|
|
195
|
+
* @returns {boolean} True if MOCK_LLM environment variable is set to "true" or "1"
|
|
196
|
+
*/
|
|
197
|
+
isMockEnabled() {
|
|
198
|
+
return process.env.MOCK_LLM === "true" || process.env.MOCK_LLM === "1";
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
exports.MockLlmService = MockLlmService;
|
|
203
|
+
//# sourceMappingURL=mock-llm.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-llm.service.js","sources":["../../../../../src/infrastructure/llm/mock-llm.service.ts"],"sourcesContent":[null],"names":["CommitHeader","CommitBody","CommitMessage"],"mappings":"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"}
|
|
@@ -11,6 +11,13 @@ export declare class CommitizenAdapter {
|
|
|
11
11
|
* @param {TCommit} commit - Callback to execute with complete commit message
|
|
12
12
|
*/
|
|
13
13
|
prompter(_inquirerIns: unknown, commit: TCommit): Promise<void>;
|
|
14
|
+
/**
|
|
15
|
+
* Execute commit or simulate it in mock mode
|
|
16
|
+
* @param {TCommit} commit - Callback to execute with complete commit message
|
|
17
|
+
* @param {string} message - The commit message to use
|
|
18
|
+
* @param {ICliInterfaceService} cliInterface - CLI interface for user interaction
|
|
19
|
+
*/
|
|
20
|
+
private executeCommit;
|
|
14
21
|
/**
|
|
15
22
|
* Extract LLM prompt context from commitlint rules and prompts
|
|
16
23
|
* @param {QualifiedRules} rules - The commitlint rules
|
|
@@ -32,10 +32,11 @@ class CommitizenAdapter {
|
|
|
32
32
|
const generateCommitUseCase = this.CONTAINER.get(container.GenerateCommitMessageUseCaseToken);
|
|
33
33
|
const validateCommitUseCase = this.CONTAINER.get(container.ValidateCommitMessageUseCaseToken);
|
|
34
34
|
const manualCommitUseCase = this.CONTAINER.get(container.ManualCommitUseCaseToken);
|
|
35
|
+
const editCommitUseCase = this.CONTAINER.get(container.EditCommitUseCaseToken);
|
|
35
36
|
const cliInterface = this.CONTAINER.get(container.CliInterfaceServiceToken);
|
|
36
37
|
const commitRepository = this.CONTAINER.get(container.CommitRepositoryToken);
|
|
37
38
|
const configService = this.CONTAINER.get(container.ConfigServiceToken);
|
|
38
|
-
if (!configureLLMUseCase || !generateCommitUseCase || !validateCommitUseCase || !manualCommitUseCase || !cliInterface || !commitRepository || !configService) {
|
|
39
|
+
if (!configureLLMUseCase || !generateCommitUseCase || !validateCommitUseCase || !manualCommitUseCase || !editCommitUseCase || !cliInterface || !commitRepository || !configService) {
|
|
39
40
|
throw new Error("Failed to initialize required services");
|
|
40
41
|
}
|
|
41
42
|
// Extract context from commitlint config
|
|
@@ -125,7 +126,7 @@ class CommitizenAdapter {
|
|
|
125
126
|
if (llmConfig.isManualMode()) {
|
|
126
127
|
cliInterface.info("Using manual commit mode...");
|
|
127
128
|
const commitMessage = await manualCommitUseCase.execute(promptContext);
|
|
128
|
-
commit
|
|
129
|
+
this.executeCommit(commit, commitMessage.toString(), cliInterface);
|
|
129
130
|
return;
|
|
130
131
|
}
|
|
131
132
|
// Auto mode - set LLM configuration on validator if it supports it
|
|
@@ -169,7 +170,7 @@ class CommitizenAdapter {
|
|
|
169
170
|
if (!validatedMessage) {
|
|
170
171
|
cliInterface.warn("Could not generate a valid commit message. Switching to manual mode...");
|
|
171
172
|
const commitMessage = await manualCommitUseCase.execute(promptContext);
|
|
172
|
-
commit
|
|
173
|
+
this.executeCommit(commit, commitMessage.toString(), cliInterface);
|
|
173
174
|
return;
|
|
174
175
|
}
|
|
175
176
|
// Show the generated message
|
|
@@ -178,12 +179,12 @@ class CommitizenAdapter {
|
|
|
178
179
|
// Ask for confirmation
|
|
179
180
|
const isConfirmed = await cliInterface.confirm("Do you want to proceed with this commit message?", true);
|
|
180
181
|
if (isConfirmed) {
|
|
181
|
-
commit
|
|
182
|
+
this.executeCommit(commit, validatedMessage.toString(), cliInterface);
|
|
182
183
|
}
|
|
183
184
|
else {
|
|
184
|
-
cliInterface.info("
|
|
185
|
-
const
|
|
186
|
-
commit
|
|
185
|
+
cliInterface.info("Opening edit menu...");
|
|
186
|
+
const editedMessage = await editCommitUseCase.execute(validatedMessage, promptContext, llmConfig);
|
|
187
|
+
this.executeCommit(commit, editedMessage.toString(), cliInterface);
|
|
187
188
|
}
|
|
188
189
|
}
|
|
189
190
|
catch (error) {
|
|
@@ -196,7 +197,7 @@ class CommitizenAdapter {
|
|
|
196
197
|
}
|
|
197
198
|
cliInterface.warn("Falling back to manual commit entry...");
|
|
198
199
|
const commitMessage = await manualCommitUseCase.execute(promptContext);
|
|
199
|
-
commit
|
|
200
|
+
this.executeCommit(commit, commitMessage.toString(), cliInterface);
|
|
200
201
|
}
|
|
201
202
|
}
|
|
202
203
|
catch (error) {
|
|
@@ -207,6 +208,23 @@ class CommitizenAdapter {
|
|
|
207
208
|
throw error;
|
|
208
209
|
}
|
|
209
210
|
}
|
|
211
|
+
/**
|
|
212
|
+
* Execute commit or simulate it in mock mode
|
|
213
|
+
* @param {TCommit} commit - Callback to execute with complete commit message
|
|
214
|
+
* @param {string} message - The commit message to use
|
|
215
|
+
* @param {ICliInterfaceService} cliInterface - CLI interface for user interaction
|
|
216
|
+
*/
|
|
217
|
+
executeCommit(commit, message, cliInterface) {
|
|
218
|
+
const isMockMode = process.env.MOCK_LLM === "true" || process.env.MOCK_LLM === "1";
|
|
219
|
+
if (isMockMode) {
|
|
220
|
+
cliInterface.success("🎭 Mock mode: Commit NOT executed (MOCK_LLM=true)");
|
|
221
|
+
cliInterface.note("Final commit message that would be used:", message);
|
|
222
|
+
cliInterface.info("In mock mode, staged files remain in staging area for manual cleanup");
|
|
223
|
+
}
|
|
224
|
+
else {
|
|
225
|
+
commit(message);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
210
228
|
/**
|
|
211
229
|
* Extract LLM prompt context from commitlint rules and prompts
|
|
212
230
|
* @param {QualifiedRules} rules - The commitlint rules
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commitizen.adapter.js","sources":["../../../../src/presentation/commitizen.adapter.ts"],"sourcesContent":[null],"names":["createAppContainer","ConfigureLLMUseCaseToken","GenerateCommitMessageUseCaseToken","ValidateCommitMessageUseCaseToken","ManualCommitUseCaseToken","CliInterfaceServiceToken","CommitRepositoryToken","ConfigServiceToken","ECommitMode","LLMConfiguration","ApiKey","DEFAULT_MAX_RETRIES","DEFAULT_VALIDATION_MAX_RETRIES","CommitValidatorToken","CommitlintValidatorService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commitizen.adapter.js","sources":["../../../../src/presentation/commitizen.adapter.ts"],"sourcesContent":[null],"names":["createAppContainer","ConfigureLLMUseCaseToken","GenerateCommitMessageUseCaseToken","ValidateCommitMessageUseCaseToken","ManualCommitUseCaseToken","EditCommitUseCaseToken","CliInterfaceServiceToken","CommitRepositoryToken","ConfigServiceToken","ECommitMode","LLMConfiguration","ApiKey","DEFAULT_MAX_RETRIES","DEFAULT_VALIDATION_MAX_RETRIES","CommitValidatorToken","CommitlintValidatorService"],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { LLMConfiguration } from '../../domain/entity/llm-configuration.entity';
|
|
2
|
+
import type { ICliInterfaceService } from '../interface/cli-interface-service.interface';
|
|
3
|
+
import type { ICommitValidator } from '../interface/commit-validator.interface';
|
|
4
|
+
import type { ILlmPromptContext } from '../interface/llm-service.interface';
|
|
5
|
+
import type { ILlmService } from '../interface/llm-service.interface';
|
|
6
|
+
import { CommitMessage } from '../../domain/entity/commit-message.entity';
|
|
7
|
+
/**
|
|
8
|
+
* Use case for editing existing commit messages with point editing capabilities
|
|
9
|
+
*/
|
|
10
|
+
export declare class EditCommitUseCase {
|
|
11
|
+
private readonly CLI_INTERFACE;
|
|
12
|
+
private readonly LLM_SERVICES;
|
|
13
|
+
private readonly VALIDATOR;
|
|
14
|
+
constructor(cliInterface: ICliInterfaceService, validator: ICommitValidator, llmServices: Array<ILlmService>);
|
|
15
|
+
/**
|
|
16
|
+
* Execute the commit editing workflow
|
|
17
|
+
* @param {CommitMessage} commitMessage - The initial commit message to edit
|
|
18
|
+
* @param {ILlmPromptContext} context - The LLM prompt context
|
|
19
|
+
* @param {LLMConfiguration | undefined} llmConfig - Optional LLM configuration for regeneration
|
|
20
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the edited commit message
|
|
21
|
+
*/
|
|
22
|
+
execute(commitMessage: CommitMessage, context: ILlmPromptContext, llmConfig?: LLMConfiguration): Promise<CommitMessage>;
|
|
23
|
+
/**
|
|
24
|
+
* Handle changing commit body
|
|
25
|
+
* @param {CommitMessage} commitMessage - The current commit message
|
|
26
|
+
* @param {ILlmPromptContext} context - The LLM prompt context
|
|
27
|
+
* @param {LLMConfiguration | undefined} llmConfig - Optional LLM configuration
|
|
28
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the edited commit message
|
|
29
|
+
*/
|
|
30
|
+
private handleChangeBody;
|
|
31
|
+
/**
|
|
32
|
+
* Handle changing commit scope
|
|
33
|
+
* @param {CommitMessage} commitMessage - The current commit message
|
|
34
|
+
* @param {ILlmPromptContext} context - The LLM prompt context
|
|
35
|
+
* @param {LLMConfiguration | undefined} llmConfig - Optional LLM configuration
|
|
36
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the edited commit message
|
|
37
|
+
*/
|
|
38
|
+
private handleChangeScope;
|
|
39
|
+
/**
|
|
40
|
+
* Handle changing commit subject
|
|
41
|
+
* @param {CommitMessage} commitMessage - The current commit message
|
|
42
|
+
* @param {ILlmPromptContext} context - The LLM prompt context
|
|
43
|
+
* @param {LLMConfiguration | undefined} llmConfig - Optional LLM configuration
|
|
44
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the edited commit message
|
|
45
|
+
*/
|
|
46
|
+
private handleChangeSubject;
|
|
47
|
+
/**
|
|
48
|
+
* Handle changing commit type
|
|
49
|
+
* @param {CommitMessage} commitMessage - The current commit message
|
|
50
|
+
* @param {ILlmPromptContext} context - The LLM prompt context
|
|
51
|
+
* @param {LLMConfiguration | undefined} llmConfig - Optional LLM configuration
|
|
52
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the edited commit message
|
|
53
|
+
*/
|
|
54
|
+
private handleChangeType;
|
|
55
|
+
/**
|
|
56
|
+
* Handle AI regeneration of commit message
|
|
57
|
+
* @param {ILlmPromptContext} context - The LLM prompt context
|
|
58
|
+
* @param {LLMConfiguration} llmConfig - The LLM configuration
|
|
59
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the regenerated commit message
|
|
60
|
+
*/
|
|
61
|
+
private handleRegenerate;
|
|
62
|
+
/**
|
|
63
|
+
* Handle toggling breaking change status
|
|
64
|
+
* @param {CommitMessage} commitMessage - The current commit message
|
|
65
|
+
* @param {ILlmPromptContext} context - The LLM prompt context
|
|
66
|
+
* @param {LLMConfiguration | undefined} llmConfig - Optional LLM configuration
|
|
67
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the edited commit message
|
|
68
|
+
*/
|
|
69
|
+
private handleToggleBreaking;
|
|
70
|
+
/**
|
|
71
|
+
* Handle toggling footer/issues
|
|
72
|
+
* @param {CommitMessage} commitMessage - The current commit message
|
|
73
|
+
* @param {ILlmPromptContext} context - The LLM prompt context
|
|
74
|
+
* @param {LLMConfiguration | undefined} llmConfig - Optional LLM configuration
|
|
75
|
+
* @returns {Promise<CommitMessage>} Promise resolving to the edited commit message
|
|
76
|
+
*/
|
|
77
|
+
private handleToggleFooter;
|
|
78
|
+
}
|