@krotovm/gitlab-ai-review 1.0.10 → 1.0.11
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/README.md +9 -0
- package/dist/cli.js +149 -5
- package/dist/cli.js.map +1 -1
- package/dist/prompt/index.js +59 -9
- package/dist/prompt/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -40,6 +40,12 @@ OPENAI_API_KEY=... npx -y @krotovm/gitlab-ai-review --worktree
|
|
|
40
40
|
|
|
41
41
|
# review last commit and ignore docs/lock changes by extension
|
|
42
42
|
OPENAI_API_KEY=... npx -y @krotovm/gitlab-ai-review --last-commit --ignore-ext=md,lock
|
|
43
|
+
|
|
44
|
+
# review a prepared git diff from file
|
|
45
|
+
OPENAI_API_KEY=... npx -y @krotovm/gitlab-ai-review --diff-file=./changes.diff
|
|
46
|
+
|
|
47
|
+
# use a custom OpenAI-compatible endpoint
|
|
48
|
+
OPENAI_API_KEY=... OPENAI_BASE_URL="https://api.openai.com/v1" npx -y @krotovm/gitlab-ai-review --worktree
|
|
43
49
|
```
|
|
44
50
|
|
|
45
51
|
## Env variables
|
|
@@ -51,6 +57,8 @@ Set these in your project/group CI settings (or locally in your shell):
|
|
|
51
57
|
- `AI_MODEL` (optional, default: `gpt-4o-mini`; example: `gpt-4o`)
|
|
52
58
|
- `PROJECT_ACCESS_TOKEN` (optional but recommended for private projects; token with `api` scope)
|
|
53
59
|
|
|
60
|
+
`OPENAI_BASE_URL` is passed through to the `openai` SDK client, so you can use any OpenAI-compatible gateway/provider endpoint.
|
|
61
|
+
|
|
54
62
|
GitLab provides these automatically in Merge Request pipelines:
|
|
55
63
|
|
|
56
64
|
- `CI_API_V4_URL`
|
|
@@ -63,6 +71,7 @@ GitLab provides these automatically in Merge Request pipelines:
|
|
|
63
71
|
- `--ci` - Run in GitLab MR pipeline mode and post a new MR note.
|
|
64
72
|
- `--worktree` - Review local uncommitted changes (staged + unstaged).
|
|
65
73
|
- `--last-commit` - Review the last commit (`HEAD`).
|
|
74
|
+
- `--diff-file=./changes.diff` - Review git-diff content from a file and print to stdout.
|
|
66
75
|
- `--ignore-ext=md,lock` - Exclude file extensions from review (comma-separated only).
|
|
67
76
|
- `--max-diffs=50` - Max number of diffs included in the prompt.
|
|
68
77
|
- `--max-diff-chars=16000` - Max chars per diff chunk.
|
package/dist/cli.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/** @format */
|
|
3
3
|
import OpenAI from "openai";
|
|
4
|
+
import { readFile } from "node:fs/promises";
|
|
4
5
|
import { buildAnswer, buildPrompt, DEFAULT_PROMPT_LIMITS, } from "./prompt/index.js";
|
|
5
6
|
import { fetchFileAtRef, fetchMergeRequestChanges, generateAICompletion, postMergeRequestNote, searchRepository, } from "./gitlab/services.js";
|
|
6
7
|
function printHelp() {
|
|
@@ -11,6 +12,7 @@ function printHelp() {
|
|
|
11
12
|
" gitlab-ai-review --ci",
|
|
12
13
|
" gitlab-ai-review --worktree",
|
|
13
14
|
" gitlab-ai-review --last-commit",
|
|
15
|
+
" gitlab-ai-review --diff-file=./changes.diff",
|
|
14
16
|
" gitlab-ai-review --help",
|
|
15
17
|
" gitlab-ai-review --debug",
|
|
16
18
|
" gitlab-ai-review --ci --ignore-ext=md,lock",
|
|
@@ -19,6 +21,7 @@ function printHelp() {
|
|
|
19
21
|
" --ci Run in GitLab MR pipeline: fetch MR changes and post a new MR note.",
|
|
20
22
|
" --worktree Review local uncommitted changes (staged + unstaged) and print to stdout.",
|
|
21
23
|
" --last-commit Review last commit (HEAD) and print to stdout.",
|
|
24
|
+
" --diff-file Review git-diff content from a file and print to stdout.",
|
|
22
25
|
"",
|
|
23
26
|
"Debug:",
|
|
24
27
|
" --debug Print full error details (stack, API error fields).",
|
|
@@ -127,6 +130,26 @@ function parsePromptLimits(argv) {
|
|
|
127
130
|
maxTotalPromptChars: parseNumberFlag(argv, "max-total-prompt-chars", DEFAULT_PROMPT_LIMITS.maxTotalPromptChars, 1),
|
|
128
131
|
};
|
|
129
132
|
}
|
|
133
|
+
function parseDiffFileFlag(argv) {
|
|
134
|
+
const args = argv.slice(2);
|
|
135
|
+
for (const current of args) {
|
|
136
|
+
if (current === "--diff-file") {
|
|
137
|
+
throw new Error("Use equals format: --diff-file=./path/to/file.diff");
|
|
138
|
+
}
|
|
139
|
+
if (!current.startsWith("--diff-file="))
|
|
140
|
+
continue;
|
|
141
|
+
const value = current.slice("--diff-file=".length).trim();
|
|
142
|
+
if (value === "") {
|
|
143
|
+
throw new Error("Missing value for --diff-file. Example: --diff-file=./changes.diff");
|
|
144
|
+
}
|
|
145
|
+
return value;
|
|
146
|
+
}
|
|
147
|
+
return undefined;
|
|
148
|
+
}
|
|
149
|
+
function hasModeFlag(argv) {
|
|
150
|
+
const args = new Set(argv.slice(2));
|
|
151
|
+
return (args.has("--ci") || args.has("--worktree") || args.has("--last-commit"));
|
|
152
|
+
}
|
|
130
153
|
function hasIgnoredExtension(filePath, ignoredExtensions) {
|
|
131
154
|
const lowerPath = filePath.toLowerCase();
|
|
132
155
|
return ignoredExtensions.some((ext) => lowerPath.endsWith(ext));
|
|
@@ -205,6 +228,99 @@ async function localDiffLastCommit() {
|
|
|
205
228
|
: ["show", "--format=", "HEAD"];
|
|
206
229
|
return await runGit(args);
|
|
207
230
|
}
|
|
231
|
+
async function diffFromFile(filePath) {
|
|
232
|
+
const text = await readFile(filePath, "utf8");
|
|
233
|
+
return text;
|
|
234
|
+
}
|
|
235
|
+
function editDistanceAtMostTwo(a, b) {
|
|
236
|
+
const la = a.length;
|
|
237
|
+
const lb = b.length;
|
|
238
|
+
if (Math.abs(la - lb) > 2)
|
|
239
|
+
return 3;
|
|
240
|
+
const dp = Array.from({ length: la + 1 }, (_, i) => Array.from({ length: lb + 1 }, (_, j) => (i === 0 ? j : j === 0 ? i : 0)));
|
|
241
|
+
for (let i = 1; i <= la; i += 1) {
|
|
242
|
+
let rowMin = Number.POSITIVE_INFINITY;
|
|
243
|
+
for (let j = 1; j <= lb; j += 1) {
|
|
244
|
+
const cost = a[i - 1] === b[j - 1] ? 0 : 1;
|
|
245
|
+
dp[i][j] = Math.min(dp[i - 1][j] + 1, dp[i][j - 1] + 1, dp[i - 1][j - 1] + cost);
|
|
246
|
+
rowMin = Math.min(rowMin, dp[i][j]);
|
|
247
|
+
}
|
|
248
|
+
if (rowMin > 2)
|
|
249
|
+
return 3;
|
|
250
|
+
}
|
|
251
|
+
return dp[la][lb];
|
|
252
|
+
}
|
|
253
|
+
function collectCallIdentifiersFromDiffLines(lines, prefixes) {
|
|
254
|
+
const out = new Set();
|
|
255
|
+
const callPattern = /\b([A-Za-z_$][A-Za-z0-9_$]*)\s*\(/g;
|
|
256
|
+
for (const line of lines) {
|
|
257
|
+
if (!prefixes.some((p) => line.startsWith(p)))
|
|
258
|
+
continue;
|
|
259
|
+
const code = line.slice(1);
|
|
260
|
+
let match;
|
|
261
|
+
while ((match = callPattern.exec(code)) != null) {
|
|
262
|
+
const ident = match[1];
|
|
263
|
+
// Ignore common JS control keywords.
|
|
264
|
+
if (ident === "if" ||
|
|
265
|
+
ident === "for" ||
|
|
266
|
+
ident === "while" ||
|
|
267
|
+
ident === "switch" ||
|
|
268
|
+
ident === "catch") {
|
|
269
|
+
continue;
|
|
270
|
+
}
|
|
271
|
+
out.add(ident);
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
return out;
|
|
275
|
+
}
|
|
276
|
+
function findDeterministicDiffFindings(diff) {
|
|
277
|
+
const lines = diff.split(/\r?\n/);
|
|
278
|
+
const addedCalls = collectCallIdentifiersFromDiffLines(lines, ["+"]);
|
|
279
|
+
const nearbyCalls = collectCallIdentifiersFromDiffLines(lines, [
|
|
280
|
+
" ",
|
|
281
|
+
"-",
|
|
282
|
+
"+",
|
|
283
|
+
]);
|
|
284
|
+
const findings = [];
|
|
285
|
+
for (const added of addedCalls) {
|
|
286
|
+
if (added.length < 7)
|
|
287
|
+
continue;
|
|
288
|
+
let closest;
|
|
289
|
+
let closestDistance = 3;
|
|
290
|
+
for (const candidate of nearbyCalls) {
|
|
291
|
+
if (candidate === added)
|
|
292
|
+
continue;
|
|
293
|
+
const distance = editDistanceAtMostTwo(added, candidate);
|
|
294
|
+
if (distance < closestDistance) {
|
|
295
|
+
closestDistance = distance;
|
|
296
|
+
closest = candidate;
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
if (closest != null && closestDistance <= 2) {
|
|
300
|
+
findings.push({
|
|
301
|
+
title: "Possible symbol typo",
|
|
302
|
+
detail: `Call \`${added}(...)\` is very close to \`${closest}(...)\` and may be a misspelling causing runtime/reference errors.`,
|
|
303
|
+
});
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
// De-duplicate repeated matches.
|
|
307
|
+
return Array.from(new Map(findings.map((f) => [`${f.title}:${f.detail}`, f])).values()).slice(0, 3);
|
|
308
|
+
}
|
|
309
|
+
function injectDeterministicFindings(answer, findings) {
|
|
310
|
+
if (findings.length === 0)
|
|
311
|
+
return answer;
|
|
312
|
+
const noIssues = answer.includes("No confirmed bugs or high-value optimizations found.");
|
|
313
|
+
if (!noIssues)
|
|
314
|
+
return answer;
|
|
315
|
+
const bullets = findings
|
|
316
|
+
.map((f) => `- [high] ${f.title}: ${f.detail}`)
|
|
317
|
+
.join("\n");
|
|
318
|
+
const disclaimerIndex = answer.indexOf("\n---\n_This comment was generated by an artificial intelligence duck._");
|
|
319
|
+
const disclaimer = disclaimerIndex >= 0
|
|
320
|
+
? answer.slice(disclaimerIndex)
|
|
321
|
+
: "\n---\n_This comment was generated by an artificial intelligence duck._";
|
|
322
|
+
return `${bullets}${disclaimer}`;
|
|
323
|
+
}
|
|
208
324
|
async function reviewDiffToConsole(diff, openaiApiKey, aiModel, promptLimits) {
|
|
209
325
|
if (diff.trim() === "") {
|
|
210
326
|
process.stdout.write("No diff found. Skipping review.\n");
|
|
@@ -217,7 +333,9 @@ async function reviewDiffToConsole(diff, openaiApiKey, aiModel, promptLimits) {
|
|
|
217
333
|
const openaiInstance = new OpenAI({ apiKey: openaiApiKey });
|
|
218
334
|
const completion = await generateAICompletion(messageParams, openaiInstance, aiModel);
|
|
219
335
|
const answer = buildAnswer(completion);
|
|
220
|
-
|
|
336
|
+
const deterministicFindings = findDeterministicDiffFindings(diff);
|
|
337
|
+
const finalAnswer = injectDeterministicFindings(answer, deterministicFindings);
|
|
338
|
+
process.stdout.write(`${finalAnswer}\n`);
|
|
221
339
|
}
|
|
222
340
|
const TOOL_NAME_GET_FILE = "get_file_at_ref";
|
|
223
341
|
const TOOL_NAME_GREP = "grep_repository";
|
|
@@ -371,7 +489,10 @@ async function reviewMergeRequestWithTools(params) {
|
|
|
371
489
|
const parsed = JSON.parse(argsRaw);
|
|
372
490
|
const query = parsed.query?.trim();
|
|
373
491
|
if (query == null || query === "") {
|
|
374
|
-
toolContent = JSON.stringify({
|
|
492
|
+
toolContent = JSON.stringify({
|
|
493
|
+
ok: false,
|
|
494
|
+
error: "query is required.",
|
|
495
|
+
});
|
|
375
496
|
}
|
|
376
497
|
else {
|
|
377
498
|
const ref = parsed.ref?.trim() || refs.head;
|
|
@@ -383,7 +504,12 @@ async function reviewMergeRequestWithTools(params) {
|
|
|
383
504
|
projectId,
|
|
384
505
|
});
|
|
385
506
|
if (results instanceof Error) {
|
|
386
|
-
toolContent = JSON.stringify({
|
|
507
|
+
toolContent = JSON.stringify({
|
|
508
|
+
ok: false,
|
|
509
|
+
query,
|
|
510
|
+
ref,
|
|
511
|
+
error: results.message,
|
|
512
|
+
});
|
|
387
513
|
}
|
|
388
514
|
else {
|
|
389
515
|
const trimmed = results.map((r) => ({
|
|
@@ -391,7 +517,12 @@ async function reviewMergeRequestWithTools(params) {
|
|
|
391
517
|
startline: r.startline,
|
|
392
518
|
data: r.data.slice(0, 2000),
|
|
393
519
|
}));
|
|
394
|
-
toolContent = JSON.stringify({
|
|
520
|
+
toolContent = JSON.stringify({
|
|
521
|
+
ok: true,
|
|
522
|
+
query,
|
|
523
|
+
ref,
|
|
524
|
+
matches: trimmed,
|
|
525
|
+
});
|
|
395
526
|
}
|
|
396
527
|
}
|
|
397
528
|
}
|
|
@@ -419,10 +550,23 @@ async function reviewMergeRequestWithTools(params) {
|
|
|
419
550
|
throw new Error(`Exceeded max tool rounds (${MAX_TOOL_ROUNDS}) while generating review`);
|
|
420
551
|
}
|
|
421
552
|
async function main() {
|
|
422
|
-
const
|
|
553
|
+
const diffFilePath = parseDiffFileFlag(process.argv);
|
|
554
|
+
if (diffFilePath != null && hasModeFlag(process.argv)) {
|
|
555
|
+
throw new Error("Do not combine --diff-file with --ci/--worktree/--last-commit");
|
|
556
|
+
}
|
|
557
|
+
const mode = diffFilePath != null ? "worktree" : parseMode(process.argv);
|
|
423
558
|
const ignoredExtensions = parseIgnoreExtensions(process.argv);
|
|
424
559
|
const promptLimits = parsePromptLimits(process.argv);
|
|
425
560
|
const aiModel = envOrDefault("AI_MODEL", "gpt-4o-mini");
|
|
561
|
+
if (diffFilePath != null) {
|
|
562
|
+
logStep(`Reading diff file: ${diffFilePath}`);
|
|
563
|
+
const openaiEnvs = requireEnvs(["OPENAI_API_KEY"]);
|
|
564
|
+
const openaiApiKey = openaiEnvs["OPENAI_API_KEY"];
|
|
565
|
+
const diff = await diffFromFile(diffFilePath);
|
|
566
|
+
logStep(`Requesting AI completion with model: ${aiModel}`);
|
|
567
|
+
await reviewDiffToConsole(diff, openaiApiKey, aiModel, promptLimits);
|
|
568
|
+
return;
|
|
569
|
+
}
|
|
426
570
|
if (mode === "worktree") {
|
|
427
571
|
logStep("Collecting local changes");
|
|
428
572
|
const openaiEnvs = requireEnvs(["OPENAI_API_KEY"]);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,cAAc;AAEd,OAAO,MAAM,MAAM,QAAQ,CAAC;AAG5B,OAAO,EACL,WAAW,EACX,WAAW,EACX,qBAAqB,GAEtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,oBAAoB,EAEpB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAE9B,SAAS,SAAS;IAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB;QACE,kBAAkB;QAClB,EAAE;QACF,QAAQ;QACR,yBAAyB;QACzB,+BAA+B;QAC/B,kCAAkC;QAClC,2BAA2B;QAC3B,4BAA4B;QAC5B,8CAA8C;QAC9C,EAAE;QACF,qBAAqB;QACrB,sFAAsF;QACtF,4FAA4F;QAC5F,iEAAiE;QACjE,EAAE;QACF,QAAQ;QACR,sEAAsE;QACtE,+FAA+F;QAC/F,kBAAkB;QAClB,0BAA0B;QAC1B,mCAAmC;QACnC,EAAE;QACF,WAAW;QACX,8CAA8C;QAC9C,sEAAsE;QACtE,mFAAmF;QACnF,2HAA2H;QAC3H,EAAE;QACF,wCAAwC;QACxC,8GAA8G;QAC9G,EAAE;QACF,QAAQ;QACR,0GAA0G;QAC1G,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,KAAe;IAClC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACpC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,OAAO,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,YAAoB;IACtD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,YAAY,CAAC;IACvC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC;AACjD,CAAC;AAED,SAAS,cAAc,CAAC,IAAY;IAClC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;AAC9C,CAAC;AAID,SAAS,YAAY,CAAC,IAAc;IAClC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAc;IAC3C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE3B,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;QAC3B,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC;YAAE,SAAS;QACnD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,SAAS;QAElC,MAAM,MAAM,GAAG,KAAK;aACjB,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;aACxC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEnB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,eAAe,CACtB,IAAc,EACd,QAAgB,EAChB,YAAoB,EACpB,QAAgB;IAEhB,MAAM,MAAM,GAAG,KAAK,QAAQ,GAAG,CAAC;IAChC,IAAI,KAAK,GAAG,YAAY,CAAC;IACzB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,SAAS;QACtC,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,qBAAqB,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,QAAQ,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,MAAM,GAAG,0BAA0B,QAAQ,GAAG,CAC9E,CAAC;QACJ,CAAC;QACD,KAAK,GAAG,MAAM,CAAC;IACjB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAc;IACvC,OAAO;QACL,QAAQ,EAAE,eAAe,CACvB,IAAI,EACJ,WAAW,EACX,qBAAqB,CAAC,QAAQ,EAC9B,CAAC,CACF;QACD,YAAY,EAAE,eAAe,CAC3B,IAAI,EACJ,gBAAgB,EAChB,qBAAqB,CAAC,YAAY,EAClC,CAAC,CACF;QACD,mBAAmB,EAAE,eAAe,CAClC,IAAI,EACJ,wBAAwB,EACxB,qBAAqB,CAAC,mBAAmB,EACzC,CAAC,CACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,QAAgB,EAChB,iBAAoC;IAEpC,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACzC,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,wBAAwB,CAC/B,iBAAoC;IAEpC,OAAO,iBAAiB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,SAAS,CAAC,IAAc;IAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,SAAS,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAEhD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;IAC1E,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC;IACvB,IAAI,WAAW;QAAE,OAAO,UAAU,CAAC;IACnC,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IAExC,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;IACzD,IAAI,eAAe,IAAI,IAAI,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC1E,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,OAAO,CAAC,OAAe;IAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,IAAc;IAClC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACrD,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACxE,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YAC5B,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE;YAC5B,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1B,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,IAAI,IAAI,KAAK,CAAC;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;YACvC,MAAM,CACJ,IAAI,KAAK,CACP,MAAM,CAAC,IAAI,EAAE;gBACX,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,0BAA0B,IAAI,EAAE,CACxD,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,iBAAiB;IAC9B,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;IAC7D,MAAM,YAAY,GAChB,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,UAAU,GACd,SAAS,CAAC,MAAM,GAAG,CAAC;QAClB,CAAC,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;QAC1C,CAAC,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC3B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC9C,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAC;IAChB,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,mBAAmB;IAChC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,wBAAwB,CAAC,gBAAgB,CAAC,CAAC;IAC7D,yDAAyD;IACzD,MAAM,IAAI,GACR,SAAS,CAAC,MAAM,GAAG,CAAC;QAClB,CAAC,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;QACnD,CAAC,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IACpC,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,IAAY,EACZ,YAAoB,EACpB,OAAkB,EAClB,YAA0B;IAE1B,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAC1D,OAAO;IACT,CAAC;IAED,MAAM,aAAa,GAAG,WAAW,CAAC;QAChC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;QACnB,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAC3C,aAAa,EACb,cAAc,EACd,OAAO,CACR,CAAC;IACF,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;IACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAC7C,MAAM,cAAc,GAAG,iBAAiB,CAAC;AACzC,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,SAAS,mBAAmB,CAC1B,OAA6B,EAC7B,IAAoC;IAEpC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC5C,KAAK,EAAE,KAAK,GAAG,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,KAAK;QAClC,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,KAAK;QAC1C,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,KAAK;KAC3C,CAAC,CAAC,CAAC;IACJ,OAAO,IAAI,CAAC,SAAS,CACnB;QACE,IAAI;QACJ,aAAa,EAAE,KAAK;QACpB,mBAAmB,EAAE;YACnB,gFAAgF;YAChF,yFAAyF;YACzF,gFAAgF;YAChF,0EAA0E;SAC3E;KACF,EACD,IAAI,EACJ,CAAC,CACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,2BAA2B,CAAC,MAS1C;IACC,MAAM,EACJ,cAAc,EACd,OAAO,EACP,YAAY,EACZ,OAAO,EACP,IAAI,EACJ,mBAAmB,EACnB,SAAS,EACT,OAAO,GACR,GAAG,MAAM,CAAC;IAEX,MAAM,QAAQ,GAAiC,WAAW,CAAC;QACzD,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACzD,MAAM,EAAE,YAAY;KACrB,CAAC,CAAC;IACH,QAAQ,CAAC,IAAI,CAAC;QACZ,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,4BAA4B,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE;KAC1E,CAAC,CAAC;IAEH,MAAM,KAAK,GAAiD;QAC1D;YACE,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EACT,kEAAkE;gBACpE,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,oBAAoB,EAAE,KAAK;oBAC3B,UAAU,EAAE;wBACV,IAAI,EAAE;4BACJ,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,uBAAuB;yBACrC;wBACD,GAAG,EAAE;4BACH,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,2BAA2B,IAAI,CAAC,IAAI,gBAAgB,IAAI,CAAC,IAAI,WAAW;yBACtF;qBACF;oBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;iBAC1B;aACF;SACF;QACD;YACE,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,cAAc;gBACpB,WAAW,EACT,4HAA4H;gBAC9H,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,oBAAoB,EAAE,KAAK;oBAC3B,UAAU,EAAE;wBACV,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,yDAAyD;yBACvE;wBACD,GAAG,EAAE;4BACH,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,iCAAiC,IAAI,CAAC,IAAI,WAAW;yBACnE;qBACF;oBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;iBACpB;aACF;SACF;KACF,CAAC;IAEF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,eAAe,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACxD,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YAC9D,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,GAAG;YAChB,MAAM,EAAE,KAAK;YACb,QAAQ;YACR,KAAK;YACL,WAAW,EAAE,MAAM;SACpB,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;QAC/C,IAAI,OAAO,IAAI,IAAI;YAAE,OAAO,WAAW,CAAC,UAAU,CAAC,CAAC;QAEpD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,WAAW,CAAC,UAAU,CAAC,CAAC;QAE3D,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE;YAC9B,UAAU,EAAE,SAAS;SACtB,CAAC,CAAC;QAEH,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC;YACpD,IAAI,WAAmB,CAAC;YAExB,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBAClD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAoC,CAAC;oBACtE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;oBACjC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;oBAC/B,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,EAAE,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;wBAC7D,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;4BAC3B,EAAE,EAAE,KAAK;4BACT,KAAK,EAAE,iCAAiC;yBACzC,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBACN,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;4BACpC,aAAa,EAAE,mBAAmB;4BAClC,OAAO;4BACP,QAAQ,EAAE,IAAI;4BACd,GAAG;yBACJ,CAAC,CAAC;wBACH,IAAI,QAAQ,YAAY,KAAK,EAAE,CAAC;4BAC9B,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;gCAC3B,EAAE,EAAE,KAAK;gCACT,IAAI;gCACJ,GAAG;gCACH,KAAK,EAAE,QAAQ,CAAC,OAAO;6BACxB,CAAC,CAAC;wBACL,CAAC;6BAAM,CAAC;4BACN,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;gCAC3B,EAAE,EAAE,IAAI;gCACR,IAAI;gCACJ,GAAG;gCACH,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;gCACjC,SAAS,EAAE,QAAQ,CAAC,MAAM,GAAG,KAAK;6BACnC,CAAC,CAAC;wBACL,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;wBAC3B,EAAE,EAAE,KAAK;wBACT,KAAK,EAAE,mCAAmC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC,EAAE;wBAC3E,GAAG,EAAE,OAAO;qBACb,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBACrD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAqC,CAAC;oBACvE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;oBACnC,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;wBAClC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC,CAAC;oBAC3E,CAAC;yBAAM,CAAC;wBACN,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC;wBAC5C,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC;4BACrC,aAAa,EAAE,mBAAmB;4BAClC,OAAO;4BACP,KAAK;4BACL,GAAG;4BACH,SAAS;yBACV,CAAC,CAAC;wBACH,IAAI,OAAO,YAAY,KAAK,EAAE,CAAC;4BAC7B,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;wBAClF,CAAC;6BAAM,CAAC;4BACN,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gCAClC,IAAI,EAAE,CAAC,CAAC,IAAI;gCACZ,SAAS,EAAE,CAAC,CAAC,SAAS;gCACtB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;6BAC5B,CAAC,CAAC,CAAC;4BACJ,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;wBAC3E,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;wBAC3B,EAAE,EAAE,KAAK;wBACT,KAAK,EAAE,mCAAmC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,KAAK,CAAC,EAAE;wBAC3E,GAAG,EAAE,OAAO;qBACb,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;oBAC3B,EAAE,EAAE,KAAK;oBACT,KAAK,EAAE,iBAAiB,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAAG;iBAClD,CAAC,CAAC;YACL,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,QAAQ,CAAC,EAAE;gBACzB,OAAO,EAAE,WAAW;aACrB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CACb,6BAA6B,eAAe,2BAA2B,CACxE,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,MAAM,YAAY,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,EAAE,aAAa,CAAc,CAAC;IAErE,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,OAAO,CAAC,0BAA0B,CAAC,CAAC;QACpC,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,CAAE,CAAC;QACnD,MAAM,IAAI,GAAG,MAAM,iBAAiB,EAAE,CAAC;QACvC,OAAO,CAAC,wCAAwC,OAAO,EAAE,CAAC,CAAC;QAC3D,MAAM,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IAED,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;QAC3B,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAChC,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,CAAE,CAAC;QACnD,MAAM,IAAI,GAAG,MAAM,mBAAmB,EAAE,CAAC;QACzC,OAAO,CAAC,wCAAwC,OAAO,EAAE,CAAC,CAAC;QAC3D,MAAM,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IAED,MAAM,kBAAkB,GACtB,cAAc,CAAC,sBAAsB,CAAC,IAAI,cAAc,CAAC,cAAc,CAAC,CAAC;IAE3E,MAAM,cAAc,GAAa;QAC/B,gBAAgB;QAChB,eAAe;QACf,eAAe;QACf,sBAAsB;KACvB,CAAC;IACF,IAAI,kBAAkB,IAAI,IAAI,EAAE,CAAC;QAC/B,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACtC,CAAC;IACD,MAAM,UAAU,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;IAE/C,MAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,CAAE,CAAC;IACnD,MAAM,UAAU,GAAG,UAAU,CAAC,eAAe,CAAE,CAAC;IAChD,MAAM,SAAS,GAAG,UAAU,CAAC,eAAe,CAAE,CAAC;IAC/C,MAAM,eAAe,GAAG,UAAU,CAAC,sBAAsB,CAAE,CAAC;IAC5D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IAE1C,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,kBAAkB,IAAI,IAAI,EAAE,CAAC;QAC/B,OAAO,CAAC,eAAe,CAAC,GAAG,kBAAkB,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,cAAc,CAAE,CAAC;IACrD,CAAC;IAED,OAAO,CAAC,gCAAgC,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,MAAM,wBAAwB,CAAC;QAC/C,aAAa;QACb,OAAO;QACP,SAAS;QACT,eAAe;KAChB,CAAC,CAAC;IACH,IAAI,SAAS,YAAY,KAAK;QAAE,MAAM,SAAS,CAAC;IAEhD,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC;IACxC,MAAM,eAAe,GACnB,iBAAiB,CAAC,MAAM,KAAK,CAAC;QAC5B,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,OAAO,CAAC,MAAM,CACZ,CAAC,MAAM,EAAE,EAAE,CACT,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,CAAC;YACxD,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAC3D,CAAC;IAER,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,uDAAuD,CACxD,CAAC;QACF,OAAO;IACT,CAAC;IAED,OAAO,CAAC,wCAAwC,OAAO,EAAE,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC;QAC/C,cAAc;QACd,OAAO;QACP,YAAY;QACZ,OAAO,EAAE,eAAe;QACxB,IAAI,EAAE;YACJ,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,QAAQ,IAAI,MAAM;YAC7C,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,QAAQ,IAAI,MAAM;SAC9C;QACD,mBAAmB,EAAE,IAAI,GAAG,CAAC,GAAG,UAAU,aAAa,SAAS,EAAE,CAAC;QACnE,SAAS;QACT,OAAO;KACR,CAAC,CAAC;IAEH,OAAO,CAAC,yCAAyC,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,MAAM,oBAAoB,CACxC;QACE,aAAa,EAAE,IAAI,GAAG,CAAC,GAAG,UAAU,aAAa,SAAS,EAAE,CAAC;QAC7D,OAAO;QACP,eAAe;KAChB,EACD,EAAE,IAAI,EAAE,MAAM,EAAE,CACjB,CAAC;IACF,IAAI,OAAO,YAAY,KAAK;QAAE,MAAM,OAAO,CAAC;IAE5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;AACvE,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,GAAU,CAAC;IAE1B,IAAI,MAAM,EAAE,IAAI,KAAK,wBAAwB,IAAI,MAAM,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,SAAS,GAAwB;YACrC,IAAI,EAAE,MAAM,EAAE,IAAI;YAClB,OAAO,EAAE,MAAM,EAAE,OAAO;YACxB,MAAM,EAAE,MAAM,EAAE,MAAM;YACtB,IAAI,EAAE,MAAM,EAAE,IAAI;YAClB,IAAI,EAAE,MAAM,EAAE,IAAI;YAClB,UAAU,EAAE,MAAM,EAAE,UAAU;YAC9B,OAAO,EAAE,MAAM,EAAE,OAAO;YACxB,KAAK,EAAE,MAAM,EAAE,KAAK;YACpB,KAAK,EACH,MAAM,EAAE,KAAK,YAAY,KAAK;gBAC5B,CAAC,CAAC;oBACE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;oBACvB,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO;oBAC7B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK;iBAC1B;gBACH,CAAC,CAAC,MAAM,EAAE,KAAK;SACpB,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC5E,CAAC;IACD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/prompt/index.js
CHANGED
|
@@ -10,29 +10,75 @@ function truncateWithMarker(value, maxChars, markerLabel) {
|
|
|
10
10
|
const omitted = value.length - maxChars;
|
|
11
11
|
return `${value.slice(0, maxChars)}\n\n[... ${markerLabel} truncated, omitted ${omitted} chars ...]`;
|
|
12
12
|
}
|
|
13
|
-
const QUESTIONS = `\n\
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
const QUESTIONS = `\n\nTask:\n
|
|
14
|
+
Produce a single combined list of up to 3 bullets in the required format.\n
|
|
15
|
+
Prioritize: (1) correctness bugs, (2) security issues, (3) clear performance regressions.\n
|
|
16
|
+
If there are no confirmed findings, output exactly: "No confirmed bugs or high-value optimizations found."\n\n`;
|
|
16
17
|
const MESSAGES = [
|
|
17
18
|
{
|
|
18
19
|
role: "system",
|
|
19
20
|
content: [
|
|
20
21
|
"You are a senior developer reviewing code changes for bugs and optimization opportunities.",
|
|
21
|
-
"Keep the review short
|
|
22
|
+
"Keep the review very short so a busy developer can read it in under 30 seconds.",
|
|
22
23
|
"Rules: no praise, no summaries of what was done, no style remarks.",
|
|
23
24
|
"",
|
|
25
|
+
"Priority:",
|
|
26
|
+
"- (1) correctness/logical bugs",
|
|
27
|
+
"- (2) security vulnerabilities",
|
|
28
|
+
"- (3) clear performance regressions",
|
|
29
|
+
"- Ignore anything else.",
|
|
30
|
+
"",
|
|
31
|
+
"Scope policy:",
|
|
32
|
+
"- Review only issues introduced by this diff.",
|
|
33
|
+
"- Focus on added/changed lines; avoid commenting on untouched code unless required for a proven bug path.",
|
|
34
|
+
"- Prefer no finding over a weakly supported finding.",
|
|
35
|
+
"- Err on the side of silence: if not clearly supported, do not mention it.",
|
|
36
|
+
"",
|
|
24
37
|
"Accuracy policy (strict):",
|
|
25
38
|
"- Report only findings that are directly supported by diff lines and/or tool outputs.",
|
|
26
39
|
"- Do not invent behavior, fields, or code paths that are not visible in evidence.",
|
|
27
|
-
'- If confidence is below
|
|
40
|
+
'- If confidence is below medium, skip it. Use "high" for clear deterministic issues (for example, symbol typos visible in the diff).',
|
|
28
41
|
"- Do not suggest removals/cleanups for symbols that are not present in the current code context.",
|
|
29
42
|
"- Avoid generic micro-optimizations unless there is a concrete benefit in this specific change.",
|
|
30
43
|
"",
|
|
31
|
-
"
|
|
32
|
-
"-
|
|
33
|
-
"-
|
|
44
|
+
"Required checks before concluding 'no issues':",
|
|
45
|
+
"- Compare added function/method calls against added/removed imports/exports in the same file for spelling mismatches.",
|
|
46
|
+
"- Flag obvious identifier typos that would cause runtime/reference errors.",
|
|
47
|
+
"- If a changed line calls a symbol that differs by 1-2 characters from nearby known symbols, treat it as a likely bug.",
|
|
48
|
+
"",
|
|
49
|
+
"Truncation policy:",
|
|
50
|
+
"- If truncation markers are present, explicitly state that context is incomplete when relevant.",
|
|
51
|
+
"- Do not assign [high] unless the issue is self-contained in visible lines.",
|
|
52
|
+
"- Do not speculate about hidden code paths when context is truncated.",
|
|
53
|
+
"",
|
|
54
|
+
"Check only for:",
|
|
55
|
+
"- Obvious logic errors (wrong condition, wrong variable, missing await, off-by-one).",
|
|
56
|
+
"- Direct runtime/reference errors visible in code (undefined symbol, wrong function name).",
|
|
57
|
+
"- Clear regressions in loops/queries/allocations introduced by this diff.",
|
|
58
|
+
"",
|
|
59
|
+
"Do NOT comment on:",
|
|
60
|
+
"- naming",
|
|
61
|
+
"- formatting",
|
|
62
|
+
"- minor refactors without behavior change",
|
|
63
|
+
"",
|
|
64
|
+
"Output format (strict):",
|
|
65
|
+
"- Return at most 3 findings total.",
|
|
66
|
+
"- Each finding must be one bullet in the form: `- [high|medium] <short title> [file: <path>, line ~<N>]: <one sentence explanation>`.",
|
|
67
|
+
"- One sentence only per finding (max ~25 words).",
|
|
68
|
+
"- Include only the most important evidence inline in that sentence (no extra sections).",
|
|
69
|
+
"- Do not include code blocks.",
|
|
34
70
|
'- If no confirmed issues exist, reply with exactly: "No confirmed bugs or high-value optimizations found."',
|
|
35
71
|
"- Format as GitLab-flavoured markdown.",
|
|
72
|
+
"",
|
|
73
|
+
"Few-shot examples:",
|
|
74
|
+
"Example A (has bug):",
|
|
75
|
+
"Diff snippet: `+ smsAvailable: isSmsAvalable(repeatCount, source, methodList)` and nearby symbol `isSmsAvailable`.",
|
|
76
|
+
"Valid answer:",
|
|
77
|
+
"- [high] Function name typo [file: wss/api_routes/api_phone_check/api_phone_check.js, line ~35]: `isSmsAvalable` likely misspells `isSmsAvailable`, causing runtime/reference failure when this branch executes.",
|
|
78
|
+
"",
|
|
79
|
+
"Example B (no confirmed issues):",
|
|
80
|
+
"Diff snippet: formatting-only changes and equivalent variable renames without behavior changes.",
|
|
81
|
+
'Valid answer: "No confirmed bugs or high-value optimizations found."',
|
|
36
82
|
].join("\n"),
|
|
37
83
|
},
|
|
38
84
|
];
|
|
@@ -50,7 +96,8 @@ export const buildPrompt = ({ changes, limits, }) => {
|
|
|
50
96
|
Review the following code changes (git diff format) for bugs and optimization opportunities only.
|
|
51
97
|
No full pre-change file context is embedded; use tool calls to request additional context when needed.
|
|
52
98
|
If you see truncation markers, note potential blind spots.
|
|
53
|
-
Do not present assumptions as facts.
|
|
99
|
+
Do not present assumptions as facts.
|
|
100
|
+
Follow the previously given rules strictly: at most 3 findings, bullets only, no headings, only clearly evidenced issues from this diff.
|
|
54
101
|
`;
|
|
55
102
|
const changesSection = `
|
|
56
103
|
Changes:
|
|
@@ -80,6 +127,9 @@ export const buildAnswer = (completion) => {
|
|
|
80
127
|
return `${ERROR_ANSWER}\n\n${DISCLAIMER}`;
|
|
81
128
|
}
|
|
82
129
|
const content = completion.choices[0].message.content ?? "";
|
|
130
|
+
if (content.trim() === "") {
|
|
131
|
+
return `${ERROR_ANSWER}\n\nError: Model returned an empty response body. Try another model (for example, gpt-4o-mini) or a different provider endpoint.\n\n---\n_${DISCLAIMER}_`;
|
|
132
|
+
}
|
|
83
133
|
const safe = sanitizeGitLabMarkdown(content);
|
|
84
134
|
return `${safe}\n\n---\n_${DISCLAIMER}_`;
|
|
85
135
|
};
|
package/dist/prompt/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompt/index.ts"],"names":[],"mappings":"AAAA,cAAc;AAad,MAAM,CAAC,MAAM,qBAAqB,GAAiB;IACjD,QAAQ,EAAE,EAAE;IACZ,YAAY,EAAE,KAAK;IACnB,mBAAmB,EAAE,MAAM;CAC5B,CAAC;AAEF,SAAS,kBAAkB,CACzB,KAAa,EACb,QAAgB,EAChB,WAAmB;IAEnB,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;IACxC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,YAAY,WAAW,uBAAuB,OAAO,aAAa,CAAC;AACvG,CAAC;AAED,MAAM,SAAS,GAAG
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompt/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED