@@ -115,8 +115,13 @@ jobs:
115115 pull_number: issueNumber
116116 });
117117
118- let readmeContent = '';
119- let csvContent = '';
118+ // Get PR details to know the branch
119+ const { data: pr } = await octokit.pulls.get({
120+ owner: event.repository.owner.login,
121+ repo: event.repository.name,
122+ pull_number: issueNumber
123+ });
124+
120125 let readmeChanged = false;
121126 let csvChanged = false;
122127 let newPrompt = '';
@@ -177,76 +182,47 @@ jobs:
177182 return;
178183 }
179184
180- // Create a new branch for fixes
181- const branchName = `ai-bot/fix-conflicts-${issueNumber}`;
182- const defaultBranch = event.repository.default_branch;
183-
184- // Get current branch ref
185- const { data: ref } = await octokit.git.getRef({
186- owner: event.repository.owner.login,
187- repo: event.repository.name,
188- ref: `heads/${defaultBranch}`
189- });
190-
191185 try {
192- // Create new branch
193- await octokit.git.createRef({
194- owner: event.repository.owner.login,
195- repo: event.repository.name,
196- ref: `refs/heads/${branchName}`,
197- sha: ref.object.sha
198- });
199-
200- // If CSV wasn't updated, update it
186+ // If CSV wasn't updated, update it directly in the PR branch
201187 if (!csvChanged) {
202188 // Get current CSV content
203189 const { data: currentCsv } = await octokit.repos.getContent({
204190 owner: event.repository.owner.login,
205191 repo: event.repository.name,
206192 path: 'prompts.csv',
207- ref: branchName
193+ ref: pr.head.ref // Use PR's branch
208194 });
209195
210196 // Add new prompt to CSV
211197 const newCsvContent = Buffer.from(currentCsv.content, 'base64').toString('utf-8') +
212198 `\n"${actName.replace(/"/g, '""')}","${newPrompt.replace(/"/g, '""')}"`;
213199
214- // Update CSV file
200+ // Update CSV file directly in the PR branch
215201 await octokit.repos.createOrUpdateFileContents({
216202 owner: event.repository.owner.login,
217203 repo: event.repository.name,
218204 path: 'prompts.csv',
219205 message: `feat: Add "${actName}" to prompts.csv`,
220206 content: Buffer.from(newCsvContent).toString('base64'),
221- branch: branchName,
207+ branch: pr.head.ref, // Use PR's branch
222208 sha: currentCsv.sha
223209 });
224210
225- // Create PR or update existing one
226- await octokit.pulls.create({
211+ await octokit.issues.createComment({
227212 owner: event.repository.owner.login,
228213 repo: event.repository.name,
229- title: `feat: Add "${actName}" to prompts.csv`,
230- body: `This PR was automatically generated to sync prompts.csv with README.md changes.\n\nRelated to #${issueNumber}`,
231- head: branchName,
232- base: defaultBranch
214+ issue_number: issueNumber,
215+ body: '✨ Updated prompts.csv in the PR with the new prompt'
233216 });
234217 }
235218
236- await octokit.issues.createComment({
237- owner: event.repository.owner.login,
238- repo: event.repository.name,
239- issue_number: issueNumber,
240- body: '✨ Created a fix PR to sync README.md and prompts.csv'
241- });
242-
243219 } catch (error) {
244220 console.error('Error:', error);
245221 await octokit.issues.createComment({
246222 owner: event.repository.owner.login,
247223 repo: event.repository.name,
248224 issue_number: issueNumber,
249- body: `❌ Error while trying to fix conflicts : ${error.message}`
225+ body: `❌ Error while trying to update files : ${error.message}`
250226 });
251227 }
252228 return;
0 commit comments