Skip to content

Commit 37f1351

Browse files
github-actions[bot]Copilotpelikhan
authored
[jsweep] Clean add_labels.cjs (#9005)
* jsweep: Clean add_labels.cjs - Simplified item number determination with ternary expression - Consolidated error handling for invalid/missing item numbers - Removed unnecessary intermediate variables - Used spread operator for context.repo - Used shorthand property for contextType - Created comprehensive test file with 13 test cases - Reduced from 146 to 133 lines (13 lines saved) * Fix add_labels.test.cjs test framework and empty labels behavior (#9006) * Initial plan * Fix add_labels.test.cjs to use vitest and fix empty labels test expectation Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> * Apply prettier formatting to add_labels.cjs (single-line ternary expressions) Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> * Add changeset [skip-ci] --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> Co-authored-by: Peli de Halleux <pelikhan@users.noreply.github.com>
1 parent 202c02e commit 37f1351

File tree

3 files changed

+366
-31
lines changed

3 files changed

+366
-31
lines changed

.changeset/patch-clean-add-labels-jsweep.md

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

actions/setup/js/add_labels.cjs

Lines changed: 12 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -47,38 +47,20 @@ async function main(config = {}) {
4747

4848
processedCount++;
4949

50-
const item = message;
51-
5250
// Determine target issue/PR number
53-
let itemNumber;
54-
if (item.item_number !== undefined) {
55-
itemNumber = parseInt(String(item.item_number), 10);
56-
if (isNaN(itemNumber)) {
57-
core.warning(`Invalid item number: ${item.item_number}`);
58-
return {
59-
success: false,
60-
error: `Invalid item number: ${item.item_number}`,
61-
};
62-
}
63-
} else {
64-
// Use context issue or PR if available
65-
const contextIssue = context.payload?.issue?.number;
66-
const contextPR = context.payload?.pull_request?.number;
67-
itemNumber = contextIssue || contextPR;
68-
69-
if (!itemNumber) {
70-
core.warning("No item_number provided and not in issue/PR context");
71-
return {
72-
success: false,
73-
error: "No issue/PR number available",
74-
};
75-
}
51+
const itemNumber = message.item_number !== undefined ? parseInt(String(message.item_number), 10) : context.payload?.issue?.number || context.payload?.pull_request?.number;
52+
53+
if (!itemNumber || isNaN(itemNumber)) {
54+
const errorMsg = message.item_number !== undefined ? `Invalid item number: ${message.item_number}` : "No item_number provided and not in issue/PR context";
55+
core.warning(errorMsg);
56+
return {
57+
success: false,
58+
error: message.item_number !== undefined ? `Invalid item number: ${message.item_number}` : "No issue/PR number available",
59+
};
7660
}
7761

78-
// Determine context type
7962
const contextType = context.payload?.pull_request ? "pull request" : "issue";
80-
81-
const requestedLabels = item.labels ?? [];
63+
const requestedLabels = message.labels ?? [];
8264
core.info(`Requested labels: ${JSON.stringify(requestedLabels)}`);
8365

8466
// Use validation helper to sanitize and validate labels
@@ -118,8 +100,7 @@ async function main(config = {}) {
118100

119101
try {
120102
await github.rest.issues.addLabels({
121-
owner: context.repo.owner,
122-
repo: context.repo.repo,
103+
...context.repo,
123104
issue_number: itemNumber,
124105
labels: uniqueLabels,
125106
});
@@ -130,7 +111,7 @@ async function main(config = {}) {
130111
success: true,
131112
number: itemNumber,
132113
labelsAdded: uniqueLabels,
133-
contextType: contextType,
114+
contextType,
134115
};
135116
} catch (error) {
136117
const errorMessage = getErrorMessage(error);

0 commit comments

Comments
 (0)