smart-commit-copilot-cli 0.1.7 → 0.1.9
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 +44 -0
- package/README.md +39 -15
- package/docs/configuration.md +82 -22
- package/docs/contracts.md +67 -6
- package/docs/getting-started.md +4 -1
- package/docs/publish.md +1 -1
- package/docs/releases/0.1.7-draft.md +8 -8
- package/docs/releases/0.1.8-draft.md +80 -0
- package/docs/releases/0.1.9-draft.md +69 -0
- package/docs/verification.md +1 -0
- package/examples/config/smart-commit.json +28 -8
- package/out/cliApp.js +51 -12
- package/out/cliApp.js.map +1 -1
- package/out/commands/bridge.js +117 -46
- 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/protocol.js +6 -1
- package/out/commitMessage/protocol.js.map +1 -1
- package/out/config/cliArgs.js +103 -10
- package/out/config/cliArgs.js.map +1 -1
- package/out/config/constants.js +2 -1
- package/out/config/constants.js.map +1 -1
- package/out/config/env.js +79 -10
- package/out/config/env.js.map +1 -1
- package/out/config/file.js +98 -11
- package/out/config/file.js.map +1 -1
- package/out/config/legacySmartCommit.js +104 -21
- package/out/config/legacySmartCommit.js.map +1 -1
- package/out/config/merge.js +17 -3
- package/out/config/merge.js.map +1 -1
- package/out/config/schema.js +65 -10
- package/out/config/schema.js.map +1 -1
- package/out/contracts.js +152 -11
- package/out/contracts.js.map +1 -1
- package/out/git.js +108 -2
- package/out/git.js.map +1 -1
- package/out/output.js +5 -4
- 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 +29 -4
- 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/detailLocator.js +268 -0
- package/out/review/detailLocator.js.map +1 -0
- package/out/review/index.js +4 -3
- package/out/review/index.js.map +1 -1
- package/out/review/mockProvider.js +25 -1
- package/out/review/mockProvider.js.map +1 -1
- package/out/review/parser.js +14 -1
- package/out/review/parser.js.map +1 -1
- package/out/{pullRequestSummary → stagedChangeSummary}/index.js +10 -10
- package/out/stagedChangeSummary/index.js.map +1 -0
- package/out/{pullRequestSummary → stagedChangeSummary}/mockProvider.js +5 -5
- 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/{pullRequestSummary → stagedChangeSummary}/prompt.js +28 -12
- package/out/stagedChangeSummary/prompt.js.map +1 -0
- package/out/stagedChangeSummary/provider.js.map +1 -0
- package/out/{pullRequestSummary → stagedChangeSummary}/render.js +12 -12
- package/out/stagedChangeSummary/render.js.map +1 -0
- package/package.json +1 -1
- package/out/pullRequestSummary/index.js.map +0 -1
- package/out/pullRequestSummary/mockProvider.js.map +0 -1
- package/out/pullRequestSummary/openaiProvider.js +0 -19
- package/out/pullRequestSummary/openaiProvider.js.map +0 -1
- package/out/pullRequestSummary/prompt.js.map +0 -1
- package/out/pullRequestSummary/provider.js.map +0 -1
- package/out/pullRequestSummary/render.js.map +0 -1
- /package/out/{pullRequestSummary → stagedChangeSummary}/provider.js +0 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# `smart-commit-copilot-cli` 0.1.9 Draft Release Notes
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
`smart-commit-copilot-cli` 0.1.9 improves review result quality, report presentation, and secret handling for automation consumers.
|
|
6
|
+
|
|
7
|
+
This release focuses on making review findings easier to act on, accepting more LLM response formats, localizing report time window labels, and fully redacting secrets in rendered config output.
|
|
8
|
+
|
|
9
|
+
## Highlights
|
|
10
|
+
|
|
11
|
+
- review findings are now aligned with diff file paths and line numbers via a new detail locator
|
|
12
|
+
- review JSON parsing accepts fenced code blocks and JSON embedded in surrounding text
|
|
13
|
+
- report `displayRangeLabel` is localized for `en`, `zh-cn`, and `zh-tw`
|
|
14
|
+
- config secret redaction now uses full `[REDACTED]` replacement instead of partial masking
|
|
15
|
+
|
|
16
|
+
## Why This Release Matters
|
|
17
|
+
|
|
18
|
+
This version closes several quality gaps for teams using review and reporting in hooks or agents:
|
|
19
|
+
|
|
20
|
+
- review details are more likely to include actionable file and line metadata even when the model only returns message text or inline code snippets
|
|
21
|
+
- report headings and period labels read naturally in the configured output language
|
|
22
|
+
- rendered config output no longer leaks trailing characters from API keys or auth tokens
|
|
23
|
+
|
|
24
|
+
## Notable Behavior Updates
|
|
25
|
+
|
|
26
|
+
### Review detail locator
|
|
27
|
+
|
|
28
|
+
- after parsing a review response, the CLI attempts to map each detail to added diff lines using message prefixes, fenced code snippets, and fuzzy content matching
|
|
29
|
+
- when a line match is found, `filePath` and `lineNumber` are populated and the message prefix is normalized
|
|
30
|
+
- when only a file can be inferred, `filePath` is set without forcing a line number
|
|
31
|
+
|
|
32
|
+
### Review response parsing
|
|
33
|
+
|
|
34
|
+
- `parseReviewResponse` now extracts JSON from ```json fenced blocks when present
|
|
35
|
+
- if no fenced block is found, it falls back to the first `{ ... }` object span in the raw text
|
|
36
|
+
- this reduces correction retries when providers wrap JSON in markdown
|
|
37
|
+
|
|
38
|
+
### Report time window labels
|
|
39
|
+
|
|
40
|
+
- `resolveReportTimeWindow` accepts an output `language` and localizes `displayRangeLabel`
|
|
41
|
+
- Chinese labels use natural month, quarter, and year phrasing; English labels use month names and `Qn` quarter notation
|
|
42
|
+
- report aggregation passes the configured reporting language through to time window resolution
|
|
43
|
+
|
|
44
|
+
### Secret redaction
|
|
45
|
+
|
|
46
|
+
- `redactCliConfig` now replaces non-empty `connection.apiKey` and `pullRequest.authToken` values with `[REDACTED]`
|
|
47
|
+
- partial masking such as `sk-****1234` is no longer used in rendered config output
|
|
48
|
+
|
|
49
|
+
## Verification Coverage Added Or Strengthened
|
|
50
|
+
|
|
51
|
+
The project now has stronger regression protection for:
|
|
52
|
+
|
|
53
|
+
1. detail locator file and line matching against unified diffs
|
|
54
|
+
2. fenced JSON and embedded-object review response parsing
|
|
55
|
+
3. localized report window labels for English and Chinese output languages
|
|
56
|
+
4. full secret redaction without leaking original token characters in JSON output
|
|
57
|
+
|
|
58
|
+
## Suggested Upgrade Path
|
|
59
|
+
|
|
60
|
+
1. update to `0.1.9`
|
|
61
|
+
2. run `npm test`
|
|
62
|
+
3. run `npm run smoke:test`
|
|
63
|
+
4. run `npm run pack:dry-run`
|
|
64
|
+
5. publish only after all three checks pass
|
|
65
|
+
|
|
66
|
+
## Known Follow-Up Areas
|
|
67
|
+
|
|
68
|
+
- broader real-provider validation for review detail locator edge cases on large or heavily chunked diffs
|
|
69
|
+
- optional Traditional Chinese label variants if teams need locale-specific wording beyond the current shared Chinese formatter
|
package/docs/verification.md
CHANGED
|
@@ -63,3 +63,4 @@ That suite additionally covers:
|
|
|
63
63
|
- bundled review-skill loading, including `c-code-review` and diff-domain fallback to generic review
|
|
64
64
|
- pass-history `writeStage` thresholds and same-record `upsert` behavior across review, commit, and push stages
|
|
65
65
|
- `report generate --period yesterday`, including previous-day windows across month and year boundaries
|
|
66
|
+
- `report generate --period last-week`, `last-month`, and `last-quarter` natural prior-period windows
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
"baseUrl": "https://api.openai.com/v1",
|
|
5
5
|
"apiKey": "env:SMART_COMMIT_API_KEY",
|
|
6
6
|
"model": "gpt-5",
|
|
7
|
-
"llmResponseCorrectionRetryCount":
|
|
7
|
+
"llmResponseCorrectionRetryCount": 3
|
|
8
8
|
},
|
|
9
9
|
"review": {
|
|
10
10
|
"threshold": 6,
|
|
11
|
-
"language": "zh",
|
|
11
|
+
"language": "zh-cn",
|
|
12
12
|
"maxDiffChars": 100000,
|
|
13
13
|
"skill": {
|
|
14
14
|
"id": "code-review",
|
|
@@ -18,7 +18,8 @@
|
|
|
18
18
|
},
|
|
19
19
|
"commitMessage": {
|
|
20
20
|
"input": "",
|
|
21
|
-
"language": "zh",
|
|
21
|
+
"language": "zh-cn",
|
|
22
|
+
"maxDiffChars": 150000,
|
|
22
23
|
"structure": "subjectOnly",
|
|
23
24
|
"autoGenerate": true,
|
|
24
25
|
"hybridGenerate": false,
|
|
@@ -38,7 +39,7 @@
|
|
|
38
39
|
"autoStageWhenNothingStaged": true,
|
|
39
40
|
"autoCommit": true,
|
|
40
41
|
"autoPush": true,
|
|
41
|
-
"pushTimeoutMs":
|
|
42
|
+
"pushTimeoutMs": 180000
|
|
42
43
|
},
|
|
43
44
|
"passHistory": {
|
|
44
45
|
"enabled": true,
|
|
@@ -47,20 +48,39 @@
|
|
|
47
48
|
"maxEntries": 3000
|
|
48
49
|
},
|
|
49
50
|
"reporting": {
|
|
50
|
-
"language": "zh",
|
|
51
|
+
"language": "zh-cn",
|
|
51
52
|
"weekStartsOn": "monday",
|
|
52
53
|
"outputDirPath": ".smart-commit-cli/reports",
|
|
54
|
+
"maxInputChars": 200000,
|
|
53
55
|
"prompt": "",
|
|
54
56
|
"ai": {
|
|
55
57
|
"enabled": false
|
|
56
58
|
}
|
|
57
59
|
},
|
|
58
|
-
"
|
|
60
|
+
"stagedChangeSummary": {
|
|
59
61
|
"enabled": false,
|
|
60
|
-
"language": "zh",
|
|
61
|
-
"
|
|
62
|
+
"language": "zh-cn",
|
|
63
|
+
"maxDiffChars": 200000,
|
|
64
|
+
"outputDirPath": ".smart-commit-cli/staged-change-summaries",
|
|
62
65
|
"prompt": ""
|
|
63
66
|
},
|
|
67
|
+
"pullRequest": {
|
|
68
|
+
"autoCreateAfterPush": false,
|
|
69
|
+
"targetBranch": "",
|
|
70
|
+
"provider": "auto",
|
|
71
|
+
"apiBaseUrl": "",
|
|
72
|
+
"titlePrompt": "",
|
|
73
|
+
"descriptionPrompt": "",
|
|
74
|
+
"maxDiffChars": 200000,
|
|
75
|
+
"assignees": [],
|
|
76
|
+
"reviewers": [],
|
|
77
|
+
"labels": [],
|
|
78
|
+
"milestone": "",
|
|
79
|
+
"draft": false,
|
|
80
|
+
"removeSourceBranch": false,
|
|
81
|
+
"skipBranches": ["main", "master", "develop"],
|
|
82
|
+
"authToken": "env:SMART_COMMIT_PULL_REQUEST_AUTH_TOKEN"
|
|
83
|
+
},
|
|
64
84
|
"output": {
|
|
65
85
|
"format": "json",
|
|
66
86
|
"logLevel": "info"
|
package/out/cliApp.js
CHANGED
|
@@ -4,6 +4,7 @@ exports.runCli = runCli;
|
|
|
4
4
|
exports.runCliAsync = runCliAsync;
|
|
5
5
|
exports.parseCliCommand = parseCliCommand;
|
|
6
6
|
const bridge_1 = require("./commands/bridge");
|
|
7
|
+
const pullRequest_1 = require("./commands/pullRequest");
|
|
7
8
|
const report_1 = require("./commands/report");
|
|
8
9
|
const config_1 = require("./config");
|
|
9
10
|
const contracts_1 = require("./contracts");
|
|
@@ -56,6 +57,9 @@ function runCli(argv, env = process.env) {
|
|
|
56
57
|
if (command.kind === "report-generate") {
|
|
57
58
|
throw new Error("report generate command must be handled asynchronously via runCliAsync.");
|
|
58
59
|
}
|
|
60
|
+
if (command.kind === "pull-request-create") {
|
|
61
|
+
throw new Error("pull-request create command must be handled asynchronously via runCliAsync.");
|
|
62
|
+
}
|
|
59
63
|
if (command.kind === "schema-print") {
|
|
60
64
|
return {
|
|
61
65
|
exitCode: 0,
|
|
@@ -82,7 +86,7 @@ async function runCliAsync(argv, env = process.env) {
|
|
|
82
86
|
try {
|
|
83
87
|
const command = parseCommand(argv);
|
|
84
88
|
if (command.kind !== "bridge") {
|
|
85
|
-
if (command.kind !== "report-generate") {
|
|
89
|
+
if (command.kind !== "report-generate" && command.kind !== "pull-request-create") {
|
|
86
90
|
return runCli(argv, env);
|
|
87
91
|
}
|
|
88
92
|
}
|
|
@@ -105,11 +109,30 @@ async function runCliAsync(argv, env = process.env) {
|
|
|
105
109
|
stderr
|
|
106
110
|
};
|
|
107
111
|
}
|
|
112
|
+
if (command.kind === "pull-request-create") {
|
|
113
|
+
const result = await (0, pullRequest_1.runPullRequestCreateCommand)(command.flags, env);
|
|
114
|
+
const outputFormat = (0, renderOutput_1.resolveRequestedOutputFormat)(command.flags, env, result.payload.config.output.format);
|
|
115
|
+
let stderr = "";
|
|
116
|
+
if (result.payload.warnings.length > 0 && (0, logger_1.shouldLog)(result.payload.config.output.logLevel, "warn")) {
|
|
117
|
+
stderr += result.payload.warnings.map((warning) => (0, logger_1.formatLogLine)("warn", warning)).join("");
|
|
118
|
+
}
|
|
119
|
+
if (result.payload.status === "error" && result.payload.error) {
|
|
120
|
+
stderr += `${result.payload.error.message}\n`;
|
|
121
|
+
}
|
|
122
|
+
return {
|
|
123
|
+
exitCode: result.exitCode,
|
|
124
|
+
stdout: (0, renderOutput_1.renderPullRequestCreateOutput)(result.payload, outputFormat),
|
|
125
|
+
stderr
|
|
126
|
+
};
|
|
127
|
+
}
|
|
108
128
|
const result = await (0, bridge_1.runBridgeCommand)(command.flags, env);
|
|
109
129
|
const outputFormat = (0, renderOutput_1.resolveRequestedOutputFormat)(command.flags, env, result.payload.config.output.format);
|
|
110
130
|
let stderr = "";
|
|
111
|
-
if (result.payload.
|
|
112
|
-
stderr += (0, logger_1.formatLogLine)("warn", `
|
|
131
|
+
if (result.payload.stagedChangeSummary.error && (0, logger_1.shouldLog)(result.payload.config.output.logLevel, "warn")) {
|
|
132
|
+
stderr += (0, logger_1.formatLogLine)("warn", `Staged change summary generation failed: ${result.payload.stagedChangeSummary.error}`);
|
|
133
|
+
}
|
|
134
|
+
if (result.payload.pullRequestCreation.error && (0, logger_1.shouldLog)(result.payload.config.output.logLevel, "warn")) {
|
|
135
|
+
stderr += (0, logger_1.formatLogLine)("warn", `Pull request creation failed: ${result.payload.pullRequestCreation.error}`);
|
|
113
136
|
}
|
|
114
137
|
if ((0, logger_1.shouldLog)(result.payload.config.output.logLevel, "debug")) {
|
|
115
138
|
stderr += (0, logger_1.formatLogLine)("debug", `bridge completed with status=${result.payload.status}, phase=${result.payload.phase}, output=${outputFormat}.`);
|
|
@@ -162,6 +185,13 @@ function parseCommand(argv) {
|
|
|
162
185
|
flags: filterCommandTokens(argv, 2)
|
|
163
186
|
};
|
|
164
187
|
}
|
|
188
|
+
if (positional[0] === "pull-request" && positional[1] === "create") {
|
|
189
|
+
return {
|
|
190
|
+
kind: "pull-request-create",
|
|
191
|
+
raw: "pull-request create",
|
|
192
|
+
flags: filterCommandTokens(argv, 2)
|
|
193
|
+
};
|
|
194
|
+
}
|
|
165
195
|
if (positional[0] === "schema" && positional[1] === "print") {
|
|
166
196
|
return {
|
|
167
197
|
kind: "schema-print",
|
|
@@ -198,7 +228,8 @@ function buildHelpText() {
|
|
|
198
228
|
" smart-commit config resolve [flags]",
|
|
199
229
|
" smart-commit bridge [flags]",
|
|
200
230
|
" smart-commit report generate [flags]",
|
|
201
|
-
" smart-commit
|
|
231
|
+
" smart-commit pull-request create [flags]",
|
|
232
|
+
" smart-commit schema print --target <config-file|config-resolve|bridge|report-generate|pull-request-create>",
|
|
202
233
|
" smart-commit --version",
|
|
203
234
|
" smart-commit --help",
|
|
204
235
|
"",
|
|
@@ -206,6 +237,7 @@ function buildHelpText() {
|
|
|
206
237
|
" config resolve Resolve and validate the merged CLI config",
|
|
207
238
|
" bridge Validate bridge inputs and emit a stable JSON contract",
|
|
208
239
|
" report generate Generate a Markdown work report from pass history",
|
|
240
|
+
" pull-request create Create a GitHub PR or GitLab MR for the current branch",
|
|
209
241
|
" schema print Print the machine-facing JSON schema for a CLI contract",
|
|
210
242
|
"",
|
|
211
243
|
"Common flags:",
|
|
@@ -215,20 +247,26 @@ function buildHelpText() {
|
|
|
215
247
|
" --api-key <key>",
|
|
216
248
|
" --model <model-id>",
|
|
217
249
|
" --threshold <number>",
|
|
218
|
-
" --llm-response-correction-retry-count <0-
|
|
250
|
+
" --llm-response-correction-retry-count <0-10>",
|
|
219
251
|
" --review-language <lang>",
|
|
220
252
|
" --commit-language <lang>",
|
|
221
253
|
" --commit-message-structure <subjectOnly|subjectBody|subjectBodyFooter>",
|
|
222
254
|
" --auto-generate-commit-message <true|false>",
|
|
223
255
|
" --hybrid-generate-commit-message <true|false>",
|
|
224
256
|
" --pass-history-write-stage <review_passed|commit_completed|commit_push_completed>",
|
|
225
|
-
" --period <daily|yesterday|weekly|monthly|quarterly|yearly>",
|
|
257
|
+
" --period <daily|yesterday|weekly|last-week|monthly|last-month|quarterly|last-quarter|yearly>",
|
|
226
258
|
" --report-ai",
|
|
227
259
|
" --no-report-ai",
|
|
228
|
-
" --enable-
|
|
229
|
-
" --
|
|
230
|
-
" --
|
|
231
|
-
" --
|
|
260
|
+
" --enable-staged-change-summary <true|false>",
|
|
261
|
+
" --staged-change-summary-language <lang>",
|
|
262
|
+
" --staged-change-summary-output-dir <path>",
|
|
263
|
+
" --staged-change-summary-prompt <text>",
|
|
264
|
+
" --target-branch <branch>",
|
|
265
|
+
" --provider <auto|github|gitlab>",
|
|
266
|
+
" --auth-token <token>",
|
|
267
|
+
" --assignee <user>",
|
|
268
|
+
" --reviewer <user-or-team>",
|
|
269
|
+
" --label <label>",
|
|
232
270
|
" --no-commit",
|
|
233
271
|
" --no-push",
|
|
234
272
|
" --dry-run"
|
|
@@ -254,9 +292,10 @@ function validateSchemaTarget(value) {
|
|
|
254
292
|
if (normalized === "config-file" ||
|
|
255
293
|
normalized === "config-resolve" ||
|
|
256
294
|
normalized === "bridge" ||
|
|
257
|
-
normalized === "report-generate"
|
|
295
|
+
normalized === "report-generate" ||
|
|
296
|
+
normalized === "pull-request-create") {
|
|
258
297
|
return normalized;
|
|
259
298
|
}
|
|
260
|
-
throw new Error("--target must be one of: config-file, config-resolve, bridge, report-generate.");
|
|
299
|
+
throw new Error("--target must be one of: config-file, config-resolve, bridge, report-generate, pull-request-create.");
|
|
261
300
|
}
|
|
262
301
|
//# sourceMappingURL=cliApp.js.map
|
package/out/cliApp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cliApp.js","sourceRoot":"","sources":["../src/cliApp.ts"],"names":[],"mappings":";;AAyBA,wBA0EC;AAED,kCA0EC;AA+DD,0CAEC;AAhPD,8CAA6E;AAC7E,8CAA6D;AAC7D,qCAA4C;AAC5C,2CAIqB;AACrB,qCAAoD;AACpD,qCAA2C;AAC3C,iDAKwB;AAExB,MAAM,gCAAgC,GAAI,OAAO,CAAC,iBAAiB,CAA0B,CAAC,OAAO,IAAI,OAAO,CAAC;AAQjH,SAAgB,MAAM,CAAC,IAAuB,EAAE,MAAyB,OAAO,CAAC,GAAG;IAClF,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC5B,OAAO;gBACL,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,aAAa,EAAE;gBACvB,MAAM,EAAE,EAAE;aACX,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO;gBACL,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,GAAG,gCAAgC,IAAI;gBAC/C,MAAM,EAAE,EAAE;aACX,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,IAAA,yBAAgB,EAAC;gBAChC,IAAI,EAAE,OAAO,CAAC,KAAK;gBACnB,GAAG;gBACH,QAAQ,EAAE,IAAI;gBACd,iBAAiB,EAAE,KAAK;aACzB,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG;gBACd,aAAa,EAAE,2CAA+B;gBAC9C,MAAM,EAAE,IAAa;gBACrB,OAAO,EAAE,gBAAyB;gBAClC,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,MAAM,EAAE,IAAA,wBAAe,EAAC,QAAQ,CAAC,MAAM,CAAC;aACzC,CAAC;YAEF,OAAO;gBACL,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,IAAA,wCAAyB,EAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;gBACzE,MAAM,EAAE,IAAA,kBAAS,EAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC;oBACzD,CAAC,CAAC,IAAA,sBAAa,EAAC,OAAO,EAAE,kDAAkD,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;oBAC5G,CAAC,CAAC,EAAE;aACP,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;QACpF,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;QAC7F,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACpC,OAAO;gBACL,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAA,6BAAiB,EAAC,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;gBACzE,MAAM,EAAE,EAAE;aACX,CAAC;QACJ,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,+BAAsB;YAChC,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,oBAAoB,OAAO,CAAC,GAAG,KAAK,aAAa,EAAE,EAAE;SAC9D,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO;YACL,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,GAAG,OAAO,IAAI;SACvB,CAAC;IACJ,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,IAAuB,EACvB,MAAyB,OAAO,CAAC,GAAG;IAEpC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACvC,OAAO,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAwB,EAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAClE,MAAM,YAAY,GAAG,IAAA,2CAA4B,EAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC3G,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,IAAA,kBAAS,EAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;gBACnG,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,sBAAa,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9F,CAAC;YAED,IAAI,IAAA,kBAAS,EAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;gBAC9D,MAAM,IAAI,IAAA,sBAAa,EACrB,OAAO,EACP,yCAAyC,MAAM,CAAC,OAAO,CAAC,MAAM,gBAAgB,MAAM,CAAC,OAAO,CAAC,UAAU,YAAY,YAAY,GAAG,CACnI,CAAC;YACJ,CAAC;YAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC;YAChD,CAAC;YAED,OAAO;gBACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,MAAM,EAAE,IAAA,iCAAkB,EAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC;gBACxD,MAAM;aACP,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,yBAAgB,EAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC1D,MAAM,YAAY,GAAG,IAAA,2CAA4B,EAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3G,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,IAAI,IAAA,kBAAS,EAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC;YACxG,MAAM,IAAI,IAAA,sBAAa,EACrB,MAAM,EACN,2CAA2C,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,KAAK,EAAE,CACrF,CAAC;QACJ,CAAC;QAED,IAAI,IAAA,kBAAS,EAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,IAAA,sBAAa,EACrB,OAAO,EACP,gCAAgC,MAAM,CAAC,OAAO,CAAC,MAAM,WAAW,MAAM,CAAC,OAAO,CAAC,KAAK,YAAY,YAAY,GAAG,CAChH,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC9D,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC;QAChD,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,IAAA,iCAAkB,EAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC;YACxD,MAAM;SACP,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO;YACL,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,GAAG,OAAO,IAAI;SACvB,CAAC;IACJ,CAAC;AACH,CAAC;AAWD,SAAS,YAAY,CAAC,IAAuB;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAEnE,IACE,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QACpE,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,EACxD,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC;IAChF,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;QACpG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IACrD,CAAC;IAED,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAC9D,OAAO;YACL,IAAI,EAAE,gBAAgB;YACtB,GAAG,EAAE,gBAAgB;YACrB,KAAK,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;SACpC,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,QAAQ;YACb,KAAK,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;SACpC,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC;QAC/D,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,GAAG,EAAE,iBAAiB;YACtB,KAAK,EAAE,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC;SACpC,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QAC5D,OAAO;YACL,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,cAAc;YACnB,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC;SAChC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,SAAS;QACf,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS;KAClD,CAAC;AACJ,CAAC;AAED,SAAgB,eAAe,CAAC,IAAuB;IACrD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAuB,EAAE,eAAuB;IAC3E,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,kBAAkB,GAAG,CAAC,CAAC;IAE3B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,kBAAkB,GAAG,eAAe,EAAE,CAAC;YACpE,kBAAkB,IAAI,CAAC,CAAC;YACxB,SAAS;QACX,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa;IACpB,OAAO;QACL,kBAAkB;QAClB,EAAE;QACF,QAAQ;QACR,uCAAuC;QACvC,+BAA+B;QAC/B,wCAAwC;QACxC,0FAA0F;QAC1F,0BAA0B;QAC1B,uBAAuB;QACvB,EAAE;QACF,mBAAmB;QACnB,+DAA+D;QAC/D,2EAA2E;QAC3E,sEAAsE;QACtE,4EAA4E;QAC5E,EAAE;QACF,eAAe;QACf,mBAAmB;QACnB,iBAAiB;QACjB,oBAAoB;QACpB,mBAAmB;QACnB,sBAAsB;QACtB,wBAAwB;QACxB,+CAA+C;QAC/C,4BAA4B;QAC9B,4BAA4B;QAC5B,0EAA0E;QAC1E,+CAA+C;QAC7C,iDAAiD;QACjD,qFAAqF;QACrF,8DAA8D;QAChE,eAAe;QACf,kBAAkB;QAClB,8CAA8C;QAC9C,0CAA0C;QAC1C,4CAA4C;QAC5C,wCAAwC;QACxC,eAAe;QACb,aAAa;QACb,aAAa;KACd,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AACtB,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAuB;IAChD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;YACzB,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,OAAO,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAyB;IACrD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,IACE,UAAU,KAAK,aAAa;QAC5B,UAAU,KAAK,gBAAgB;QAC/B,UAAU,KAAK,QAAQ;QACvB,UAAU,KAAK,iBAAiB,EAChC,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;AACpG,CAAC"}
|
|
1
|
+
{"version":3,"file":"cliApp.js","sourceRoot":"","sources":["../src/cliApp.ts"],"names":[],"mappings":"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"}
|
package/out/commands/bridge.js
CHANGED
|
@@ -44,8 +44,10 @@ const commitMessage_1 = require("../commitMessage");
|
|
|
44
44
|
const git_1 = require("../git");
|
|
45
45
|
const output_1 = require("../output");
|
|
46
46
|
const passHistory_1 = require("../passHistory");
|
|
47
|
+
const pullRequest_1 = require("../pullRequest");
|
|
48
|
+
const redact_1 = require("../pullRequest/redact");
|
|
47
49
|
const review_1 = require("../review");
|
|
48
|
-
const
|
|
50
|
+
const stagedChangeSummary_1 = require("../stagedChangeSummary");
|
|
49
51
|
exports.EXIT_CODE_SUCCESS = 0;
|
|
50
52
|
exports.EXIT_CODE_BLOCKED = 2;
|
|
51
53
|
exports.EXIT_CODE_CONFIG_ERROR = 3;
|
|
@@ -82,8 +84,8 @@ async function runBridgeCommand(argv, env = process.env) {
|
|
|
82
84
|
schemaVersion: contracts_1.SMART_COMMIT_CLI_SCHEMA_VERSION,
|
|
83
85
|
command: "bridge",
|
|
84
86
|
repositoryPath: null,
|
|
85
|
-
reviewLanguage: "zh",
|
|
86
|
-
commitMessageLanguage: "zh",
|
|
87
|
+
reviewLanguage: "zh-cn",
|
|
88
|
+
commitMessageLanguage: "zh-cn",
|
|
87
89
|
didCommit: false,
|
|
88
90
|
didPush: false,
|
|
89
91
|
dryRun,
|
|
@@ -95,13 +97,24 @@ async function runBridgeCommand(argv, env = process.env) {
|
|
|
95
97
|
eventType: null,
|
|
96
98
|
error: null
|
|
97
99
|
},
|
|
98
|
-
|
|
100
|
+
stagedChangeSummary: {
|
|
99
101
|
enabled: false,
|
|
100
102
|
generated: false,
|
|
101
103
|
outputFilePath: null,
|
|
102
104
|
provider: null,
|
|
103
105
|
error: null
|
|
104
106
|
},
|
|
107
|
+
pullRequestCreation: {
|
|
108
|
+
enabled: false,
|
|
109
|
+
status: "skipped",
|
|
110
|
+
platform: null,
|
|
111
|
+
sourceBranch: null,
|
|
112
|
+
targetBranch: null,
|
|
113
|
+
title: null,
|
|
114
|
+
url: null,
|
|
115
|
+
warnings: [],
|
|
116
|
+
error: null
|
|
117
|
+
},
|
|
105
118
|
threshold: 6,
|
|
106
119
|
reviewSummary: null,
|
|
107
120
|
score: null,
|
|
@@ -168,12 +181,13 @@ async function buildReadyOrBlockedResult(config, repositoryPathInput, dryRun, en
|
|
|
168
181
|
return buildBlockedResult(config, repositoryPath, dryRun, "NO_STAGED_DIFF", "Staged diff is empty after auto-staging. Check the repository state.");
|
|
169
182
|
}
|
|
170
183
|
}
|
|
171
|
-
const
|
|
184
|
+
const commitMessageDiff = truncateDiffForLlm(stagedSnapshot.diff, config.commitMessage.maxDiffChars);
|
|
185
|
+
const reviewDiff = truncateDiffForLlm(stagedSnapshot.diff, config.review.maxDiffChars);
|
|
172
186
|
let commitMessageInfo;
|
|
173
187
|
try {
|
|
174
188
|
commitMessageInfo = await resolveFinalCommitMessage(config, repositoryPath, branchName, {
|
|
175
189
|
...stagedSnapshot,
|
|
176
|
-
diff:
|
|
190
|
+
diff: commitMessageDiff
|
|
177
191
|
}, env);
|
|
178
192
|
}
|
|
179
193
|
catch (error) {
|
|
@@ -206,7 +220,7 @@ async function buildReadyOrBlockedResult(config, repositoryPathInput, dryRun, en
|
|
|
206
220
|
config,
|
|
207
221
|
repositoryPath,
|
|
208
222
|
stagedSnapshot,
|
|
209
|
-
llmDiff,
|
|
223
|
+
llmDiff: reviewDiff,
|
|
210
224
|
autoStaged,
|
|
211
225
|
branchName,
|
|
212
226
|
commitMessage: commitMessageInfo.message,
|
|
@@ -357,7 +371,8 @@ function truncateDiffForLlm(diff, maxDiffChars) {
|
|
|
357
371
|
async function executeCommitAndPushPhases(input) {
|
|
358
372
|
let passHistoryState;
|
|
359
373
|
let passHistory = buildDefaultPassHistoryPayload(input.config);
|
|
360
|
-
let
|
|
374
|
+
let stagedChangeSummary = buildDefaultStagedChangeSummaryPayload(input.config);
|
|
375
|
+
const stagedSummaryDiff = truncateDiffForLlm(input.stagedSnapshot.diff, input.config.stagedChangeSummary.maxDiffChars);
|
|
361
376
|
const basePayloadInput = {
|
|
362
377
|
status: "passed",
|
|
363
378
|
config: input.config,
|
|
@@ -397,15 +412,15 @@ async function executeCommitAndPushPhases(input) {
|
|
|
397
412
|
passHistory = reviewPassHistory.result;
|
|
398
413
|
}
|
|
399
414
|
if (!input.config.git.autoCommit) {
|
|
400
|
-
|
|
415
|
+
stagedChangeSummary = await maybeGenerateStagedChangeSummary({
|
|
401
416
|
config: input.config,
|
|
402
417
|
repositoryPath: input.repositoryPath,
|
|
403
418
|
branchName: input.branchName,
|
|
404
419
|
commitMessage: input.commitMessage ?? "",
|
|
405
420
|
changedFiles: input.stagedSnapshot.changedFiles,
|
|
406
|
-
diff:
|
|
421
|
+
diff: stagedSummaryDiff,
|
|
407
422
|
fullDiffChars: input.stagedSnapshot.fullDiffChars,
|
|
408
|
-
truncated: input.stagedSnapshot.fullDiffChars > input.config.
|
|
423
|
+
truncated: input.stagedSnapshot.fullDiffChars > input.config.stagedChangeSummary.maxDiffChars,
|
|
409
424
|
reviewMode: "single",
|
|
410
425
|
reviewResult: input.review,
|
|
411
426
|
env: input.env
|
|
@@ -416,7 +431,7 @@ async function executeCommitAndPushPhases(input) {
|
|
|
416
431
|
...basePayloadInput,
|
|
417
432
|
phase: "review",
|
|
418
433
|
passHistory,
|
|
419
|
-
|
|
434
|
+
stagedChangeSummary,
|
|
420
435
|
summary: input.config.git.autoPush
|
|
421
436
|
? "Review passed. autoPush was requested, but autoCommit is disabled, so no commit or push was performed."
|
|
422
437
|
: "Review passed. autoCommit is disabled, so no commit or push was performed."
|
|
@@ -447,15 +462,15 @@ async function executeCommitAndPushPhases(input) {
|
|
|
447
462
|
passHistory = committedPassHistory.result;
|
|
448
463
|
}
|
|
449
464
|
if (!input.config.git.autoPush) {
|
|
450
|
-
|
|
465
|
+
stagedChangeSummary = await maybeGenerateStagedChangeSummary({
|
|
451
466
|
config: input.config,
|
|
452
467
|
repositoryPath: input.repositoryPath,
|
|
453
468
|
branchName: input.branchName,
|
|
454
469
|
commitMessage: input.commitMessage ?? "",
|
|
455
470
|
changedFiles: input.stagedSnapshot.changedFiles,
|
|
456
|
-
diff:
|
|
471
|
+
diff: stagedSummaryDiff,
|
|
457
472
|
fullDiffChars: input.stagedSnapshot.fullDiffChars,
|
|
458
|
-
truncated: input.stagedSnapshot.fullDiffChars > input.config.
|
|
473
|
+
truncated: input.stagedSnapshot.fullDiffChars > input.config.stagedChangeSummary.maxDiffChars,
|
|
459
474
|
reviewMode: "single",
|
|
460
475
|
reviewResult: input.review,
|
|
461
476
|
env: input.env
|
|
@@ -468,7 +483,7 @@ async function executeCommitAndPushPhases(input) {
|
|
|
468
483
|
didCommit: true,
|
|
469
484
|
commitSha,
|
|
470
485
|
passHistory,
|
|
471
|
-
|
|
486
|
+
stagedChangeSummary,
|
|
472
487
|
summary: "Review passed and a local commit was created."
|
|
473
488
|
})
|
|
474
489
|
};
|
|
@@ -541,6 +556,23 @@ async function executeCommitAndPushPhases(input) {
|
|
|
541
556
|
passHistoryState = pushedPassHistory.writeState;
|
|
542
557
|
passHistory = pushedPassHistory.result;
|
|
543
558
|
}
|
|
559
|
+
const finalStagedChangeSummary = await maybeGenerateStagedChangeSummary({
|
|
560
|
+
config: input.config,
|
|
561
|
+
repositoryPath: input.repositoryPath,
|
|
562
|
+
branchName: input.branchName,
|
|
563
|
+
commitMessage: input.commitMessage ?? "",
|
|
564
|
+
changedFiles: input.stagedSnapshot.changedFiles,
|
|
565
|
+
diff: stagedSummaryDiff,
|
|
566
|
+
fullDiffChars: input.stagedSnapshot.fullDiffChars,
|
|
567
|
+
truncated: input.stagedSnapshot.fullDiffChars > input.config.stagedChangeSummary.maxDiffChars,
|
|
568
|
+
reviewMode: "single",
|
|
569
|
+
reviewResult: input.review,
|
|
570
|
+
env: input.env
|
|
571
|
+
});
|
|
572
|
+
const pullRequestCreation = await maybeCreatePullRequestAfterPush({
|
|
573
|
+
config: input.config,
|
|
574
|
+
repositoryPath: input.repositoryPath
|
|
575
|
+
});
|
|
544
576
|
return {
|
|
545
577
|
exitCode: exports.EXIT_CODE_SUCCESS,
|
|
546
578
|
payload: buildBasePayload({
|
|
@@ -550,19 +582,8 @@ async function executeCommitAndPushPhases(input) {
|
|
|
550
582
|
didPush: true,
|
|
551
583
|
commitSha,
|
|
552
584
|
passHistory,
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
repositoryPath: input.repositoryPath,
|
|
556
|
-
branchName: input.branchName,
|
|
557
|
-
commitMessage: input.commitMessage ?? "",
|
|
558
|
-
changedFiles: input.stagedSnapshot.changedFiles,
|
|
559
|
-
diff: input.llmDiff,
|
|
560
|
-
fullDiffChars: input.stagedSnapshot.fullDiffChars,
|
|
561
|
-
truncated: input.stagedSnapshot.fullDiffChars > input.config.review.maxDiffChars,
|
|
562
|
-
reviewMode: "single",
|
|
563
|
-
reviewResult: input.review,
|
|
564
|
-
env: input.env
|
|
565
|
-
}),
|
|
585
|
+
stagedChangeSummary: finalStagedChangeSummary,
|
|
586
|
+
pullRequestCreation,
|
|
566
587
|
summary: "Review passed, a local commit was created, and the current branch was pushed."
|
|
567
588
|
})
|
|
568
589
|
};
|
|
@@ -632,7 +653,8 @@ function buildBasePayload(input) {
|
|
|
632
653
|
eventType: null,
|
|
633
654
|
error: null
|
|
634
655
|
},
|
|
635
|
-
|
|
656
|
+
stagedChangeSummary: input.stagedChangeSummary ?? buildDefaultStagedChangeSummaryPayload(input.config),
|
|
657
|
+
pullRequestCreation: input.pullRequestCreation ?? buildDefaultPullRequestCreationPayload(input.config),
|
|
636
658
|
summary: input.summary,
|
|
637
659
|
threshold: input.config.review.threshold,
|
|
638
660
|
reviewSummary: input.reviewSummary ?? null,
|
|
@@ -678,7 +700,8 @@ function buildRuntimeErrorResult(input) {
|
|
|
678
700
|
reviewProvider: input.reviewProvider,
|
|
679
701
|
reviewDetails: input.reviewDetails,
|
|
680
702
|
passHistory: input.passHistory,
|
|
681
|
-
|
|
703
|
+
stagedChangeSummary: input.stagedChangeSummary,
|
|
704
|
+
pullRequestCreation: input.pullRequestCreation
|
|
682
705
|
}),
|
|
683
706
|
error: {
|
|
684
707
|
code: "RUNTIME_ERROR",
|
|
@@ -696,21 +719,66 @@ function buildDefaultPassHistoryPayload(config) {
|
|
|
696
719
|
error: null
|
|
697
720
|
};
|
|
698
721
|
}
|
|
699
|
-
function
|
|
722
|
+
function buildDefaultStagedChangeSummaryPayload(config) {
|
|
700
723
|
return {
|
|
701
|
-
enabled: config.
|
|
724
|
+
enabled: config.stagedChangeSummary.enabled,
|
|
702
725
|
generated: false,
|
|
703
726
|
outputFilePath: null,
|
|
704
727
|
provider: null,
|
|
705
728
|
error: null
|
|
706
729
|
};
|
|
707
730
|
}
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
731
|
+
function buildDefaultPullRequestCreationPayload(config) {
|
|
732
|
+
return {
|
|
733
|
+
enabled: config.pullRequest.autoCreateAfterPush,
|
|
734
|
+
status: "skipped",
|
|
735
|
+
platform: null,
|
|
736
|
+
sourceBranch: null,
|
|
737
|
+
targetBranch: config.pullRequest.targetBranch || null,
|
|
738
|
+
title: null,
|
|
739
|
+
url: null,
|
|
740
|
+
warnings: [],
|
|
741
|
+
error: null
|
|
742
|
+
};
|
|
743
|
+
}
|
|
744
|
+
async function maybeCreatePullRequestAfterPush(input) {
|
|
745
|
+
if (!input.config.pullRequest.autoCreateAfterPush) {
|
|
746
|
+
return buildDefaultPullRequestCreationPayload(input.config);
|
|
747
|
+
}
|
|
748
|
+
try {
|
|
749
|
+
const result = await (0, pullRequest_1.createPullRequestFromCurrentBranch)({
|
|
750
|
+
repositoryPath: input.repositoryPath,
|
|
751
|
+
config: input.config,
|
|
752
|
+
client: (0, pullRequest_1.createOpenAICompatiblePullRequestContentClient)(input.config)
|
|
753
|
+
});
|
|
754
|
+
return {
|
|
755
|
+
enabled: true,
|
|
756
|
+
status: result.status === "ready" ? "skipped" : result.status,
|
|
757
|
+
platform: result.platform,
|
|
758
|
+
sourceBranch: result.sourceBranch,
|
|
759
|
+
targetBranch: result.targetBranch,
|
|
760
|
+
title: result.title,
|
|
761
|
+
url: result.url,
|
|
762
|
+
warnings: result.warnings,
|
|
763
|
+
error: null
|
|
764
|
+
};
|
|
765
|
+
}
|
|
766
|
+
catch (error) {
|
|
767
|
+
const redactedMessage = redactPullRequestError(input.config, error instanceof Error ? error.message : String(error));
|
|
768
|
+
return {
|
|
769
|
+
...buildDefaultPullRequestCreationPayload(input.config),
|
|
770
|
+
enabled: true,
|
|
771
|
+
status: "error",
|
|
772
|
+
error: redactedMessage
|
|
773
|
+
};
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
async function maybeGenerateStagedChangeSummary(input) {
|
|
777
|
+
if (!input.config.stagedChangeSummary.enabled) {
|
|
778
|
+
return buildDefaultStagedChangeSummaryPayload(input.config);
|
|
711
779
|
}
|
|
712
780
|
try {
|
|
713
|
-
const result = await (0,
|
|
781
|
+
const result = await (0, stagedChangeSummary_1.generateStagedChangeSummary)({
|
|
714
782
|
repositoryPath: input.repositoryPath,
|
|
715
783
|
branchName: input.branchName,
|
|
716
784
|
commitMessage: input.commitMessage,
|
|
@@ -720,18 +788,18 @@ async function maybeGeneratePullRequestSummary(input) {
|
|
|
720
788
|
truncated: input.truncated,
|
|
721
789
|
reviewMode: input.reviewMode,
|
|
722
790
|
reviewResult: input.reviewResult,
|
|
723
|
-
language: input.config.
|
|
724
|
-
customPrompt: input.config.
|
|
791
|
+
language: input.config.stagedChangeSummary.language,
|
|
792
|
+
customPrompt: input.config.stagedChangeSummary.prompt
|
|
725
793
|
}, {
|
|
726
794
|
config: input.config,
|
|
727
|
-
providerMode:
|
|
728
|
-
mockMode: input.env.
|
|
795
|
+
providerMode: resolveStagedChangeSummaryProviderMode(input.env),
|
|
796
|
+
mockMode: input.env.SMART_COMMIT_STAGED_CHANGE_SUMMARY_MODE
|
|
729
797
|
});
|
|
730
|
-
const outputDirectoryPath = (0,
|
|
731
|
-
configuredDirPath: input.config.
|
|
798
|
+
const outputDirectoryPath = (0, stagedChangeSummary_1.resolveStagedChangeSummaryOutputDirectoryPath)({
|
|
799
|
+
configuredDirPath: input.config.stagedChangeSummary.outputDirPath,
|
|
732
800
|
repositoryPath: input.repositoryPath
|
|
733
801
|
});
|
|
734
|
-
const outputFilePath = await (0,
|
|
802
|
+
const outputFilePath = await (0, stagedChangeSummary_1.writeStagedChangeSummaryFile)(outputDirectoryPath, (0, stagedChangeSummary_1.buildStagedChangeSummaryFileName)(), result.markdown);
|
|
735
803
|
return {
|
|
736
804
|
enabled: true,
|
|
737
805
|
generated: true,
|
|
@@ -750,9 +818,12 @@ async function maybeGeneratePullRequestSummary(input) {
|
|
|
750
818
|
};
|
|
751
819
|
}
|
|
752
820
|
}
|
|
753
|
-
function
|
|
754
|
-
return env.
|
|
821
|
+
function resolveStagedChangeSummaryProviderMode(env) {
|
|
822
|
+
return env.SMART_COMMIT_STAGED_CHANGE_SUMMARY_PROVIDER?.trim().toLowerCase() === "mock"
|
|
755
823
|
? "mock"
|
|
756
824
|
: "openai-compatible";
|
|
757
825
|
}
|
|
826
|
+
function redactPullRequestError(config, message) {
|
|
827
|
+
return (0, redact_1.redactSensitiveText)(message, [config.pullRequest.authToken]);
|
|
828
|
+
}
|
|
758
829
|
//# sourceMappingURL=bridge.js.map
|