smart-commit-copilot-cli 0.1.13 → 0.1.14
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 +19 -0
- package/README.md +76 -8
- package/docs/configuration.md +71 -16
- package/docs/contracts.md +63 -1
- package/docs/getting-started.md +18 -1
- package/docs/integrations.md +2 -0
- package/docs/publish.md +1 -1
- package/docs/release-checklist.md +1 -1
- package/docs/releases/0.1.13-draft.md +2 -2
- package/docs/releases/0.1.14-draft.md +94 -0
- package/docs/releases/0.1.8-draft.md +3 -3
- package/docs/verification.md +3 -0
- package/examples/config/smart-commit.json +19 -5
- package/out/cliApp.js +60 -10
- package/out/cliApp.js.map +1 -1
- package/out/commands/bridge.js +3 -3
- package/out/commands/bridge.js.map +1 -1
- package/out/commands/pullRequest.js +3 -3
- package/out/commands/pullRequest.js.map +1 -1
- package/out/commands/pullRequestReview.js +220 -0
- package/out/commands/pullRequestReview.js.map +1 -0
- package/out/commands/report.js +1 -1
- package/out/commands/report.js.map +1 -1
- package/out/config/cliArgs.js +96 -21
- package/out/config/cliArgs.js.map +1 -1
- package/out/config/env.js +68 -28
- package/out/config/env.js.map +1 -1
- package/out/config/file.js +456 -11
- package/out/config/file.js.map +1 -1
- package/out/config/index.js +5 -1
- package/out/config/index.js.map +1 -1
- package/out/config/legacySmartCommit.js +120 -14
- package/out/config/legacySmartCommit.js.map +1 -1
- package/out/config/merge.js +27 -11
- package/out/config/merge.js.map +1 -1
- package/out/config/schema.js +57 -7
- package/out/config/schema.js.map +1 -1
- package/out/contracts.js +157 -11
- package/out/contracts.js.map +1 -1
- package/out/git.js +101 -0
- package/out/git.js.map +1 -1
- package/out/localization.js +106 -0
- package/out/localization.js.map +1 -0
- package/out/passHistory/index.js +1 -1
- package/out/passHistory/index.js.map +1 -1
- package/out/pullRequest/api.js +14 -4
- package/out/pullRequest/api.js.map +1 -1
- package/out/pullRequest/config.js +36 -2
- package/out/pullRequest/config.js.map +1 -1
- package/out/pullRequest/index.js +6 -0
- package/out/pullRequest/index.js.map +1 -1
- package/out/pullRequest/mergeGate.js +34 -0
- package/out/pullRequest/mergeGate.js.map +1 -0
- package/out/pullRequest/platform.js +13 -0
- package/out/pullRequest/platform.js.map +1 -1
- package/out/pullRequest/reviewApi.js +424 -0
- package/out/pullRequest/reviewApi.js.map +1 -0
- package/out/pullRequest/reviewComment.js +176 -0
- package/out/pullRequest/reviewComment.js.map +1 -0
- package/out/pullRequest/reviewGate.js +43 -0
- package/out/pullRequest/reviewGate.js.map +1 -0
- package/out/pullRequest/reviewWorkflow.js +313 -0
- package/out/pullRequest/reviewWorkflow.js.map +1 -0
- package/out/pullRequest/urlParser.js +135 -0
- package/out/pullRequest/urlParser.js.map +1 -0
- package/out/pullRequest/workflow.js +3 -3
- package/out/pullRequest/workflow.js.map +1 -1
- package/out/renderOutput.js +37 -0
- package/out/renderOutput.js.map +1 -1
- package/out/review/chunkAggregate.js +53 -0
- package/out/review/chunkAggregate.js.map +1 -0
- package/out/review/detailLocator.js +19 -12
- package/out/review/detailLocator.js.map +1 -1
- package/out/review/diffReviewRunner.js +191 -0
- package/out/review/diffReviewRunner.js.map +1 -0
- package/out/review/index.js +12 -45
- package/out/review/index.js.map +1 -1
- package/out/review/mockProvider.js +55 -44
- package/out/review/mockProvider.js.map +1 -1
- package/out/review/openaiProvider.js +31 -20
- package/out/review/openaiProvider.js.map +1 -1
- package/out/review/parser.js +39 -2
- package/out/review/parser.js.map +1 -1
- package/out/review/prompt.js +180 -8
- package/out/review/prompt.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mockProvider.js","sourceRoot":"","sources":["../../src/review/mockProvider.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"mockProvider.js","sourceRoot":"","sources":["../../src/review/mockProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,21 +5,25 @@ const openaiCompatible_1 = require("../openaiCompatible");
|
|
|
5
5
|
const promptContext_1 = require("../promptContext");
|
|
6
6
|
const prompt_1 = require("./prompt");
|
|
7
7
|
function createOpenAICompatibleReviewProvider(config) {
|
|
8
|
+
const buildOptions = (input) => ({
|
|
9
|
+
promptAugmentation: (0, promptContext_1.buildPromptAugmentation)({
|
|
10
|
+
repositoryPath: input.repositoryPath,
|
|
11
|
+
skill: {
|
|
12
|
+
...config.review.skill,
|
|
13
|
+
promptTuning: input.skillPromptTuning ?? config.review.skill.promptTuning
|
|
14
|
+
},
|
|
15
|
+
categoryLabel: "review skill",
|
|
16
|
+
builtinCategory: "code-review"
|
|
17
|
+
}),
|
|
18
|
+
selectedSkillId: config.review.skill.id,
|
|
19
|
+
selectedSkillPath: config.review.skill.path
|
|
20
|
+
});
|
|
8
21
|
return {
|
|
9
22
|
name: "openai-compatible",
|
|
10
23
|
async generateReview(input) {
|
|
11
24
|
return (0, openaiCompatible_1.requestOpenAICompatibleText)({
|
|
12
25
|
config,
|
|
13
|
-
messages: (0, prompt_1.buildReviewMessages)(input,
|
|
14
|
-
promptAugmentation: (0, promptContext_1.buildPromptAugmentation)({
|
|
15
|
-
repositoryPath: input.repositoryPath,
|
|
16
|
-
skill: config.review.skill,
|
|
17
|
-
categoryLabel: "review skill",
|
|
18
|
-
builtinCategory: "code-review"
|
|
19
|
-
}),
|
|
20
|
-
selectedSkillId: config.review.skill.id,
|
|
21
|
-
selectedSkillPath: config.review.skill.path
|
|
22
|
-
}),
|
|
26
|
+
messages: (0, prompt_1.buildReviewMessages)(input, buildOptions(input)),
|
|
23
27
|
temperature: 0.1,
|
|
24
28
|
taskLabel: "review"
|
|
25
29
|
});
|
|
@@ -27,16 +31,23 @@ function createOpenAICompatibleReviewProvider(config) {
|
|
|
27
31
|
async repairReview(input, invalidResponse, issues) {
|
|
28
32
|
return (0, openaiCompatible_1.requestOpenAICompatibleText)({
|
|
29
33
|
config,
|
|
30
|
-
messages: (0, prompt_1.buildReviewRepairMessages)(input, invalidResponse, issues,
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
34
|
+
messages: (0, prompt_1.buildReviewRepairMessages)(input, invalidResponse, issues, buildOptions(input)),
|
|
35
|
+
temperature: 0.1,
|
|
36
|
+
taskLabel: "review"
|
|
37
|
+
});
|
|
38
|
+
},
|
|
39
|
+
async reviewChunk(input, chunk) {
|
|
40
|
+
return (0, openaiCompatible_1.requestOpenAICompatibleText)({
|
|
41
|
+
config,
|
|
42
|
+
messages: (0, prompt_1.buildChunkReviewMessages)(input, chunk, buildOptions(input)),
|
|
43
|
+
temperature: 0.1,
|
|
44
|
+
taskLabel: "review"
|
|
45
|
+
});
|
|
46
|
+
},
|
|
47
|
+
async reviewSummary(input, chunkReviews) {
|
|
48
|
+
return (0, openaiCompatible_1.requestOpenAICompatibleText)({
|
|
49
|
+
config,
|
|
50
|
+
messages: (0, prompt_1.buildSummaryReviewMessages)(input, chunkReviews, buildOptions(input)),
|
|
40
51
|
temperature: 0.1,
|
|
41
52
|
taskLabel: "review"
|
|
42
53
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openaiProvider.js","sourceRoot":"","sources":["../../src/review/openaiProvider.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"openaiProvider.js","sourceRoot":"","sources":["../../src/review/openaiProvider.ts"],"names":[],"mappings":";;AAcA,oFAkDC;AA/DD,0DAAkE;AAClE,oDAA2D;AAE3D,qCAOkB;AAGlB,SAAgB,oCAAoC,CAAC,MAAiB;IACpE,MAAM,YAAY,GAAG,CAAC,KAA2B,EAAuB,EAAE,CAAC,CAAC;QAC1E,kBAAkB,EAAE,IAAA,uCAAuB,EAAC;YAC1C,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,KAAK,EAAE;gBACL,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK;gBACtB,YAAY,EAAE,KAAK,CAAC,iBAAiB,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY;aAC1E;YACD,aAAa,EAAE,cAAc;YAC7B,eAAe,EAAE,aAAa;SAC/B,CAAC;QACF,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;QACvC,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;KAC5C,CAAC,CAAC;IAEH,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,KAAK,CAAC,cAAc,CAAC,KAA2B;YAC9C,OAAO,IAAA,8CAA2B,EAAC;gBACjC,MAAM;gBACN,QAAQ,EAAE,IAAA,4BAAmB,EAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;gBACzD,WAAW,EAAE,GAAG;gBAChB,SAAS,EAAE,QAAQ;aACpB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,YAAY,CAAC,KAA2B,EAAE,eAAuB,EAAE,MAAgB;YACvF,OAAO,IAAA,8CAA2B,EAAC;gBACjC,MAAM;gBACN,QAAQ,EAAE,IAAA,kCAAyB,EAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;gBACxF,WAAW,EAAE,GAAG;gBAChB,SAAS,EAAE,QAAQ;aACpB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,KAA2B,EAAE,KAAsB;YACnE,OAAO,IAAA,8CAA2B,EAAC;gBACjC,MAAM;gBACN,QAAQ,EAAE,IAAA,iCAAwB,EAAC,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;gBACrE,WAAW,EAAE,GAAG;gBAChB,SAAS,EAAE,QAAQ;aACpB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,aAAa,CAAC,KAA2B,EAAE,YAAqC;YACpF,OAAO,IAAA,8CAA2B,EAAC;gBACjC,MAAM;gBACN,QAAQ,EAAE,IAAA,mCAA0B,EAAC,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC9E,WAAW,EAAE,GAAG;gBAChB,SAAS,EAAE,QAAQ;aACpB,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/out/review/parser.js
CHANGED
|
@@ -1,11 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.stripReviewChunkPrefix = stripReviewChunkPrefix;
|
|
4
|
+
exports.countReviewDetailsBySeverity = countReviewDetailsBySeverity;
|
|
5
|
+
exports.buildConsistentReviewSummary = buildConsistentReviewSummary;
|
|
3
6
|
exports.parseReviewResponse = parseReviewResponse;
|
|
4
7
|
exports.validateReviewResult = validateReviewResult;
|
|
5
8
|
exports.validateReviewContentLanguage = validateReviewContentLanguage;
|
|
6
9
|
exports.shouldBlockReviewResult = shouldBlockReviewResult;
|
|
7
10
|
const protocol_1 = require("../commitMessage/protocol");
|
|
8
11
|
const validSeverities = new Set(["P0", "P1", "P2", "P3", "OTHER"]);
|
|
12
|
+
const reviewSeverities = ["P0", "P1", "P2", "P3", "OTHER"];
|
|
13
|
+
const chunkPrefixPattern = /^\s*\[\s*chunk\s*\d+\s*\]\s*/i;
|
|
14
|
+
function stripReviewChunkPrefix(value) {
|
|
15
|
+
return value.replace(chunkPrefixPattern, "").trim();
|
|
16
|
+
}
|
|
17
|
+
function countReviewDetailsBySeverity(details) {
|
|
18
|
+
const counts = {
|
|
19
|
+
P0: 0,
|
|
20
|
+
P1: 0,
|
|
21
|
+
P2: 0,
|
|
22
|
+
P3: 0,
|
|
23
|
+
OTHER: 0
|
|
24
|
+
};
|
|
25
|
+
for (const detail of details) {
|
|
26
|
+
counts[detail.severity] += 1;
|
|
27
|
+
}
|
|
28
|
+
return counts;
|
|
29
|
+
}
|
|
30
|
+
function buildConsistentReviewSummary(input) {
|
|
31
|
+
const counts = countReviewDetailsBySeverity(input.details);
|
|
32
|
+
const severityParts = reviewSeverities
|
|
33
|
+
.filter((severity) => counts[severity] > 0)
|
|
34
|
+
.map((severity) => `${severity}: ${counts[severity]}`);
|
|
35
|
+
if (severityParts.length === 0) {
|
|
36
|
+
return input.decision === "block"
|
|
37
|
+
? "Review blocked, but no actionable issues were returned."
|
|
38
|
+
: "No review issues found.";
|
|
39
|
+
}
|
|
40
|
+
return `${input.decision === "block" ? "Blocking review issues found" : "Review issues found"} (${severityParts.join(", ")}).`;
|
|
41
|
+
}
|
|
9
42
|
function parseReviewResponse(raw, provider) {
|
|
10
43
|
const trimmed = raw.trim();
|
|
11
44
|
const jsonText = extractJsonPayload(trimmed);
|
|
@@ -52,7 +85,7 @@ function validateReviewContentLanguage(result, language) {
|
|
|
52
85
|
allowChineseInBackticks: true
|
|
53
86
|
});
|
|
54
87
|
for (const [index, detail] of result.details.entries()) {
|
|
55
|
-
issues.push(...(0, protocol_1.validateLanguageText)(detail.message, language, `details[${index}].message`, {
|
|
88
|
+
issues.push(...(0, protocol_1.validateLanguageText)(stripReviewChunkPrefix(detail.message), language, `details[${index}].message`, {
|
|
56
89
|
allowChineseInBackticks: true
|
|
57
90
|
}));
|
|
58
91
|
}
|
|
@@ -87,6 +120,10 @@ function parseReviewDetails(value) {
|
|
|
87
120
|
if (typeof messageRaw !== "string" || !messageRaw.trim()) {
|
|
88
121
|
continue;
|
|
89
122
|
}
|
|
123
|
+
const message = stripReviewChunkPrefix(messageRaw);
|
|
124
|
+
if (!message) {
|
|
125
|
+
continue;
|
|
126
|
+
}
|
|
90
127
|
const severity = typeof severityRaw === "string" && validSeverities.has(severityRaw)
|
|
91
128
|
? severityRaw
|
|
92
129
|
: "OTHER";
|
|
@@ -96,7 +133,7 @@ function parseReviewDetails(value) {
|
|
|
96
133
|
: undefined;
|
|
97
134
|
details.push({
|
|
98
135
|
severity,
|
|
99
|
-
message
|
|
136
|
+
message,
|
|
100
137
|
...(filePath ? { filePath } : {}),
|
|
101
138
|
...(lineNumber !== undefined ? { lineNumber } : {})
|
|
102
139
|
});
|
package/out/review/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/review/parser.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/review/parser.ts"],"names":[],"mappings":"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"}
|
package/out/review/prompt.js
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildReviewMessages = buildReviewMessages;
|
|
4
|
+
exports.buildChunkReviewMessages = buildChunkReviewMessages;
|
|
5
|
+
exports.buildSummaryReviewMessages = buildSummaryReviewMessages;
|
|
4
6
|
exports.buildReviewRepairMessages = buildReviewRepairMessages;
|
|
5
7
|
const diffClassifier_1 = require("./diffClassifier");
|
|
6
8
|
function buildReviewMessages(input, options = {}) {
|
|
9
|
+
const annotate = shouldAnnotateLineNumbers(input);
|
|
10
|
+
const renderedDiff = annotate ? annotateDiffWithLineNumbers(input.diff) : input.diff;
|
|
7
11
|
return [
|
|
8
12
|
{
|
|
9
13
|
role: "system",
|
|
@@ -27,10 +31,95 @@ function buildReviewMessages(input, options = {}) {
|
|
|
27
31
|
`Changed files (${input.changedFiles.length}):`,
|
|
28
32
|
...input.changedFiles.map((file) => `- ${file}`),
|
|
29
33
|
...buildReviewPromptAugmentationSection(options.promptAugmentation),
|
|
30
|
-
...buildReviewDiffDomainSection(input, options),
|
|
34
|
+
...buildReviewDiffDomainSection(input, input.diff, input.changedFiles, options),
|
|
31
35
|
"",
|
|
32
|
-
"Staged diff
|
|
33
|
-
|
|
36
|
+
...buildDiffSectionHeading(annotate, "Staged diff"),
|
|
37
|
+
renderedDiff,
|
|
38
|
+
...buildReviewRuleSection({ annotateLineNumbers: annotate, perLineFindings: Boolean(input.inlineAnchoring) })
|
|
39
|
+
].join("\n")
|
|
40
|
+
}
|
|
41
|
+
];
|
|
42
|
+
}
|
|
43
|
+
function buildChunkReviewMessages(input, chunk, options = {}) {
|
|
44
|
+
const annotate = shouldAnnotateLineNumbers(input);
|
|
45
|
+
const renderedDiff = annotate ? annotateDiffWithLineNumbers(chunk.diff) : chunk.diff;
|
|
46
|
+
return [
|
|
47
|
+
{
|
|
48
|
+
role: "system",
|
|
49
|
+
content: [
|
|
50
|
+
"You are a senior code reviewer.",
|
|
51
|
+
"You are reviewing only one chunk of a larger diff.",
|
|
52
|
+
"You must obey the requested review language for all natural-language review fields.",
|
|
53
|
+
"Return strict JSON only.",
|
|
54
|
+
'The JSON shape must be: {"score": number|null, "decision": "pass"|"block", "summary": string, "details": Array<{ "severity": "P0"|"P1"|"P2"|"P3"|"OTHER", "message": string, "filePath"?: string, "lineNumber"?: number }>}.'
|
|
55
|
+
].join(" ")
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
role: "user",
|
|
59
|
+
content: [
|
|
60
|
+
`Repository: ${input.repositoryPath}`,
|
|
61
|
+
`Review language: ${input.reviewLanguage}`,
|
|
62
|
+
`Threshold: ${input.threshold}`,
|
|
63
|
+
`Commit message: ${input.commitMessage ?? "(none)"}`,
|
|
64
|
+
`Review mode: chunked (${chunk.chunkIndex}/${chunk.chunkCount})`,
|
|
65
|
+
`Chunk truncated: ${chunk.truncated ? "yes" : "no"}`,
|
|
66
|
+
`Chunk files (${chunk.changedFiles.length}):`,
|
|
67
|
+
...chunk.changedFiles.map((file) => `- ${file}`),
|
|
68
|
+
...buildReviewPromptAugmentationSection(options.promptAugmentation),
|
|
69
|
+
...buildReviewDiffDomainSection(input, chunk.diff, chunk.changedFiles, options),
|
|
70
|
+
"",
|
|
71
|
+
...buildDiffSectionHeading(annotate, "Chunk diff"),
|
|
72
|
+
renderedDiff,
|
|
73
|
+
...buildReviewRuleSection({ annotateLineNumbers: annotate, perLineFindings: Boolean(input.inlineAnchoring) })
|
|
74
|
+
].join("\n")
|
|
75
|
+
}
|
|
76
|
+
];
|
|
77
|
+
}
|
|
78
|
+
function buildSummaryReviewMessages(input, chunkReviews, options = {}) {
|
|
79
|
+
const chunkSections = chunkReviews.flatMap((review, index) => [
|
|
80
|
+
`Chunk ${index + 1}:`,
|
|
81
|
+
`- score: ${review.score === null ? "N/A" : review.score}`,
|
|
82
|
+
`- decision: ${review.decision}`,
|
|
83
|
+
`- summary: ${review.summary}`,
|
|
84
|
+
`- details: ${review.details.length > 0
|
|
85
|
+
? review.details
|
|
86
|
+
.map((detail) => `${detail.severity} ${detail.filePath ?? ""}${detail.lineNumber === undefined ? "" : `:${detail.lineNumber}`} ${detail.message}`.trim())
|
|
87
|
+
.join(" | ")
|
|
88
|
+
: "none"}`,
|
|
89
|
+
""
|
|
90
|
+
]);
|
|
91
|
+
return [
|
|
92
|
+
{
|
|
93
|
+
role: "system",
|
|
94
|
+
content: [
|
|
95
|
+
"You are a senior code reviewer.",
|
|
96
|
+
"You are summarizing chunk-level review results from a larger diff.",
|
|
97
|
+
"You must obey the requested review language for all natural-language review fields.",
|
|
98
|
+
"Return strict JSON only.",
|
|
99
|
+
'The JSON shape must be: {"score": number|null, "decision": "pass"|"block", "summary": string, "details": Array<{ "severity": "P0"|"P1"|"P2"|"P3"|"OTHER", "message": string, "filePath"?: string, "lineNumber"?: number }>}.'
|
|
100
|
+
].join(" ")
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
role: "user",
|
|
104
|
+
content: [
|
|
105
|
+
`Repository: ${input.repositoryPath}`,
|
|
106
|
+
`Review language: ${input.reviewLanguage}`,
|
|
107
|
+
`Threshold: ${input.threshold}`,
|
|
108
|
+
`Commit message: ${input.commitMessage ?? "(none)"}`,
|
|
109
|
+
"Review mode: chunked-summary",
|
|
110
|
+
`Changed files (${input.changedFiles.length}):`,
|
|
111
|
+
...input.changedFiles.map((file) => `- ${file}`),
|
|
112
|
+
...buildReviewPromptAugmentationSection(options.promptAugmentation),
|
|
113
|
+
...buildReviewDiffDomainSection(input, input.diff, input.changedFiles, options),
|
|
114
|
+
"",
|
|
115
|
+
`Chunk review results (${chunkReviews.length}):`,
|
|
116
|
+
...chunkSections,
|
|
117
|
+
"Task:",
|
|
118
|
+
"- Merge repeated issues across chunks.",
|
|
119
|
+
"- Produce a concise final summary for the whole change set.",
|
|
120
|
+
"- Keep the output aligned with the most severe chunk findings.",
|
|
121
|
+
"- Do not ignore blocked chunks.",
|
|
122
|
+
...buildReviewRuleSection({ perLineFindings: Boolean(input.inlineAnchoring) })
|
|
34
123
|
].join("\n")
|
|
35
124
|
}
|
|
36
125
|
];
|
|
@@ -56,13 +145,14 @@ function buildReviewRepairMessages(input, invalidResponse, issues, options = {})
|
|
|
56
145
|
`Threshold: ${input.threshold}`,
|
|
57
146
|
`Commit message: ${input.commitMessage ?? "(none)"}`,
|
|
58
147
|
...buildReviewPromptAugmentationSection(options.promptAugmentation),
|
|
59
|
-
...buildReviewDiffDomainSection(input, options),
|
|
148
|
+
...buildReviewDiffDomainSection(input, input.diff, input.changedFiles, options),
|
|
60
149
|
"",
|
|
61
150
|
"Previous invalid response:",
|
|
62
151
|
invalidResponse,
|
|
63
152
|
"",
|
|
64
153
|
"Repair issues:",
|
|
65
|
-
...issues.map((issue) => `- ${issue}`)
|
|
154
|
+
...issues.map((issue) => `- ${issue}`),
|
|
155
|
+
...buildReviewRuleSection({ perLineFindings: Boolean(input.inlineAnchoring) })
|
|
66
156
|
].join("\n")
|
|
67
157
|
}
|
|
68
158
|
];
|
|
@@ -73,11 +163,93 @@ function buildReviewPromptAugmentationSection(promptAugmentation) {
|
|
|
73
163
|
}
|
|
74
164
|
return ["", "Review skill guidance:", ...promptAugmentation];
|
|
75
165
|
}
|
|
76
|
-
function
|
|
166
|
+
function buildReviewRuleSection(options) {
|
|
167
|
+
const sections = [
|
|
168
|
+
...(options.annotateLineNumbers ? buildLineNumberCitationRules() : []),
|
|
169
|
+
...(options.perLineFindings ? buildPerLineFindingRules() : [])
|
|
170
|
+
];
|
|
171
|
+
return sections.length > 0 ? ["", ...sections] : [];
|
|
172
|
+
}
|
|
173
|
+
function buildLineNumberCitationRules() {
|
|
174
|
+
return [
|
|
175
|
+
"Line-number citation (the diff above is annotated with line numbers):",
|
|
176
|
+
"- Every diff body line is prefixed with `<lineNumber> | `, where `<lineNumber>` is the new-file line number. Added lines keep their `+` marker after the prefix; removed lines, hunk headers, and file headers have a blank prefix and are NOT valid line targets.",
|
|
177
|
+
"- For every issue that concerns a specific changed line, set filePath and lineNumber by copying the exact `<lineNumber>` shown in front of the corresponding added (`+`) line. Do not compute or guess the number yourself.",
|
|
178
|
+
"- In message, also quote the exact offending added line verbatim in backticks (the code after the `+`, without the `<lineNumber> | ` prefix), so the location can be double-checked.",
|
|
179
|
+
"- Only omit lineNumber when an issue genuinely cannot map to a single added line (for example a whole-file or missing-file concern); in that case still set filePath."
|
|
180
|
+
];
|
|
181
|
+
}
|
|
182
|
+
function buildPerLineFindingRules() {
|
|
183
|
+
return [
|
|
184
|
+
"Per-line findings (this review publishes one inline comment per finding):",
|
|
185
|
+
"- When the same root cause appears on multiple distinct added lines (for example several leftover debug log statements), output one detail entry per affected line, each with its own lineNumber and its own quoted line. Do not merge them into a single entry that lacks a concrete line number.",
|
|
186
|
+
"- For issues that map to concrete added lines, this per-line requirement overrides any 'merge duplicate findings into one' guidance in the selected skill or its references."
|
|
187
|
+
];
|
|
188
|
+
}
|
|
189
|
+
function shouldAnnotateLineNumbers(input) {
|
|
190
|
+
return Boolean(input.annotateLineNumbers || input.inlineAnchoring);
|
|
191
|
+
}
|
|
192
|
+
function buildDiffSectionHeading(annotate, label) {
|
|
193
|
+
if (!annotate) {
|
|
194
|
+
return [`${label}:`];
|
|
195
|
+
}
|
|
196
|
+
return [`${label} (each body line is prefixed with its new-file line number as \`<lineNumber> | \`):`];
|
|
197
|
+
}
|
|
198
|
+
/**
|
|
199
|
+
* Prefixes each diff body line with its new-file line number using the same counting rules as the
|
|
200
|
+
* diff-line index in detailLocator. This lets the model cite a reliable lineNumber by copying the
|
|
201
|
+
* visible number instead of counting lines itself. Only used for line-anchoring reviews; the raw
|
|
202
|
+
* diff is still what the detail locator parses afterwards.
|
|
203
|
+
*/
|
|
204
|
+
function annotateDiffWithLineNumbers(diff) {
|
|
205
|
+
const blankPrefix = `${" ".repeat(6)} | `;
|
|
206
|
+
const lines = diff.split(/\r?\n/);
|
|
207
|
+
let currentNewLine = 0;
|
|
208
|
+
let inHunk = false;
|
|
209
|
+
const annotated = lines.map((line) => {
|
|
210
|
+
if (line.startsWith("diff --git ")) {
|
|
211
|
+
inHunk = false;
|
|
212
|
+
return `${blankPrefix}${line}`;
|
|
213
|
+
}
|
|
214
|
+
const hunkMatch = line.match(/^@@ -\d+(?:,\d+)? \+(\d+)(?:,\d+)? @@/);
|
|
215
|
+
if (hunkMatch) {
|
|
216
|
+
currentNewLine = Number(hunkMatch[1]);
|
|
217
|
+
inHunk = true;
|
|
218
|
+
return `${blankPrefix}${line}`;
|
|
219
|
+
}
|
|
220
|
+
if (!inHunk) {
|
|
221
|
+
return `${blankPrefix}${line}`;
|
|
222
|
+
}
|
|
223
|
+
if (line.startsWith("+") && !line.startsWith("+++")) {
|
|
224
|
+
const annotatedLine = `${formatNewLineNumber(currentNewLine)} | ${line}`;
|
|
225
|
+
currentNewLine += 1;
|
|
226
|
+
return annotatedLine;
|
|
227
|
+
}
|
|
228
|
+
if (line.startsWith("-") && !line.startsWith("---")) {
|
|
229
|
+
return `${blankPrefix}${line}`;
|
|
230
|
+
}
|
|
231
|
+
if (line.startsWith(" ")) {
|
|
232
|
+
const annotatedLine = `${formatNewLineNumber(currentNewLine)} | ${line}`;
|
|
233
|
+
currentNewLine += 1;
|
|
234
|
+
return annotatedLine;
|
|
235
|
+
}
|
|
236
|
+
if (line.startsWith("\\")) {
|
|
237
|
+
return `${blankPrefix}${line}`;
|
|
238
|
+
}
|
|
239
|
+
inHunk = false;
|
|
240
|
+
return `${blankPrefix}${line}`;
|
|
241
|
+
});
|
|
242
|
+
return annotated.join("\n");
|
|
243
|
+
}
|
|
244
|
+
function formatNewLineNumber(lineNumber) {
|
|
245
|
+
return String(lineNumber).padStart(6, " ");
|
|
246
|
+
}
|
|
247
|
+
function buildReviewDiffDomainSection(input, diff, changedFiles, options) {
|
|
248
|
+
void input;
|
|
77
249
|
const detection = (0, diffClassifier_1.analyzeReviewSkillDomain)({
|
|
78
250
|
skill: buildReviewSkillForDetection(options.selectedSkillId, options.selectedSkillPath),
|
|
79
|
-
changedFiles
|
|
80
|
-
diff
|
|
251
|
+
changedFiles,
|
|
252
|
+
diff
|
|
81
253
|
});
|
|
82
254
|
return [
|
|
83
255
|
"",
|
package/out/review/prompt.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/review/prompt.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/review/prompt.ts"],"names":[],"mappings":";;AAkBA,kDAsCC;AAED,4DAuCC;AAED,gEAuDC;AAED,8DAqCC;AAhMD,qDAA4D;AAiB5D,SAAgB,mBAAmB,CACjC,KAA2B,EAC3B,UAA+B,EAAE;IAEjC,MAAM,QAAQ,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,2BAA2B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;IAErF,OAAO;QACL;YACE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,iCAAiC;gBACjC,qFAAqF;gBACrF,0BAA0B;gBAC1B,8NAA8N;gBAC9N,+EAA+E;gBAC/E,wIAAwI;gBACxI,6CAA6C;aAC9C,CAAC,IAAI,CAAC,GAAG,CAAC;SACZ;QACD;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE;gBACP,eAAe,KAAK,CAAC,cAAc,EAAE;gBACrC,oBAAoB,KAAK,CAAC,cAAc,EAAE;gBAC1C,cAAc,KAAK,CAAC,SAAS,EAAE;gBAC/B,mBAAmB,KAAK,CAAC,aAAa,IAAI,QAAQ,EAAE;gBACpD,kBAAkB,KAAK,CAAC,YAAY,CAAC,MAAM,IAAI;gBAC/C,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;gBAChD,GAAG,oCAAoC,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBACnE,GAAG,4BAA4B,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC;gBAC/E,EAAE;gBACF,GAAG,uBAAuB,CAAC,QAAQ,EAAE,aAAa,CAAC;gBACnD,YAAY;gBACZ,GAAG,sBAAsB,CAAC,EAAE,mBAAmB,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;aAC9G,CAAC,IAAI,CAAC,IAAI,CAAC;SACb;KACF,CAAC;AACJ,CAAC;AAED,SAAgB,wBAAwB,CACtC,KAA2B,EAC3B,KAAsB,EACtB,UAA+B,EAAE;IAEjC,MAAM,QAAQ,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,2BAA2B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;IAErF,OAAO;QACL;YACE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,iCAAiC;gBACjC,oDAAoD;gBACpD,qFAAqF;gBACrF,0BAA0B;gBAC1B,8NAA8N;aAC/N,CAAC,IAAI,CAAC,GAAG,CAAC;SACZ;QACD;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE;gBACP,eAAe,KAAK,CAAC,cAAc,EAAE;gBACrC,oBAAoB,KAAK,CAAC,cAAc,EAAE;gBAC1C,cAAc,KAAK,CAAC,SAAS,EAAE;gBAC/B,mBAAmB,KAAK,CAAC,aAAa,IAAI,QAAQ,EAAE;gBACpD,yBAAyB,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,GAAG;gBAChE,oBAAoB,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;gBACpD,gBAAgB,KAAK,CAAC,YAAY,CAAC,MAAM,IAAI;gBAC7C,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;gBAChD,GAAG,oCAAoC,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBACnE,GAAG,4BAA4B,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC;gBAC/E,EAAE;gBACF,GAAG,uBAAuB,CAAC,QAAQ,EAAE,YAAY,CAAC;gBAClD,YAAY;gBACZ,GAAG,sBAAsB,CAAC,EAAE,mBAAmB,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;aAC9G,CAAC,IAAI,CAAC,IAAI,CAAC;SACb;KACF,CAAC;AACJ,CAAC;AAED,SAAgB,0BAA0B,CACxC,KAA2B,EAC3B,YAAqC,EACrC,UAA+B,EAAE;IAEjC,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5D,SAAS,KAAK,GAAG,CAAC,GAAG;QACrB,YAAY,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE;QAC1D,eAAe,MAAM,CAAC,QAAQ,EAAE;QAChC,cAAc,MAAM,CAAC,OAAO,EAAE;QAC9B,cACE,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YACvB,CAAC,CAAC,MAAM,CAAC,OAAO;iBACX,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,GAAG,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;iBACxJ,IAAI,CAAC,KAAK,CAAC;YAChB,CAAC,CAAC,MACN,EAAE;QACF,EAAE;KACH,CAAC,CAAC;IAEH,OAAO;QACL;YACE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,iCAAiC;gBACjC,oEAAoE;gBACpE,qFAAqF;gBACrF,0BAA0B;gBAC1B,8NAA8N;aAC/N,CAAC,IAAI,CAAC,GAAG,CAAC;SACZ;QACD;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE;gBACP,eAAe,KAAK,CAAC,cAAc,EAAE;gBACrC,oBAAoB,KAAK,CAAC,cAAc,EAAE;gBAC1C,cAAc,KAAK,CAAC,SAAS,EAAE;gBAC/B,mBAAmB,KAAK,CAAC,aAAa,IAAI,QAAQ,EAAE;gBACpD,8BAA8B;gBAC9B,kBAAkB,KAAK,CAAC,YAAY,CAAC,MAAM,IAAI;gBAC/C,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;gBAChD,GAAG,oCAAoC,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBACnE,GAAG,4BAA4B,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC;gBAC/E,EAAE;gBACF,yBAAyB,YAAY,CAAC,MAAM,IAAI;gBAChD,GAAG,aAAa;gBAChB,OAAO;gBACP,wCAAwC;gBACxC,6DAA6D;gBAC7D,gEAAgE;gBAChE,iCAAiC;gBACjC,GAAG,sBAAsB,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;aAC/E,CAAC,IAAI,CAAC,IAAI,CAAC;SACb;KACF,CAAC;AACJ,CAAC;AAED,SAAgB,yBAAyB,CACvC,KAA2B,EAC3B,eAAuB,EACvB,MAAgB,EAChB,UAA+B,EAAE;IAEjC,OAAO;QACL;YACE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,qDAAqD;gBACrD,qFAAqF;gBACrF,0BAA0B;gBAC1B,8NAA8N;gBAC9N,wIAAwI;gBACxI,6CAA6C;aAC9C,CAAC,IAAI,CAAC,GAAG,CAAC;SACZ;QACD;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE;gBACP,eAAe,KAAK,CAAC,cAAc,EAAE;gBACrC,oBAAoB,KAAK,CAAC,cAAc,EAAE;gBAC1C,cAAc,KAAK,CAAC,SAAS,EAAE;gBAC/B,mBAAmB,KAAK,CAAC,aAAa,IAAI,QAAQ,EAAE;gBACpD,GAAG,oCAAoC,CAAC,OAAO,CAAC,kBAAkB,CAAC;gBACnE,GAAG,4BAA4B,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC;gBAC/E,EAAE;gBACF,4BAA4B;gBAC5B,eAAe;gBACf,EAAE;gBACF,gBAAgB;gBAChB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC;gBACtC,GAAG,sBAAsB,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;aAC/E,CAAC,IAAI,CAAC,IAAI,CAAC;SACb;KACF,CAAC;AACJ,CAAC;AAED,SAAS,oCAAoC,CAAC,kBAAiD;IAC7F,IAAI,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,CAAC,EAAE,EAAE,wBAAwB,EAAE,GAAG,kBAAkB,CAAC,CAAC;AAC/D,CAAC;AAOD,SAAS,sBAAsB,CAAC,OAAiC;IAC/D,MAAM,QAAQ,GAAG;QACf,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/D,CAAC;IACF,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACtD,CAAC;AAED,SAAS,4BAA4B;IACnC,OAAO;QACL,uEAAuE;QACvE,oQAAoQ;QACpQ,6NAA6N;QAC7N,sLAAsL;QACtL,uKAAuK;KACxK,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB;IAC/B,OAAO;QACL,2EAA2E;QAC3E,oSAAoS;QACpS,8KAA8K;KAC/K,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAmE;IACpG,OAAO,OAAO,CAAC,KAAK,CAAC,mBAAmB,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,uBAAuB,CAAC,QAAiB,EAAE,KAAa;IAC/D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,CAAC,GAAG,KAAK,qFAAqF,CAAC,CAAC;AACzG,CAAC;AAED;;;;;GAKG;AACH,SAAS,2BAA2B,CAAC,IAAY;IAC/C,MAAM,WAAW,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACnC,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACnC,MAAM,GAAG,KAAK,CAAC;YACf,OAAO,GAAG,WAAW,GAAG,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACtE,IAAI,SAAS,EAAE,CAAC;YACd,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,GAAG,IAAI,CAAC;YACd,OAAO,GAAG,WAAW,GAAG,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,GAAG,WAAW,GAAG,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,aAAa,GAAG,GAAG,mBAAmB,CAAC,cAAc,CAAC,MAAM,IAAI,EAAE,CAAC;YACzE,cAAc,IAAI,CAAC,CAAC;YACpB,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACpD,OAAO,GAAG,WAAW,GAAG,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,aAAa,GAAG,GAAG,mBAAmB,CAAC,cAAc,CAAC,MAAM,IAAI,EAAE,CAAC;YACzE,cAAc,IAAI,CAAC,CAAC;YACpB,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,OAAO,GAAG,WAAW,GAAG,IAAI,EAAE,CAAC;QACjC,CAAC;QAED,MAAM,GAAG,KAAK,CAAC;QACf,OAAO,GAAG,WAAW,GAAG,IAAI,EAAE,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,mBAAmB,CAAC,UAAkB;IAC7C,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,4BAA4B,CACnC,KAA2B,EAC3B,IAAY,EACZ,YAAsB,EACtB,OAAiE;IAEjE,KAAK,KAAK,CAAC;IACX,MAAM,SAAS,GAAG,IAAA,yCAAwB,EAAC;QACzC,KAAK,EAAE,4BAA4B,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,iBAAiB,CAAC;QACvF,YAAY;QACZ,IAAI;KACL,CAAC,CAAC;IAEH,OAAO;QACL,EAAE;QACF,uBAAuB;QACvB,4BAA4B,SAAS,CAAC,mBAAmB,EAAE;QAC3D,2BAA2B,SAAS,CAAC,cAAc,EAAE;QACrD,iBAAiB,SAAS,CAAC,UAAU,EAAE;QACvC,6BAA6B,SAAS,CAAC,oBAAoB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QAC5E,iCAAiC,SAAS,CAAC,uBAAuB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QACnF,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAC9B,CAAC,CAAC;gBACE,2BAA2B;gBAC3B,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,MAAM,EAAE,CAAC;aACtD;YACH,CAAC,CAAC,EAAE,CAAC;QACP,eAAe;QACf,2EAA2E;QAC3E,sGAAsG;QACtG,4LAA4L;KAC7L,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B,CACnC,eAAmC,EACnC,iBAAqC;IAErC,OAAO;QACL,EAAE,EAAE,eAAe,IAAI,aAAa;QACpC,YAAY,EAAE,gCAAgC,CAAC,eAAe,EAAE,iBAAiB,CAAC;KACnF,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CACvC,eAAmC,EACnC,iBAAqC;IAErC,IAAI,iBAAiB,EAAE,IAAI,EAAE,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,QAAQ,CAAC,eAAe,IAAI,aAAa,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAClD,KAAK,sBAAsB;YACzB,OAAO,UAAU,CAAC;QACpB,KAAK,oBAAoB;YACvB,OAAO,QAAQ,CAAC;QAClB,KAAK,eAAe;YAClB,OAAO,GAAG,CAAC;QACb,KAAK,kBAAkB;YACrB,OAAO,MAAM,CAAC;QAChB,KAAK,oBAAoB;YACvB,OAAO,QAAQ,CAAC;QAClB,KAAK,oBAAoB;YACvB,OAAO,QAAQ,CAAC;QAClB,KAAK,iBAAiB;YACpB,OAAO,KAAK,CAAC;QACf,KAAK,kBAAkB;YACrB,OAAO,MAAM,CAAC;QAChB,KAAK,iBAAiB;YACpB,OAAO,KAAK,CAAC;QACf,KAAK,oBAAoB;YACvB,OAAO,QAAQ,CAAC;QAClB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED