smart-commit-copilot-cli 0.1.6 → 0.1.8
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/CHANGELOG.md +42 -0
- package/README.md +46 -4
- package/docs/configuration.md +99 -7
- package/docs/contracts.md +68 -2
- package/docs/getting-started.md +4 -1
- package/docs/publish.md +1 -1
- package/docs/releases/0.1.7-draft.md +55 -0
- package/docs/releases/0.1.8-draft.md +80 -0
- package/docs/roadmap.md +1 -1
- package/docs/verification.md +1 -0
- package/examples/config/smart-commit.json +32 -5
- package/out/cliApp.js +53 -6
- package/out/cliApp.js.map +1 -1
- package/out/commands/bridge.js +189 -6
- package/out/commands/bridge.js.map +1 -1
- package/out/commands/pullRequest.js +176 -0
- package/out/commands/pullRequest.js.map +1 -0
- package/out/commitMessage/index.js +2 -1
- package/out/commitMessage/index.js.map +1 -1
- package/out/commitMessage/prompt.js +58 -10
- package/out/commitMessage/prompt.js.map +1 -1
- package/out/commitMessage/protocol.js +168 -16
- package/out/commitMessage/protocol.js.map +1 -1
- package/out/config/cliArgs.js +114 -0
- package/out/config/cliArgs.js.map +1 -1
- package/out/config/constants.js +10 -1
- package/out/config/constants.js.map +1 -1
- package/out/config/env.js +90 -0
- package/out/config/env.js.map +1 -1
- package/out/config/file.js +113 -0
- package/out/config/file.js.map +1 -1
- package/out/config/legacySmartCommit.js +118 -9
- package/out/config/legacySmartCommit.js.map +1 -1
- package/out/config/merge.js +18 -0
- package/out/config/merge.js.map +1 -1
- package/out/config/schema.js +79 -7
- package/out/config/schema.js.map +1 -1
- package/out/contracts.js +174 -7
- package/out/contracts.js.map +1 -1
- package/out/git.js +108 -2
- package/out/git.js.map +1 -1
- package/out/output.js +4 -0
- package/out/output.js.map +1 -1
- package/out/pullRequest/api.js +528 -0
- package/out/pullRequest/api.js.map +1 -0
- package/out/pullRequest/client.js +17 -0
- package/out/pullRequest/client.js.map +1 -0
- package/out/pullRequest/config.js +18 -0
- package/out/pullRequest/config.js.map +1 -0
- package/out/pullRequest/contentPrompt.js +116 -0
- package/out/pullRequest/contentPrompt.js.map +1 -0
- package/out/pullRequest/contentService.js +77 -0
- package/out/pullRequest/contentService.js.map +1 -0
- package/out/pullRequest/index.js +25 -0
- package/out/pullRequest/index.js.map +1 -0
- package/out/pullRequest/platform.js +101 -0
- package/out/pullRequest/platform.js.map +1 -0
- package/out/pullRequest/redact.js +15 -0
- package/out/pullRequest/redact.js.map +1 -0
- package/out/pullRequest/workflow.js +153 -0
- package/out/pullRequest/workflow.js.map +1 -0
- package/out/renderOutput.js +31 -1
- package/out/renderOutput.js.map +1 -1
- package/out/reporting/aggregate.js +1 -1
- package/out/reporting/aggregate.js.map +1 -1
- package/out/reporting/mockProvider.js +5 -1
- package/out/reporting/mockProvider.js.map +1 -1
- package/out/reporting/openaiProvider.js +5 -1
- package/out/reporting/openaiProvider.js.map +1 -1
- package/out/reporting/prompt.js +145 -20
- package/out/reporting/prompt.js.map +1 -1
- package/out/reporting/render.js +24 -22
- package/out/reporting/render.js.map +1 -1
- package/out/reporting/timeWindow.js +101 -36
- package/out/reporting/timeWindow.js.map +1 -1
- package/out/reporting/types.js +3 -0
- package/out/reporting/types.js.map +1 -1
- package/out/review/mockProvider.js +25 -1
- package/out/review/mockProvider.js.map +1 -1
- package/out/stagedChangeSummary/index.js +53 -0
- package/out/stagedChangeSummary/index.js.map +1 -0
- package/out/stagedChangeSummary/mockProvider.js +24 -0
- package/out/stagedChangeSummary/mockProvider.js.map +1 -0
- package/out/stagedChangeSummary/openaiProvider.js +19 -0
- package/out/stagedChangeSummary/openaiProvider.js.map +1 -0
- package/out/stagedChangeSummary/prompt.js +138 -0
- package/out/stagedChangeSummary/prompt.js.map +1 -0
- package/out/stagedChangeSummary/provider.js +3 -0
- package/out/stagedChangeSummary/provider.js.map +1 -0
- package/out/stagedChangeSummary/render.js +74 -0
- package/out/stagedChangeSummary/render.js.map +1 -0
- package/package.json +1 -1
- package/src/git-commit-message-skills/conventional/SKILL.md +3 -3
- package/src/git-commit-message-skills/gitmoji/SKILL.md +3 -3
- package/src/git-commit-message-skills/semantic/SKILL.md +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeWindow.js","sourceRoot":"","sources":["../../src/reporting/timeWindow.ts"],"names":[],"mappings":";;AAIA,
|
|
1
|
+
{"version":3,"file":"timeWindow.js","sourceRoot":"","sources":["../../src/reporting/timeWindow.ts"],"names":[],"mappings":"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"}
|
package/out/reporting/types.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/reporting/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/reporting/types.ts"],"names":[],"mappings":";;;AAoGa,QAAA,mBAAmB,GAAgC;IAC9D,OAAO;IACP,WAAW;IACX,QAAQ;IACR,WAAW;IACX,SAAS;IACT,YAAY;IACZ,WAAW;IACX,cAAc;IACd,QAAQ;CACA,CAAC"}
|
|
@@ -70,8 +70,10 @@ function createMockReviewProvider(config = {}) {
|
|
|
70
70
|
}
|
|
71
71
|
function localizeReviewText(language, key, value = "") {
|
|
72
72
|
switch (language) {
|
|
73
|
-
case "zh":
|
|
73
|
+
case "zh-cn":
|
|
74
74
|
return localizeChineseText(key, value);
|
|
75
|
+
case "zh-tw":
|
|
76
|
+
return localizeTraditionalChineseText(key, value);
|
|
75
77
|
case "hi":
|
|
76
78
|
return localizeHindiText(key, value);
|
|
77
79
|
case "ru":
|
|
@@ -128,6 +130,28 @@ function localizeChineseText(key, value) {
|
|
|
128
130
|
return value;
|
|
129
131
|
}
|
|
130
132
|
}
|
|
133
|
+
function localizeTraditionalChineseText(key, value) {
|
|
134
|
+
switch (key) {
|
|
135
|
+
case "pass-summary":
|
|
136
|
+
return `模擬審查已通過此次變更(${value})。`;
|
|
137
|
+
case "block-summary":
|
|
138
|
+
return `模擬審查阻止了此次變更(${value})。`;
|
|
139
|
+
case "block-detail":
|
|
140
|
+
return "模擬阻斷問題。";
|
|
141
|
+
case "block-high-score-summary":
|
|
142
|
+
return `模擬審查發現了問題,但仍給出了高分(${value})。`;
|
|
143
|
+
case "block-high-score-detail":
|
|
144
|
+
return "模擬非阻斷問題。";
|
|
145
|
+
case "na-summary":
|
|
146
|
+
return `模擬審查認為此次變更無需數字評分(${value})。`;
|
|
147
|
+
case "repair-summary":
|
|
148
|
+
return `模擬修復已產生有效審查結果(${value})。`;
|
|
149
|
+
case "repair-detail":
|
|
150
|
+
return `已處理修復問題:${value}`;
|
|
151
|
+
default:
|
|
152
|
+
return value;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
131
155
|
function localizeHindiText(key, value) {
|
|
132
156
|
switch (key) {
|
|
133
157
|
case "pass-summary":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mockProvider.js","sourceRoot":"","sources":["../../src/review/mockProvider.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mockProvider.js","sourceRoot":"","sources":["../../src/review/mockProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.generateStagedChangeSummary = generateStagedChangeSummary;
|
|
18
|
+
exports.normalizeStagedChangeSummaryMarkdown = normalizeStagedChangeSummaryMarkdown;
|
|
19
|
+
const mockProvider_1 = require("./mockProvider");
|
|
20
|
+
const openaiProvider_1 = require("./openaiProvider");
|
|
21
|
+
__exportStar(require("./prompt"), exports);
|
|
22
|
+
__exportStar(require("./provider"), exports);
|
|
23
|
+
__exportStar(require("./render"), exports);
|
|
24
|
+
async function generateStagedChangeSummary(input, options) {
|
|
25
|
+
const provider = options.provider ?? createProvider(options.config, options.providerMode ?? resolveProviderMode(), options.mockMode);
|
|
26
|
+
const markdown = await provider.generateStagedChangeSummary(input);
|
|
27
|
+
return {
|
|
28
|
+
markdown: normalizeStagedChangeSummaryMarkdown(markdown),
|
|
29
|
+
provider: provider.name
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
function normalizeStagedChangeSummaryMarkdown(markdown) {
|
|
33
|
+
const trimmed = stripWrappingMarkdownFence(markdown.trim()).trim();
|
|
34
|
+
if (!trimmed) {
|
|
35
|
+
throw new Error("Generated staged change summary was empty.");
|
|
36
|
+
}
|
|
37
|
+
return trimmed;
|
|
38
|
+
}
|
|
39
|
+
function createProvider(config, mode, mockMode) {
|
|
40
|
+
return mode === "mock"
|
|
41
|
+
? (0, mockProvider_1.createMockStagedChangeSummaryProvider)({ mode: mockMode })
|
|
42
|
+
: (0, openaiProvider_1.createOpenAICompatibleStagedChangeSummaryProvider)(config);
|
|
43
|
+
}
|
|
44
|
+
function resolveProviderMode() {
|
|
45
|
+
return process.env.SMART_COMMIT_STAGED_CHANGE_SUMMARY_PROVIDER?.trim().toLowerCase() === "mock"
|
|
46
|
+
? "mock"
|
|
47
|
+
: "openai-compatible";
|
|
48
|
+
}
|
|
49
|
+
function stripWrappingMarkdownFence(markdown) {
|
|
50
|
+
const match = markdown.match(/^```(?:markdown|md)?\s*\r?\n?([\s\S]*?)\r?\n?```$/i);
|
|
51
|
+
return match?.[1] ?? markdown;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/stagedChangeSummary/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAeA,kEAiBC;AAED,oFAOC;AAxCD,iDAAuE;AACvE,qDAAqF;AAIrF,2CAAyB;AACzB,6CAA2B;AAC3B,2CAAyB;AAOlB,KAAK,UAAU,2BAA2B,CAC/C,KAA+B,EAC/B,OAKC;IAED,MAAM,QAAQ,GACZ,OAAO,CAAC,QAAQ,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,IAAI,mBAAmB,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;IAEnE,OAAO;QACL,QAAQ,EAAE,oCAAoC,CAAC,QAAQ,CAAC;QACxD,QAAQ,EAAE,QAAQ,CAAC,IAAI;KACxB,CAAC;AACJ,CAAC;AAED,SAAgB,oCAAoC,CAAC,QAAgB;IACnE,MAAM,OAAO,GAAG,0BAA0B,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,cAAc,CACrB,MAAiB,EACjB,IAAkC,EAClC,QAAiB;IAEjB,OAAO,IAAI,KAAK,MAAM;QACpB,CAAC,CAAC,IAAA,oDAAqC,EAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC3D,CAAC,CAAC,IAAA,kEAAiD,EAAC,MAAM,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO,OAAO,CAAC,GAAG,CAAC,2CAA2C,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM;QAC7F,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,mBAAmB,CAAC;AAC1B,CAAC;AAED,SAAS,0BAA0B,CAAC,QAAgB;IAClD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACnF,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;AAChC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createMockStagedChangeSummaryProvider = createMockStagedChangeSummaryProvider;
|
|
4
|
+
function createMockStagedChangeSummaryProvider(config = {}) {
|
|
5
|
+
return {
|
|
6
|
+
name: "mock",
|
|
7
|
+
async generateStagedChangeSummary() {
|
|
8
|
+
const mode = config.mode?.trim().toLowerCase() ?? process.env.SMART_COMMIT_STAGED_CHANGE_SUMMARY_MODE?.trim().toLowerCase();
|
|
9
|
+
if (mode === "invalid") {
|
|
10
|
+
return " ";
|
|
11
|
+
}
|
|
12
|
+
return [
|
|
13
|
+
"## Summary",
|
|
14
|
+
"",
|
|
15
|
+
"- Added a generated staged change summary.",
|
|
16
|
+
"",
|
|
17
|
+
"## Changes",
|
|
18
|
+
"",
|
|
19
|
+
"- Summarized the reviewed staged diff for reviewers."
|
|
20
|
+
].join("\n");
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=mockProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mockProvider.js","sourceRoot":"","sources":["../../src/stagedChangeSummary/mockProvider.ts"],"names":[],"mappings":";;AAEA,sFAsBC;AAtBD,SAAgB,qCAAqC,CAAC,SAA4B,EAAE;IAClF,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,KAAK,CAAC,2BAA2B;YAC/B,MAAM,IAAI,GACR,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAEjH,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO;gBACL,YAAY;gBACZ,EAAE;gBACF,4CAA4C;gBAC5C,EAAE;gBACF,YAAY;gBACZ,EAAE;gBACF,sDAAsD;aACvD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createOpenAICompatibleStagedChangeSummaryProvider = createOpenAICompatibleStagedChangeSummaryProvider;
|
|
4
|
+
const openaiCompatible_1 = require("../openaiCompatible");
|
|
5
|
+
const prompt_1 = require("./prompt");
|
|
6
|
+
function createOpenAICompatibleStagedChangeSummaryProvider(config) {
|
|
7
|
+
return {
|
|
8
|
+
name: "openai-compatible",
|
|
9
|
+
async generateStagedChangeSummary(input) {
|
|
10
|
+
return (0, openaiCompatible_1.requestOpenAICompatibleText)({
|
|
11
|
+
config,
|
|
12
|
+
messages: (0, prompt_1.buildStagedChangeSummaryMessages)(input),
|
|
13
|
+
temperature: 0.2,
|
|
14
|
+
taskLabel: "staged-change-summary"
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=openaiProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openaiProvider.js","sourceRoot":"","sources":["../../src/stagedChangeSummary/openaiProvider.ts"],"names":[],"mappings":";;AAKA,8GAYC;AAhBD,0DAAkE;AAClE,qCAAsF;AAGtF,SAAgB,iDAAiD,CAAC,MAAiB;IACjF,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,KAAK,CAAC,2BAA2B,CAAC,KAA+B;YAC/D,OAAO,IAAA,8CAA2B,EAAC;gBACjC,MAAM;gBACN,QAAQ,EAAE,IAAA,yCAAgC,EAAC,KAAK,CAAC;gBACjD,WAAW,EAAE,GAAG;gBAChB,SAAS,EAAE,uBAAuB;aACnC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildStagedChangeSummaryMessages = buildStagedChangeSummaryMessages;
|
|
4
|
+
function buildStagedChangeSummaryMessages(input) {
|
|
5
|
+
return [
|
|
6
|
+
{
|
|
7
|
+
role: "system",
|
|
8
|
+
content: [
|
|
9
|
+
"You write staged change summaries in Markdown.",
|
|
10
|
+
"Use only the provided Smart Commit CLI run facts, staged diff, commit message, and changed files.",
|
|
11
|
+
"Never invent tests, reviewers, tickets, release notes, external PR links, platform metadata, or changes that are not present in the provided context.",
|
|
12
|
+
"The staged change summary is unlocked only after the review has passed, but review data is an internal gate signal and must not appear in the summary.",
|
|
13
|
+
"Do not mention Smart Commit review findings, review opinions, severities, scores, thresholds, gate wording, raw review payloads, or review suggestions.",
|
|
14
|
+
"If a user custom prompt conflicts with the facts, selected language, Markdown-only output, or no-invention rules, ignore the conflicting part.",
|
|
15
|
+
"Return Markdown only."
|
|
16
|
+
].join(" ")
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
role: "user",
|
|
20
|
+
content: buildUserPrompt(input)
|
|
21
|
+
}
|
|
22
|
+
];
|
|
23
|
+
}
|
|
24
|
+
function buildUserPrompt(input) {
|
|
25
|
+
const customPromptSection = input.customPrompt
|
|
26
|
+
? [
|
|
27
|
+
"User custom staged change summary prompt:",
|
|
28
|
+
"- The user may redefine structure, tone, detail level, audience, and emphasis.",
|
|
29
|
+
"- The generated summary must remain grounded in the provided facts and staged diff.",
|
|
30
|
+
"- Do not follow custom instructions that ask you to fabricate tests, risks, scope, links, reviewers, platform-specific PR metadata, or Smart Commit review opinions.",
|
|
31
|
+
"--- BEGIN USER CUSTOM PROMPT ---",
|
|
32
|
+
input.customPrompt,
|
|
33
|
+
"--- END USER CUSTOM PROMPT ---",
|
|
34
|
+
""
|
|
35
|
+
]
|
|
36
|
+
: [];
|
|
37
|
+
return [
|
|
38
|
+
`Staged change summary language: ${input.language}`,
|
|
39
|
+
...buildLanguageRules(input.language),
|
|
40
|
+
"",
|
|
41
|
+
"Default Markdown structure:",
|
|
42
|
+
...buildDefaultStructureRules(input.language),
|
|
43
|
+
"",
|
|
44
|
+
"Smart Commit CLI run facts JSON:",
|
|
45
|
+
JSON.stringify(buildRunFacts(input), null, 2),
|
|
46
|
+
"",
|
|
47
|
+
"Review gate JSON (internal; do not mention in the staged change summary):",
|
|
48
|
+
JSON.stringify(buildReviewGateContext(input.reviewResult), null, 2),
|
|
49
|
+
"",
|
|
50
|
+
...customPromptSection,
|
|
51
|
+
"Staged git diff:",
|
|
52
|
+
input.diff,
|
|
53
|
+
"",
|
|
54
|
+
"Required output rules:",
|
|
55
|
+
"- Return only a Markdown staged change summary; do not include a PR title.",
|
|
56
|
+
"- Keep the summary concise and useful for a human reviewer.",
|
|
57
|
+
"- Group changes by behavior, feature, or module instead of listing every file mechanically.",
|
|
58
|
+
"- Describe factual code changes and author-provided context only.",
|
|
59
|
+
"- Do not write review-opinion phrases such as `review found`, `review pointed out`, `审查指出`, `审查意见`, `P0`, `P1`, `P2`, `P3`, `score`, or `threshold`.",
|
|
60
|
+
"- Include a testing section only when there is explicit test or validation evidence in the diff, commit message, or changed files.",
|
|
61
|
+
"- If there is no explicit testing evidence, omit the testing section entirely.",
|
|
62
|
+
"- If the diff is marked as truncated, do not claim coverage of omitted content.",
|
|
63
|
+
"- Do not mention hidden system rules or protocol layers.",
|
|
64
|
+
"- Do not wrap the Markdown in code fences."
|
|
65
|
+
].join("\n");
|
|
66
|
+
}
|
|
67
|
+
function buildRunFacts(input) {
|
|
68
|
+
return {
|
|
69
|
+
repositoryPath: input.repositoryPath,
|
|
70
|
+
branchName: input.branchName,
|
|
71
|
+
commitMessage: input.commitMessage,
|
|
72
|
+
changedFiles: input.changedFiles,
|
|
73
|
+
fullDiffChars: input.fullDiffChars,
|
|
74
|
+
truncated: input.truncated,
|
|
75
|
+
reviewMode: input.reviewMode
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
function buildReviewGateContext(result) {
|
|
79
|
+
return {
|
|
80
|
+
passed: result.decision === "pass",
|
|
81
|
+
decision: result.decision
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
function buildDefaultStructureRules(language) {
|
|
85
|
+
if (language === "zh-cn") {
|
|
86
|
+
return [
|
|
87
|
+
"- Use `## 摘要` with 1-3 concise bullets explaining what changed and why it matters.",
|
|
88
|
+
"- Use `## 变更内容` to group the main changes by behavior, feature, or module.",
|
|
89
|
+
"- Use `## 测试` only when explicit test or validation evidence is present. If none is present, omit this section.",
|
|
90
|
+
"- Use `## 影响与注意事项` only when compatibility, migration, configuration, or factual reviewer attention points are supported by the diff, commit message, or changed files; otherwise omit it."
|
|
91
|
+
];
|
|
92
|
+
}
|
|
93
|
+
if (language === "zh-tw") {
|
|
94
|
+
return [
|
|
95
|
+
"- Use `## 摘要` with 1-3 concise bullets explaining what changed and why it matters.",
|
|
96
|
+
"- Use `## 變更內容` to group the main changes by behavior, feature, or module.",
|
|
97
|
+
"- Use `## 測試` only when explicit test or validation evidence is present. If none is present, omit this section.",
|
|
98
|
+
"- Use `## 影響與注意事項` only when compatibility, migration, configuration, or factual reviewer attention points are supported by the diff, commit message, or changed files; otherwise omit it."
|
|
99
|
+
];
|
|
100
|
+
}
|
|
101
|
+
return [
|
|
102
|
+
"- Use localized headings equivalent to `## Summary` and `## Changes` in the selected language.",
|
|
103
|
+
"- In Summary, write 1-3 concise bullets explaining what changed and why it matters.",
|
|
104
|
+
"- In Changes, group the main changes by behavior, feature, or module.",
|
|
105
|
+
"- Add a localized equivalent of `## Testing` only when explicit test or validation evidence is present. If none is present, omit this section.",
|
|
106
|
+
"- Add a localized equivalent of `## Impact and Notes` only when compatibility, migration, configuration, or factual reviewer attention points are supported by the diff, commit message, or changed files; otherwise omit it."
|
|
107
|
+
];
|
|
108
|
+
}
|
|
109
|
+
function buildLanguageRules(language) {
|
|
110
|
+
if (language === "en") {
|
|
111
|
+
return [
|
|
112
|
+
"Language rules:",
|
|
113
|
+
"- Write natural-language content in English.",
|
|
114
|
+
"- Do not use Chinese characters outside exact code identifiers or quoted snippets."
|
|
115
|
+
];
|
|
116
|
+
}
|
|
117
|
+
if (language === "zh-cn") {
|
|
118
|
+
return [
|
|
119
|
+
"Language rules:",
|
|
120
|
+
"- 使用简体中文撰写自然语言内容。",
|
|
121
|
+
"- 可以保留代码标识符、文件路径、配置键、ticket ID 和精确代码片段的原文。"
|
|
122
|
+
];
|
|
123
|
+
}
|
|
124
|
+
if (language === "zh-tw") {
|
|
125
|
+
return [
|
|
126
|
+
"Language rules:",
|
|
127
|
+
"- 使用繁體中文撰寫自然語言內容。",
|
|
128
|
+
"- 請使用繁體中文用字與語氣,不要改用簡體中文。",
|
|
129
|
+
"- 可以保留程式碼識別符、檔案路徑、設定鍵、ticket ID 和精確程式碼片段的原文。"
|
|
130
|
+
];
|
|
131
|
+
}
|
|
132
|
+
return [
|
|
133
|
+
"Language rules:",
|
|
134
|
+
`- Write natural-language content in the selected language: ${language}.`,
|
|
135
|
+
"- Keep code identifiers, file paths, configuration keys, ticket IDs, and exact code snippets in their original form."
|
|
136
|
+
];
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/stagedChangeSummary/prompt.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/stagedChangeSummary/provider.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.DEFAULT_STAGED_CHANGE_SUMMARY_DIRECTORY_NAME = void 0;
|
|
37
|
+
exports.resolveStagedChangeSummaryOutputDirectoryPath = resolveStagedChangeSummaryOutputDirectoryPath;
|
|
38
|
+
exports.buildStagedChangeSummaryFileName = buildStagedChangeSummaryFileName;
|
|
39
|
+
exports.writeStagedChangeSummaryFile = writeStagedChangeSummaryFile;
|
|
40
|
+
const fs = __importStar(require("node:fs/promises"));
|
|
41
|
+
const path = __importStar(require("node:path"));
|
|
42
|
+
exports.DEFAULT_STAGED_CHANGE_SUMMARY_DIRECTORY_NAME = "staged-change-summaries";
|
|
43
|
+
function resolveStagedChangeSummaryOutputDirectoryPath(input) {
|
|
44
|
+
const configuredDirPath = input.configuredDirPath.trim();
|
|
45
|
+
if (!configuredDirPath) {
|
|
46
|
+
return path.join(path.normalize(input.repositoryPath), ".smart-commit-cli", exports.DEFAULT_STAGED_CHANGE_SUMMARY_DIRECTORY_NAME);
|
|
47
|
+
}
|
|
48
|
+
return path.isAbsolute(configuredDirPath)
|
|
49
|
+
? path.normalize(configuredDirPath)
|
|
50
|
+
: path.resolve(input.repositoryPath, configuredDirPath);
|
|
51
|
+
}
|
|
52
|
+
function buildStagedChangeSummaryFileName(now = new Date()) {
|
|
53
|
+
const stamp = [
|
|
54
|
+
now.getFullYear(),
|
|
55
|
+
String(now.getMonth() + 1).padStart(2, "0"),
|
|
56
|
+
String(now.getDate()).padStart(2, "0"),
|
|
57
|
+
"-",
|
|
58
|
+
String(now.getHours()).padStart(2, "0"),
|
|
59
|
+
String(now.getMinutes()).padStart(2, "0"),
|
|
60
|
+
String(now.getSeconds()).padStart(2, "0")
|
|
61
|
+
].join("");
|
|
62
|
+
return `smart-commit-staged-change-summary-${stamp}.md`;
|
|
63
|
+
}
|
|
64
|
+
async function writeStagedChangeSummaryFile(directoryPath, fileName, markdown) {
|
|
65
|
+
await fs.mkdir(directoryPath, { recursive: true });
|
|
66
|
+
const filePath = path.join(directoryPath, fileName);
|
|
67
|
+
await fs.writeFile(filePath, normalizeStagedChangeSummaryFileContent(markdown), "utf8");
|
|
68
|
+
return filePath;
|
|
69
|
+
}
|
|
70
|
+
function normalizeStagedChangeSummaryFileContent(markdown) {
|
|
71
|
+
const trimmed = markdown.trim();
|
|
72
|
+
return trimmed ? `${trimmed}\n` : "";
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=render.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/stagedChangeSummary/render.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,sGAYC;AAED,4EAYC;AAED,oEASC;AA1CD,qDAAuC;AACvC,gDAAkC;AAErB,QAAA,4CAA4C,GAAG,yBAAyB,CAAC;AAEtF,SAAgB,6CAA6C,CAAC,KAG7D;IACC,MAAM,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IACzD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,mBAAmB,EAAE,oDAA4C,CAAC,CAAC;IAC5H,CAAC;IAED,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;QACvC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;QACnC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;AAC5D,CAAC;AAED,SAAgB,gCAAgC,CAAC,MAAY,IAAI,IAAI,EAAE;IACrE,MAAM,KAAK,GAAG;QACZ,GAAG,CAAC,WAAW,EAAE;QACjB,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QAC3C,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACtC,GAAG;QACH,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACvC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACzC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;KAC1C,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEX,OAAO,sCAAsC,KAAK,KAAK,CAAC;AAC1D,CAAC;AAEM,KAAK,UAAU,4BAA4B,CAChD,aAAqB,EACrB,QAAgB,EAChB,QAAgB;IAEhB,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACpD,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,uCAAuC,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC;IACxF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,uCAAuC,CAAC,QAAgB;IAC/D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAChC,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AACvC,CAAC"}
|
package/package.json
CHANGED
|
@@ -147,9 +147,9 @@ feat: SCP-7921 新增 SCA 安全组件类型支持
|
|
|
147
147
|
## Response Style
|
|
148
148
|
|
|
149
149
|
When returning the result to the user:
|
|
150
|
-
- Return
|
|
151
|
-
- If
|
|
152
|
-
-
|
|
150
|
+
- Return exactly one final commit message subject line only.
|
|
151
|
+
- If the staged diff is ambiguous, choose the single best subject and return only that one line.
|
|
152
|
+
- Do not add explanations, labels, bullets, or alternative candidates.
|
|
153
153
|
|
|
154
154
|
## Additional Resources
|
|
155
155
|
|
|
@@ -148,9 +148,9 @@ Output:
|
|
|
148
148
|
## Response Style
|
|
149
149
|
|
|
150
150
|
When returning the result to the user:
|
|
151
|
-
- Return
|
|
152
|
-
- If
|
|
153
|
-
-
|
|
151
|
+
- Return exactly one final commit message subject line only.
|
|
152
|
+
- If the staged diff is ambiguous, choose the single best subject and return only that one line.
|
|
153
|
+
- Do not add explanations, labels, bullets, or alternative candidates.
|
|
154
154
|
|
|
155
155
|
## Additional Resources
|
|
156
156
|
|
|
@@ -149,9 +149,9 @@ feat(sca): SCP-7921 新增 SCA 安全组件类型支持
|
|
|
149
149
|
## Response Style
|
|
150
150
|
|
|
151
151
|
When returning the result to the user:
|
|
152
|
-
- Return
|
|
153
|
-
- If
|
|
154
|
-
-
|
|
152
|
+
- Return exactly one final commit message subject line only.
|
|
153
|
+
- If the staged diff is ambiguous, choose the single best subject and return only that one line.
|
|
154
|
+
- Do not add explanations, labels, bullets, or alternative candidates.
|
|
155
155
|
|
|
156
156
|
## Additional Resources
|
|
157
157
|
|